Back to the MCP Gateway catalog

MCP Gateway · Catalog

Mercury icon

Mercury MCP server

Official

Mercury MCP is the official Model Context Protocol server for Mercury, with OAuth and tools that let agents read accounts, cards, transactions, statements, invoices, and treasury data. Connect it through the Speakeasy MCP Gateway and agents such as Claude, Cursor, and ChatGPT get one governed URL for it, with SSO, RBAC, and a full audit trail.

Sales & CRM34 toolsAuth: oauth

Behind the MCP Gateway

Run Mercury MCP behind the MCP Gateway

One URL for every agent, sign-in through your IdP, RBAC down to the tool, and every Mercury call inspected and logged.

Deploy on MCP Gateway

Tools · 34

Each tool below can be allowed or denied per team and role at the MCP Gateway, and every call is inspected and logged.

getAccount

Get account by ID

getAccountCards

Retrieve all debit and credit cards associated with a specific account.

getAccountStatements

Retrieve a paginated list of monthly statements for a specific account. Supports cursor-based pagination with limit, order, start_after, and end_before query parameters, as well as date range filtering with start and end parameters.

getTransaction

Get transaction by ID

getAccounts

Retrieve a paginated list of accounts. Supports cursor-based pagination with limit, order, start_after, and end_before query parameters.

getAttachment

Retrieve attachment details including download URL

listCustomers

Retrieve a paginated list of customers. Supports cursor-based pagination with limit, order, start_after, and end_before query parameters.

getCustomer

Retrieve details of a specific customer by their ID

listInvoices

Retrieve a paginated list of invoices. Supports cursor-based pagination with limit, order, start_after, and end_before query parameters.

getInvoice

Retrieve details of an invoice by its ID

listInvoiceAttachments

Retrieve a list of all attachments for a specific invoice

getBooksAgentCoaTemplate

Retrieve details of a specific Chart of Accounts template.

getBooksAgentCoaTemplates

Retrieve a paginated list of all default and agent-owned Chart of Accounts templates. These templates can be used when creating new Books instances for clients.

getBooksJournalEntries

List all journal entries

getBooksJournalEntry

Retrieve a Journal Entry

listCategories

Retrieve a paginated list of all available custom expense categories for the organization. Supports cursor-based pagination with limit, order, start_after, and end_before query parameters. - These categories are custom and different from the values for "mercuryCategory".

listCredit

Retrieve a list of all credit accounts for the organization.

getOrganization

Retrieve information about your organization including EIN, legal business name, and DBAs.

getRecipient

Retrieve details of a specific recipient by ID

getRecipients

Retrieve a paginated list of all recipients. Use cursor parameters (start_after, end_before) for pagination.

listRecipientsAttachments

Retrieve a paginated list of all recipient tax form attachments across all recipients in the organization. Use cursor parameters (start_after, end_before) for pagination.

listSendMoneyApprovalRequests

Retrieve a paginated list of send money approval requests for the authenticated organization. Supports filtering by account and status.

getSafeRequests

Retrieve all SAFE (Simple Agreement for Future Equity) requests for your organization.

getSafeRequest

Retrieve a specific SAFE request by its ID.

getTransactionById

Retrieve a single transaction by its ID. Returns full transaction details including attachments, check images, and related metadata.

listTransactions

