Horizontal

Works

Bidsketch MCP by usefulapi

Read Bidsketch clients, proposals, fees and templates; create and update clients, proposals, fees.

Addresshttps://bidsketch.usefulapi.io/mcp
Claude Codeclaude mcp add --transport http bidsketch https://bidsketch.usefulapi.io/mcp
For Cursor and other clients
{
  "mcpServers": {
    "bidsketch": {
      "type": "http",
      "url": "https://bidsketch.usefulapi.io/mcp"
    }
  }
}

Watch out

Has tools that change things: 6 of them

The server itself marks these tools as deleting or overwriting data (destructiveHint): have the agent ask you before it calls them.

Test
Works: Handshake succeeded
Tools
29 tools
Handshake
923 ms
Transport
streamable-http · 2025-06-18
Tested
6 November 2026
Registry name
io.usefulapi/bidsketch v1.15.3
Listed
5 November 2026
Updated
5 November 2026
Website
usefulapi.io/bidsketch/
Source
github.com/m190/usefulapi-mcp
The last 1 tests
WhenResultTime
2026-11-06 12:35 UTCHandshake succeeded923 ms

The 29 tools it listed

"Read only" and "Changes data" are the server's own marks. Underlined parameters are required.

  1. bidsketch_add_proposal_fee

    Add a fee to a proposal

    WRITE: add a fee line to a proposal; it changes the proposal's price. Fixed fees take amount as the total; hourly, monthly and yearly fees take amount per unit and a quantity. POST /proposals/{id}/fees.json.

    proposal_id name feetype amount quantity unit category description optional

  2. bidsketch_add_proposal_section

    Add a section to a proposal

    WRITE: add a text section to a proposal, as an opening or closing section. POST /proposals/{id}/sections.json.

    proposal_id name sectiontype description

  3. bidsketch_create_client

    Create a client

    WRITE: create a client in Bidsketch. first_name, last_name and email are required (put a company name in `name`). Some Bidsketch plans cap the number of clients (HTTP 426 when reached). POST /clients.json.

    first_name last_name email name phone alt_phone website address_field_one address_field_two city state postal_zip country notes other_contact

  4. bidsketch_create_fee

    Create a saved fee

    WRITE: save a reusable fee on the account (it is not added to any proposal). POST /fees.json.

    name feetype amount quantity unit category description

  5. bidsketch_create_proposal

    Create a proposal

    WRITE: create a proposal for a client, optionally from a template (template_id from bidsketch_list_templates, which copies its sections and fees). The proposal is created as a draft; this tool does not send anything to the client. Some plans cap the number of proposals (HTTP 426). POST /proposals.json or POST /templates/{id}/proposals.json.

    name description currency proposal_date tax tax2 discount client_id template_id

  6. bidsketch_create_section

    Create a saved section

    WRITE: save a reusable content section on the account (it is not added to any proposal). POST /sections.json.

    name sectiontype category description

  7. bidsketch_get_clientRead only

    Get a client

    Get one client with full contact details, address, notes and secondary contact. GET /clients/{id}.json.

    client_id

  8. bidsketch_get_feeRead only

    Get a saved fee

    Get one saved fee with amount, quantity, unit and description. GET /fees/{id}.json.

    fee_id

  9. bidsketch_get_proposalRead only

    Get a proposal

    Get one proposal: status, client, currency, fee subtotals and total, tax/discount, settings and counts of its opening sections, fees and closing sections. GET /proposals/{id}.json.

    proposal_id

  10. bidsketch_get_proposal_contentRead only

    Get a proposal's content

    Get the full content of a proposal in order: opening sections, fees and closing sections. GET /proposals/{id}/content.json.

    proposal_id

  11. bidsketch_get_proposal_feeRead only

    Get a proposal fee

    Get one fee line of a proposal. GET /proposals/{id}/fees/{fee_id}.json.

    proposal_id fee_id

  12. bidsketch_get_proposal_sectionRead only

    Get a proposal section

    Get one section of a proposal with its HTML description. GET /proposals/{id}/sections/{section_id}.json.

    proposal_id section_id

  13. bidsketch_get_proposal_statsRead only

    Get proposal stats

    Proposal statistics for the account (the total number of proposals). GET /proposals/stats.json.

  14. bidsketch_get_sectionRead only

    Get a saved section

    Get one saved section with its HTML description. GET /sections/{id}.json.

    section_id

  15. bidsketch_get_templateRead only

    Get a proposal template

    Get one template with the saved sections and fees it is made of. GET /templates/{id}.json.

    template_id

  16. bidsketch_list_client_proposalsRead only

    List a client's proposals

    List the proposals of one client with status (Pending, Viewed, Accepted, Declined) and draft flag. GET /clients/{id}/proposals.json.

    client_id page per_page

  17. bidsketch_list_clientsRead only

    List clients

    List the clients (people or companies proposals are prepared for) with id, name, email and phone. GET /clients.json.

    page per_page

  18. bidsketch_list_feesRead only

    List saved fees

    List the reusable fees saved on the account with category, type and total. GET /fees.json.

    page per_page

  19. bidsketch_list_proposal_feesRead only

    List a proposal's fees

    List the fee lines of one proposal with type, totals and the optional flag. GET /proposals/{id}/fees.json.

    proposal_id page per_page

  20. bidsketch_list_proposal_sectionsRead only

    List a proposal's sections

    List the text sections of one proposal (opening and closing). GET /proposals/{id}/sections.json.

    proposal_id page per_page

  21. bidsketch_list_proposalsRead only

    List proposals

    List all proposals with name, status (Pending, Viewed, Accepted, Declined), draft flag and dates. GET /proposals.json.

    page per_page

  22. bidsketch_list_sectionsRead only

    List saved sections

    List the reusable content sections saved on the account with category and type (opening or closing). GET /sections.json.

    page per_page

  23. bidsketch_list_templatesRead only

    List proposal templates

    List the proposal templates saved on the account. Use a template id with bidsketch_create_proposal. GET /templates.json.

    page per_page

  24. bidsketch_update_clientChanges data

    Update a client

    WRITE: change fields of an existing client; only the fields you pass are sent and overwrite the old values. PUT /clients/{id}.json.

    client_id first_name last_name email name phone alt_phone website address_field_one address_field_two city state postal_zip country notes other_contact

  25. bidsketch_update_feeChanges data

    Update a saved fee

    WRITE: change a saved fee; only the fields you pass are sent. Proposals that already use it keep their own copy. PUT /fees/{id}.json.

    fee_id name feetype amount quantity unit category description

  26. bidsketch_update_proposalChanges data

    Update a proposal

    WRITE: change fields of a proposal; only the fields you pass are sent and overwrite the old values. PUT /proposals/{id}.json.

    proposal_id name description currency proposal_date tax tax2 discount client_id

  27. bidsketch_update_proposal_feeChanges data

    Update a proposal fee

    WRITE: change a fee line of a proposal (changes its price); only the fields you pass are sent. PUT /proposals/{id}/fees/{fee_id}.json.

    proposal_id fee_id name feetype amount quantity unit category description optional

  28. bidsketch_update_proposal_sectionChanges data

    Update a proposal section

    WRITE: change a section of a proposal; only the fields you pass are sent and overwrite the old values. PUT /proposals/{id}/sections/{section_id}.json.

    proposal_id section_id name sectiontype category description

  29. bidsketch_update_sectionChanges data

    Update a saved section

    WRITE: change a saved section; only the fields you pass are sent. Proposals that already use it keep their own copy. PUT /sections/{id}.json.

    section_id name sectiontype category description

Is this yours?

Claim it to hear the moment it breaks, correct this page and add your own ways to use it.

A test is the handshake and the tool list: no tool was called. Names and descriptions are as listed by whoever registered the server; we haven't checked them.

Back to Tested MCP Servers