Mercury MCP

Integrate Mercury MCP with your AI workspace

Mercury's official MCP server (Beta) for read-only access to your Mercury business banking data — accounts, balances, transactions, cards, recipients, statements, and treasury. Cannot initiate transactions or modify account data; all mutations are blocked server-side.

Explore Triggers and Actions

Getaccount

Get account by ID

ActionTry it

Getaccountcards

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

ActionTry it

Getaccounts

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

ActionTry it

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.

ActionTry it

Getattachment

Retrieve attachment details including download URL

ActionTry it

Getcurrentdate

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

ActionTry it

Getcustomer

Retrieve details of a specific customer by their ID

ActionTry it

Getinvoice

Retrieve details of an invoice by its ID

ActionTry it

Getorganization

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

ActionTry it

Getrecipient

Retrieve details of a specific recipient by ID

ActionTry it

Getrecipients

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

ActionTry it

Getsaferequest

Retrieve a specific SAFE request by its ID.

ActionTry it

Getsaferequests

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

ActionTry it

Gettransaction

Get transaction by ID

ActionTry it

Gettransactionbyid

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

ActionTry it

Gettreasury

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

ActionTry it

Gettreasurystatements

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

ActionTry it

Gettreasurytransactions

Retrieve paginated treasury transactions for a specific treasury account.

ActionTry it

Getuser

Get user by ID

ActionTry it

Getusers

Get all users

ActionTry it

Getwebhook

Retrieve details of a specific webhook endpoint by ID

ActionTry it

Getwebhooks

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

ActionTry it

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".

ActionTry it

Listcredit

Retrieve a list of all credit accounts for the organization.

ActionTry it

Listcustomers

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

ActionTry it

Listinvoiceattachments

Retrieve a list of all attachments for a specific invoice

ActionTry it

Listinvoices

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

ActionTry it

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.

ActionTry it

Listsendmoneyapprovalrequests

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

ActionTry it

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.

ActionTry it