Retrieve a paginated list of all transactions across all accounts. Supports advanced filtering by date ranges, status, categories, and cursor-based pagination. CRITICAL TRUNCATION RULE - READ THIS FIRST: ================================================================================ IF YOU SEE "Result too long" IN THE RESPONSE: 1. IMMEDIATELY STOP - Do not analyze or use the truncated data 2. The data is INCOMPLETE and any analysis will be WRONG 3. Start over with a smaller limit (reduce by 50%) 4. Paginate through ALL pages until you have complete data 5. NEVER provide answers based on truncated results ================================================================================ MANDATORY PAGINATION FOR COMPLETE RESULTS: When a user asks ANY question requiring complete data (totals, balances, aggregates, "most/least", "all transactions", comparisons, or any calculation across transactions): CRITICAL: Incomplete pagination will produce WRONG ANSWERS for questions about totals, spending categories, balances, minimums, maximums, or "most/least". You must fetch everything before calculating or answering. 1. Start with a limit of 300 transactions. 2. You MUST automatically paginate through ALL pages WITHOUT asking the user 3. Continue calling listTransactions using the page.nextPage value from each response 4. Keep fetching until page.nextPage is not present 5. If pagination would take more than 3 tool calls, ask the user to narrow down to a smaller time period 6. It is a CRITICAL ERROR to answer before having fetched ALL pages FILTERING: - IMPORTANT: WHEN FILTERING BY DATE, ALWAYS CHECK THE CURRENT DATE FIRST and ensure you're using the current year for current year queries - Unless specified otherwise or queried for "all transactions", ONLY include transactions with "status: sent" - To get transactions for a specific account, use the accountId parameter to filter by accountId PAGINATION MECHANICS: - Use the limit parameter to control page size - If page.nextPage is returned, use it as the start_after parameter in your next call - Keep fetching until page.nextPage is null/undefined - The page.nextPage value is a transaction ID to start after (exclusive) COMPUTATIONAL REQUIREMENTS: - For any query requiring: - Sums, totals, averages, medians, modes, ranges, most/least, or other aggregations across accounts/transactions - Calculations involving currency amounts - Comparisons of financial metrics - You MUST: - Create an artifact that processes the data programmatically - Parse the JSON response and use JavaScript/Python to calculate - Display intermediate steps for verification - Never rely on mental arithmetic for financial calculations - Example: "What's my total balance?" - CORRECT: Create artifact that parses accounts, maps to balances, uses reduce() to sum - INCORRECT: Manually adding up balance values For queries about 'last two months' or 'this year', calculate dates based on the actual current date Use the getCurrentDate tool to get the current date. Use the getTransaction tool to get more details about a specific transaction.

getTreasury

Retrieve a paginated list of all treasury accounts associated with the authenticated organization. Use cursor parameters (start_after, end_before) for pagination.

getTreasuryStatements

Retrieve a paginated list of statements for a specific treasury account. Supports cursor-based pagination and filtering by document type.

getTreasuryTransactions

Retrieve paginated treasury transactions for a specific treasury account.

getUsers

Get all users

getUser

Get user by ID

getWebhooks

Retrieve a paginated list of all webhook endpoints for your organization. Supports filtering by status.

getWebhook

Retrieve details of a specific webhook endpoint by ID

getCurrentDate

Get the current date in the format. Example: Fri Oct 31 2025

Questions

What is a Mercury MCP server?
A Mercury MCP server exposes Mercury to AI agents as Model Context Protocol tools. Instead of a custom integration per agent, any MCP client can connect to the server and call tools such as getAccount or getAccountCards to work with Mercury. The server in this catalog is the official Mercury MCP server, which authenticates with OAuth.
What can you do with Mercury MCP?
Agents can read accounts, cards, transactions, statements, invoices, and treasury data. The catalog lists 34 tools for this server, including getAccount, getAccountCards, and getAccountStatements. The full list with descriptions is on this page.
Why put Mercury MCP behind an MCP gateway?
Connecting the Mercury MCP server directly to each client means a separate credential per developer, no inventory of who can reach Mercury through an agent, and no record of what agents did with it. An MCP gateway sits between every agent and the Mercury server, so sign-in runs through your identity provider, role-based access decides which teams can call which Mercury tools, and every call is inspected and logged in one place. The Speakeasy MCP Gateway applies those controls to Mercury and to every other server in your catalog.
How do you connect Mercury MCP through a gateway?
Add the Mercury server from the Speakeasy MCP catalog and every agent reaches it through one gateway URL, next to the rest of your approved servers. Authentication uses OAuth 2.1 with PKCE and dynamic client registration, sign-in runs through your identity provider, and role-based access controls decide which teams can use which Mercury tools. Every prompt, response, and tool call is inspected and logged at the gateway.
How is this different from an unofficial Mercury MCP?
Community-built Mercury MCP servers wrap the same Mercury surface but are not vendor-maintained, and most authenticate with a static credential that gives an agent everything the credential owner can touch. This catalog lists the official Mercury MCP server, which uses OAuth. Running it behind the Speakeasy MCP Gateway adds SSO, role-based access, and an audit trail of every call.

AI everywhere.

Control here.