Mercoa MCP by usefulapi
Server Details
Query and manage Mercoa AP/AR bill-pay: entities, invoices, transactions and payment methods.
- Status
- Healthy
- Uptime
- 77.2% over 55 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
- Repository
- m190/usefulapi-mcp
- GitHub Stars
- 0
TDQS
Scored across 17 tools
Each tool targets a distinct resource (entity, invoice, transaction, payment method, organization) and action (create, find, get, list, update, add). There is no ambiguity between tools.
All tools follow the consistent pattern 'mercoa_verb_noun' using snake_case. Verbs like create, find, get, list, update are used predictably.
With 17 tools covering entities, invoices, transactions, payment methods, and organization, the count is well-scoped for a financial platform. Each tool justifies its existence.
The toolset covers core CRUD and query operations for the main resources. Minor gaps exist such as missing delete operations for entities and invoices, but the surface is largely complete for typical workflows.
Available Tools
17 toolsmercoa_add_invoice_commentAdd invoice commentDestructiveInspect
WRITE — adds a comment to an invoice (visible in its activity log). POST /invoice/{invoiceId}/comment.
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | Comment text. | |
| userId | No | ID or foreign ID of the user creating the comment. | |
| invoiceId | Yes | Invoice ID to comment on. |
mercoa_create_entityCreate entityDestructiveInspect
WRITE — creates a real entity (customer/vendor/payor/payee) in Mercoa. Supply role flags, accountType, and a nested profile object (business or individual details). POST /entity.
| Name | Required | Description | Default |
|---|---|---|---|
| No | Primary email for the entity. | ||
| isPayee | No | Whether this entity can receive payments (AR / vendor). | |
| isPayor | No | Whether this entity can pay invoices (AP). | |
| profile | No | Nested profile object, e.g. { "business": { "legalBusinessName": "Acme Inc.", "email": "ap@acme.com", "businessType": "llc" } } or { "individual": { "name": {...}, "email": "..." } }. | |
| foreignId | No | Your system's ID for this entity. | |
| isCustomer | No | Whether this entity has a direct relationship with your organization. | |
| accountType | No | business or individual. |
mercoa_create_invoiceCreate invoiceDestructiveInspect
WRITE — creates a real invoice/bill in Mercoa. Set status (DRAFT to stage, NEW to submit), amount, currency, payer/vendor, dates and line items. POST /invoice.
| Name | Required | Description | Default |
|---|---|---|---|
| amount | No | Total invoice amount. | |
| status | No | Invoice status, e.g. DRAFT, NEW, APPROVED, SCHEDULED. | |
| dueDate | No | Due date (ISO 8601). | |
| payerId | No | Payer entity ID (who owes). | |
| currency | No | Currency code, e.g. USD. | |
| metadata | No | Arbitrary key/value metadata. | |
| vendorId | No | Vendor entity ID (who is paid). | |
| lineItems | No | Line items array, e.g. [{ "amount": 100, "currency": "USD", "description": "Product A", "quantity": 1, "unitPrice": 100 }]. | |
| noteToSelf | No | Internal note. | |
| invoiceDate | No | Invoice date (ISO 8601). | |
| creatorUserId | No | User ID creating the invoice. | |
| deductionDate | No | Scheduled payment/deduction date (ISO 8601). | |
| invoiceNumber | No | Human-readable invoice number, e.g. INV-123. | |
| creatorEntityId | No | Entity ID on whose behalf the invoice is created. | |
| paymentSourceId | No | Payment method ID to pay from (payer's). | |
| paymentDestinationId | No | Payment method ID to pay to (vendor's). |
mercoa_find_entitiesFind entitiesRead-onlyInspect
Find/search entities (buyers, vendors, payors, payees). Use to look up counterparties by name/email/foreignId or list all. GET /entity.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max entities to return (1-100, default 10). | |
| search | No | Search by name, email, emailTo, entity ID, or foreign ID (partial matches). | |
| status | No | Entity status filter (e.g. verified, pending). | |
| isPayee | No | Filter entities marked as payees. | |
| isPayor | No | Filter entities marked as payors. | |
| foreignId | No | Your system's ID(s) for the entity. | |
| isCustomer | No | If true, only entities with a direct relationship to your organization. | |
| startingAfter | No | Entity ID cursor for pagination. | |
| paymentMethods | No | If true, include payment methods in the response. | |
| returnMetadata | No | Metadata key(s) to include in the response. |
mercoa_find_invoicesFind invoicesRead-onlyInspect
Find/search invoices (bills) across payers and vendors. Filter by status, entity, date, approver and more. GET /invoices (plural list endpoint).
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max invoices to return (1-100, default 10). | |
| search | No | Search by vendor name, invoice number, check number, or amount. | |
| status | No | Invoice status filter (e.g. DRAFT, NEW, APPROVED, SCHEDULED, PAID). | |
| endDate | No | End date filter (ISO 8601). | |
| orderBy | No | Field to order by (e.g. CREATED_AT, AMOUNT, DUE_DATE). | |
| payerId | No | Filter by payer ID(s) or foreign ID(s). | |
| dateType | No | Date type to filter by (e.g. CREATED_AT, DUE_DATE). | |
| entityId | No | Filter by entity (payer or vendor) ID(s) or foreign ID(s). | |
| vendorId | No | Filter by vendor ID(s) or foreign ID(s). | |
| invoiceId | No | Filter by invoice ID(s) or foreign ID(s). | |
| startDate | No | Start date filter (ISO 8601). | |
| approverId | No | Filter by assigned approver user ID(s). | |
| paymentType | No | Filter by payment type (e.g. recurring). | |
| creatorUserId | No | Filter by the user ID(s) that created the invoice. | |
| entityGroupId | No | Filter by entity group ID. | |
| startingAfter | No | Invoice ID cursor for pagination. | |
| approverAction | No | Filter by approver action (use with approverId), e.g. APPROVE. | |
| orderDirection | No | asc or desc. | |
| invoiceTemplateId | No | Filter by invoice template ID(s). | |
| returnPayerMetadata | No | Include payer metadata in the response. | |
| returnPaymentTiming | No | Include payment timing in the response. | |
| returnVendorMetadata | No | Include vendor metadata in the response. |
mercoa_find_transactionsFind transactionsRead-onlyInspect
List/search payment transactions. Filter by entity, invoice, status, type and date. GET /transactions.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max transactions to return (1-100, default 10). | |
| search | No | Search by vendor name, invoice number, check number, or amount. | |
| status | No | Transaction status filter. | |
| endDate | No | CREATED_AT end date filter (ISO 8601). | |
| payerId | No | Filter by payer ID(s). | |
| entityId | No | Filter by entity ID(s) or foreign ID(s). | |
| vendorId | No | Filter by vendor ID(s). | |
| invoiceId | No | Filter by invoice ID(s) or foreign ID(s). | |
| startDate | No | CREATED_AT start date filter (ISO 8601). | |
| entityGroupId | No | Filter by entity group ID. | |
| startingAfter | No | Transaction ID cursor for pagination. | |
| transactionId | No | Filter by transaction ID(s). | |
| transactionType | No | Filter by transaction type. |
mercoa_get_entityGet entityRead-onlyInspect
Get a single entity by ID (or foreign ID). GET /entity/{entityId}.
| Name | Required | Description | Default |
|---|---|---|---|
| entityId | Yes | Entity ID (e.g. ent_...) or foreign ID. |
mercoa_get_entity_eventsGet entity eventsRead-onlyInspect
Get the event/audit log for an entity. GET /entity/{entityId}/events.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max events to return (1-100). | |
| endDate | No | End date filter (ISO 8601). | |
| entityId | Yes | Entity ID or foreign ID. | |
| startDate | No | Start date filter (ISO 8601). | |
| startingAfter | No | Event ID cursor for pagination. |
mercoa_get_entity_invoice_metricsGet entity invoice metricsRead-onlyInspect
Get aggregate invoice metrics (totals/counts, grouped by currency) for an entity's payables/receivables — for AP/AR dashboards and aging. GET /entity/{entityId}/invoice-metrics.
| Name | Required | Description | Default |
|---|---|---|---|
| search | No | Search by vendor name, invoice number, check number, or amount. | |
| status | No | Invoice status filter (e.g. NEW, SCHEDULED, PAID). | |
| endDate | No | End date filter (ISO 8601). | |
| groupBy | No | Additional grouping (e.g. by status). | |
| payerId | No | Filter by payer ID(s). | |
| currency | No | Currency code(s) to filter on, e.g. USD. | |
| dateType | No | Date type to filter by (e.g. CREATED_AT, DUE_DATE). | |
| entityId | Yes | Entity ID or foreign ID. | |
| vendorId | No | Filter by vendor ID(s). | |
| invoiceId | No | Filter by invoice ID(s) or foreign ID(s). | |
| startDate | No | Start date filter (ISO 8601). | |
| approverId | No | Filter by assigned approver user ID(s). | |
| returnByDate | No | Group metrics by date, e.g. CREATION_DATE or DUE_DATE. | |
| excludePayables | No | Only return receivables (exclude payables). | |
| excludeReceivables | No | Only return payables (exclude receivables). | |
| returnByDateFrequency | No | Frequency for date grouping (e.g. DAILY, MONTHLY). |
mercoa_get_invoiceGet invoiceRead-onlyInspect
Get a single invoice (bill) by ID. GET /invoice/{invoiceId}.
| Name | Required | Description | Default |
|---|---|---|---|
| invoiceId | Yes | Invoice ID (e.g. in_...) or foreign ID. |
mercoa_get_invoice_eventsGet invoice eventsRead-onlyInspect
Get the event/audit log for an invoice (status changes, approvals, payments). GET /invoice/{invoiceId}/events.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max events to return (1-100). | |
| endDate | No | End date filter (ISO 8601). | |
| invoiceId | Yes | Invoice ID or foreign ID. | |
| startDate | No | Start date filter (ISO 8601). | |
| startingAfter | No | Event ID cursor for pagination. |
mercoa_get_organizationGet organizationRead-onlyInspect
Get the caller's Mercoa organization configuration (settings, payment methods enabled, etc.). GET /organization.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
mercoa_get_payment_methodGet payment methodRead-onlyInspect
Get a single payment method for an entity. GET /entity/{entityId}/paymentMethod/{paymentMethodId}.
| Name | Required | Description | Default |
|---|---|---|---|
| entityId | Yes | Entity ID or foreign ID. | |
| paymentMethodId | Yes | Payment method ID (e.g. pm_...). |
mercoa_get_transactionGet transactionRead-onlyInspect
Get a single payment transaction by ID. GET /transaction/{transactionId}.
| Name | Required | Description | Default |
|---|---|---|---|
| transactionId | Yes | Transaction ID. |
mercoa_list_entity_payment_methodsList entity payment methodsRead-onlyInspect
List an entity's payment methods (bank accounts, cards, check, etc.). GET /entity/{entityId}/paymentMethods.
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | Filter by payment method type (e.g. bankAccount, card, check). | |
| entityId | Yes | Entity ID or foreign ID. |
mercoa_list_entity_usersList entity usersRead-onlyInspect
List the users belonging to an entity (approvers, admins, etc.). GET /entity/{entityId}/users.
| Name | Required | Description | Default |
|---|---|---|---|
| entityId | Yes | Entity ID or foreign ID. |
mercoa_update_invoiceUpdate invoiceDestructiveInspect
WRITE — updates an existing invoice/bill (all fields optional). Commonly used to advance status (e.g. DRAFT→NEW→SCHEDULED) or change amounts, dates, or payment methods. POST /invoice/{invoiceId}.
| Name | Required | Description | Default |
|---|---|---|---|
| amount | No | Total invoice amount. | |
| status | No | New invoice status, e.g. NEW, APPROVED, SCHEDULED. | |
| dueDate | No | Due date (ISO 8601). | |
| payerId | No | Payer entity ID. | |
| currency | No | Currency code, e.g. USD. | |
| metadata | No | Arbitrary key/value metadata. | |
| vendorId | No | Vendor entity ID. | |
| invoiceId | Yes | Invoice ID to update. | |
| lineItems | No | Replacement line items array. | |
| noteToSelf | No | Internal note. | |
| invoiceDate | No | Invoice date (ISO 8601). | |
| deductionDate | No | Scheduled payment/deduction date (ISO 8601). | |
| invoiceNumber | No | Human-readable invoice number. | |
| paymentSourceId | No | Payment method ID to pay from. | |
| paymentDestinationId | No | Payment method ID to pay to. |
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
17 tool updates
- Changed
mercoa_add_invoice_comment1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
mercoa_create_entity1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
mercoa_create_invoice1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
mercoa_find_entities1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
mercoa_find_invoices1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
mercoa_find_transactions1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
mercoa_get_entity1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
mercoa_get_entity_events1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
mercoa_get_entity_invoice_metrics1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
mercoa_get_invoice1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
mercoa_get_invoice_events1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
mercoa_get_organization1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
mercoa_get_payment_method1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
mercoa_get_transaction1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
mercoa_list_entity_payment_methods1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
mercoa_list_entity_users1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
mercoa_update_invoice1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
17 tool updates
- First observed
mercoa_add_invoice_comment - First observed
mercoa_create_entity - First observed
mercoa_create_invoice - First observed
mercoa_find_entities - First observed
mercoa_find_invoices - First observed
mercoa_find_transactions - First observed
mercoa_get_entity - First observed
mercoa_get_entity_events - First observed
mercoa_get_entity_invoice_metrics - First observed
mercoa_get_invoice - First observed
mercoa_get_invoice_events - First observed
mercoa_get_organization - First observed
mercoa_get_payment_method - First observed
mercoa_get_transaction - First observed
mercoa_list_entity_payment_methods - First observed
mercoa_list_entity_users - First observed
mercoa_update_invoice
Related MCP Connectors
Query and manage Amberflo metering & billing: customers, meters, usage, plans, invoices, prepaid.
Manage Apollo invoices and customers with entity-scoped OAuth and optional read/write access.
Manage expenses, corporate cards, accounts payable, and accounting integrations
Sits between accounting and payment rails for reminders, Pay Now, autopay, portal, and book sync.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceExposes ~60 tools for the Merit Aktiva accounting API, covering sales/purchase invoices, payments, customers, vendors, items, general ledger, offers, reference data, and reports with both read and write operations.8 npmMIT
- AlicenseAqualityBmaintenanceEnables LLM agents to manage QuickBooks Online invoices, customers, and payments via typed tools with OAuth 2.1 authentication, rate limiting, and retries, plus read-only resources for company and receivables summaries.18MIT
- AlicenseAqualityBmaintenanceEnables interaction with the Centrapay payments API for testing NZ payment flows, including creating, managing, and settling payment requests through natural language.96 npm1MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to read and write Cynco accounting data, including querying books, creating invoices, reconciling transactions, and generating financial reports.13 npm1MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.