Method CRM MCP by usefulapi
Query Method CRM customers, leads, activities and invoices; create and update records.
Connect it
Settings → Connectors → Add custom connector
URL: https://method-crm.usefulapi.io/mcpSettings → Apps & Connectors → Advanced → Developer mode
Create connector with URL: https://method-crm.usefulapi.io/mcp{
"mcpServers": {
"method-crm": {
"url": "https://method-crm.usefulapi.io/mcp"
}
}
}claude mcp add --transport http method-crm https://method-crm.usefulapi.io/mcp{
"servers": {
"method-crm": {
"type": "http",
"url": "https://method-crm.usefulapi.io/mcp"
}
}
}16 tools, pulled live
method_get_accountread-onlyWho the API key acts as: the Method user behind it (id and name; use the id as an assignee). Also a cheap check that the key works. GET /api/v1/me.
method_list_tablesread-onlyList every table on this Method account (standard QuickBooks/Xero/Method tables and custom ones) with its source and whether it can be created, updated or deleted. Tables differ per account: call this before querying a table you are unsure of. GET /api/v1/tables.
method_get_table_fieldsread-onlyThe exact field names of a table with type, whether required, creatable and mutable, and for dropdowns the table they reference. Use it to pick `select` fields and to name fields in create/update calls (names are case-sensitive and wrong ones are silently ignored). GET /api/v1/tables/{table}/fields.
method_query_recordsread-onlyQuery any table (Customer, Contacts, Activity, Invoice, Estimate, Item, Users, custom tables ...). Always pass `select`. `filter` uses OData-style syntax: strings in single quotes, dates as '2026-05-26T00:00:00Z' with Z or an offset, operators eq ne lt gt le ge and or not, functions contains(Name,'x') startswith() endswith(); e.g. "BalanceRemaining gt 0 and DueDate lt '2026-10-01T00:00:00Z'". `app
method_count_recordsread-onlyHow many records a table has, optionally matching a filter (same filter syntax as method_query_records). Cheap: call it before paging through a big table. GET /api/v1/tables/{table}/count.
method_get_recordread-onlyOne record by RecordID from any table. Pass `select` to limit the columns; `expand` names a related CHILD table whose rows are embedded (e.g. InvoiceLine on Invoice; at most 50 rows); a parent such as a contact's Entity is not expanded: read it with its own RecordID (Entity_RecordID). GET /api/v1/tables/{table}/{recordId}.
method_search_customersread-onlyFind customers and leads (the Customer table: Customers & Leads in Method) by text in the name or email, by lead/customer type, or list them all. Returns RecordID, name, email, phone, lead flag and status; override `select` for other fields (see method_get_table_fields with table Customer). Page with next_skip. GET /api/v1/tables/Customer.
method_list_contactsread-onlyList contacts (people), optionally those of one customer/lead entity (entity_id = the Customer's RecordID) or matching text in name/email/phone. Returns RecordID, name, email, phone, the entity link and active flag. Use a Contact's RecordID (not the Customer's) when linking activities. GET /api/v1/tables/Contacts.
method_list_activitiesread-onlyList activities (calls, emails, to-dos, notes), newest first. Filter by the entity they belong to, the assigned user or a due-date window. The note text is in Comments. Override `select` for other fields (method_get_table_fields with table Activity). GET /api/v1/tables/Activity.
method_list_invoicesread-onlyList invoices, newest first, optionally only unpaid ones (BalanceRemaining > 0), one customer's (customer_id = Customer RecordID) or created since a time. Returns reference number, customer, dates, amount and balance; override `select` for other fields. For totals use method_query_records with `apply`. GET /api/v1/tables/Invoice.
method_list_filesread-onlyList the files attached to a record (name, size, who added it, id). Use the id with method_get_file_url. GET /api/v1/files.
method_get_file_urlread-onlyA temporary download link (valid 20 minutes) for an attached file, by the file id from method_list_files. The link works without the API key: share it only with someone allowed to see the file. GET /api/v1/files/{id}/url.
method_create_customercan modifyWRITE: creates a record in Method's Customer table. is_lead true = a Customer Lead (does not sync to the accounting system); is_lead false = a full customer, which Method syncs to QuickBooks/Xero (it appears there too). Method also creates the primary Contact; its RecordID is returned as contact_id when it could be found (use it, not the customer id, to link activities). Name is required (for a pe
method_create_activitycan modifyWRITE: logs an activity (call, email, to-do, note) on a customer/lead. entity_id is the Customer RecordID; contact_id is the Contact RecordID (not the Customer's; method_list_contacts finds it). The text goes in Comments. Prefer activity_type_id (read it from an existing activity of that type) over the caption activity_type: a caption that matches zero or several options is silently dropped. Metho
method_create_recordcan modifyWRITE: creates a record in any table that allows it (method_list_tables shows canCreate), e.g. Estimate, Invoice, Item, Vendor. For customers/leads and activities use the dedicated tools. Field names are case-sensitive and a wrong one is silently ignored: read them with method_get_table_fields first, and send dropdown links as their `_RecordID` integer. Creating accounting records (Invoice, Estima
method_update_recordcan modifyWRITE: changes fields on one record (PATCH: only the fields you pass change). Field names are case-sensitive and Method silently ignores wrong or read-only names, so the reply re-reads the record and shows the stored values of the fields you sent: check them. Linked fields are changed through their `_RecordID` integer field. Updating accounting records (Customer, Invoice ...) makes Method sync the
Alternatives in CRM & Sales
Compare →
Lightspeed Retail (X-Series) MCP by usefulapiB
Read Lightspeed X-Series products, stock, sales, customers, stock orders; one-call sales reports.
Gumroad MCP by usefulapiB
Read products, sales, subscribers and offer codes; verify, enable and disable product licenses.
Parsley MCP by usefulapiB
Read Parsley menu items, nutrition, allergens, ingredients and events; record event sales and waste.
Freshsales MCP by usefulapiB
Manage Freshsales contacts, accounts, deals, tasks and appointments; add notes.
Hiboutik MCP by usefulapiB
Read Hiboutik products, stock, customers, sales and turnover; edit customers and sale comments.
Bind ERP MCP by usefulapiB
Read Bind ERP clients, products, inventory, invoices, orders; create prospects, clients, orders.