Receiptor MCP
Receiptor connects AI agents to your bookkeeping workspace so they can find, review, and organize financial documents such as receipts, bills, and invoices.
What it can do
- Get Server Info: Get information about the Receiptor MCP server
- Workspace Get Context: Get the current workspace context (user, org, role, and effective ownership scope).
- Workspace Switch: Validate a target workspace and switch the active workspace for this MCP OAuth session.
What data it sees
Do you need an account
No: the server works without sign-in
Receiptor connects AI agents to your bookkeeping workspace so they can find, review, and organize financial documents such as receipts, bills, and invoices. Use it to inspect workspace context, monitor intake sources, review extracted document data, check integrations, and prepare accountant-ready workflows through secure OAuth access to Receiptor AI.
How to connect
How to connect Receiptor MCP to Claude
The server address to paste into Claude settings:
https://receiptor-mcp.run.tools
- Open Claude (claude.ai or the desktop app).
- Go to Settings → Connectors.
- Click Add custom connector.
- Paste the server address copied below into Remote MCP server URL and click Add.
- In a chat, click + → Connectors and switch the new connector on.
Custom connectors are available on Free, Pro, Max, Team and Enterprise plans (Free is limited to one). On Team and Enterprise an organization Owner adds the connector first under Organization settings → Connectors.
Authorization
After you click Add, a sign-in window for the service opens. Sign in with your own account and approve access. Claude never sees your password.
How to connect Receiptor MCP to ChatGPT
The server address to paste into ChatGPT settings:
https://receiptor-mcp.run.tools
- Open ChatGPT in a browser (chatgpt.com). A Plus, Pro, Business, Enterprise or Edu plan is required.
- Turn on developer mode once: Settings → Apps → Advanced settings → Developer mode.
- Open Settings → Connectors and click Create.
- Fill in the form: Name (anything), Description (one line about what the service does), MCP server URL (copy it below).
- Under Authentication choose OAuth if the service requires sign-in, otherwise None. Click Create.
- In a new chat open + → Apps/Connectors and enable the connector.
OpenAI has renamed this section before (Connectors → Apps/Plugins). If the label differs, search settings for "developer mode". On Business/Enterprise workspaces an admin must allow custom connectors first.
Authorization
On first use ChatGPT opens the service's sign-in window. Sign in and approve access.
How to connect Receiptor MCP to Cursor
The server address to paste into Cursor settings:
https://receiptor-mcp.run.tools
Fastest: click Open in Cursor below and confirm the prompt.
Manually:
- In Cursor open Settings → Cursor Settings → MCP and click Add new global MCP server.
- Paste the JSON copied below into
~/.cursor/mcp.json(per project:.cursor/mcp.jsonin the repo root). - Save the file. The server appears in the MCP list; authorize it there if asked.
Authorization
If the service needs sign-in, an authorize button appears next to the server in the MCP list.
Server tool list (51)
Raw names from tools/list. Only developers need these.
| get_server_info | Get information about the Receiptor MCP server |
| workspace_get_context | Get the current workspace context (user, org, role, and effective ownership scope). |
| workspace_switch | Validate a target workspace and switch the active workspace for this MCP OAuth session. |
| activity_search | Search past source activity logs across email, WhatsApp, and uploads. For email sources, this first searches connected providers, then cross-checks matching message IDs against stored activity logs and returns any saved processing reasoning. |
| approvals_get | Get the details of a pending or resolved approval request by ID. |
| approvals_approve | Approve a pending approval request and execute the stored capability input. |
| approvals_reject | Reject a pending approval request without executing the stored capability input. |
| documents_search | Search, filter, and retrieve user's documents. Supports text search, filtering by document type, export status, date ranges, sorting, and semantic similarity. Use documents.count for totals or grouped summaries across all matching documents. |
| documents_get | Retrieve a single document by ID with full details. Returns all extracted fields including merchant info, line items, amounts, file URL, and source. |
| documents_update | Update a single document by ID. Use this for precise corrections to extracted document fields that should not be applied through bulk edit. |
| documents_list-duplicates | List existing duplicate document groups for the current workspace. |
| documents_scan-duplicates | Scan active unresolved documents in the current workspace for likely duplicate groups. Read-only: returns candidate groups and recommended canonical documents without mutating data. |
| documents_inspect | Inspect the original document file (image/PDF) with a vision model and compare visible values against currently stored extracted fields. |
| documents_count | Count documents and aggregate data. Use for spending totals and financial analysis. Supports grouping by merchant, category, date, export status, etc. Gets ALL matching documents. |
| documents_bulk-edit | Bulk edit documents. Supports dry-run preview (default) and execute modes. Preview returns matching documents with proposed changes and available merchants/categories for context. |
| documents_resolve-duplicates | Analyze a selected set of documents as possible duplicates. Use dryRun=true (default) to preview the recommended canonical/master document first. Use dryRun=false with masterId to apply the duplicate grouping and archive the non-master duplicates. |
| documents_delete | Soft-delete a document (receipt, invoice, etc.). The document is archived and can be recovered. Also archives any duplicate documents and cleans up cross-references. |
| documents_unarchive | Restore a previously archived document so it is active again. |
| currency_convert | Convert amounts between different currencies. Uses current rates by default, or historical rates for a specific date. |
| integrations_list | List available integrations for the user. Can filter by category (email, accounting, storage, social, banking) and status. Returns integration IDs needed for sendToIntegration, reconcileWithIntegration, and other operations. |
| integrations_send | Send a document (receipt/invoice) to a supported accounting integration (Xero or QuickBooks). Requires integrationId. targetId is required for Xero/QuickBooks. Set dryRun=true (default) to preview, dryRun=false to queue for sending. |
| integrations_reconcile | Reconcile a document (receipt/invoice) with a supported banking integration such as Mercury. Requires integrationId. targetId is optional for Mercury. Set dryRun=true (default) to preview, dryRun=false to queue for reconciliation. |
| integrations_unlink | Unlink a document from an integration (supports Xero and QuickBooks). Set dryRun=true (default) to preview, including invoice details and orphaned attachments. Set dryRun=false to execute. This action is IRREVERSIBLE. |
| rules_list | List automation rules for the user. In Receiptor, rules, automations, and workflows refer to the same concept. Shows rule information including name, status, trigger type, and execution stats. |
| rules_execute | Create an automation rule from a natural language description. In Receiptor, rules, automations, and workflows refer to the same concept. Approval includes the generated rule details before creation. |
| rules_delete | Delete an automation rule permanently. Use this when a rule, automation, or workflow should be removed entirely. |
| rules_disable | Disable an automation rule without deleting it. Use this when a rule should stop running but remain available for later re-enabling. |
| views_list | List saved document views for the current workspace. These saved views can be reused by rules, automations, and workflows. |
| views_create | Create a saved document view from document filters. Saved views are reusable inputs for rules, automations, and workflows. |
| views_delete | Delete a saved document view. Use this when a saved filter preset is no longer needed. |
| workspaces_list | List available workspaces (organizations) for the authenticated user. |
| chartOfAccounts_listAccounts | List or search accounts from the active chart of accounts for the current workspace so the agent can ground categorization decisions. |
| exports_list | List export records with filters (document, integration, date range) for the current workspace. |
| exports_get | Get one export record by ID for the current workspace. |
| sources_email_enable-monitoring | Enable monitoring for an email source to resume automatic document ingestion. |
| sources_email_delete | Delete an email source from the account and stop monitoring it permanently. |
| sources_email_disable-monitoring | Disable monitoring for an email source without removing the connection. |
| sources_mobile-scanners_activate | Activate a mobile scanner so documents from that number are processed again. |
| sources_mobile-scanners_enable-ai | Enable AI extraction for a mobile scanner without changing the source registration. |
| sources_mobile-scanners_delete | Delete a mobile scanner from the account permanently. |
| sources_mobile-scanners_deactivate | Deactivate a mobile scanner without deleting it. |
| sources_mobile-scanners_disable-ai | Disable AI extraction for a mobile scanner without removing the source. |
| entities_cleanup | Analyze and clean up the user's own business entities: enrich with Google Places data, find duplicates via place_id and embedding similarity, and merge them. This is for companies/legal entities/subsidiaries, not merchant or document duplicates. |
| entities_list | List and search business entities with pagination. |
| entities_upsert | Create a new business entity or update an existing one. |
| entities_delete | Delete a business entity and unlink associated documents. |
| entities_merge | Merge multiple business entities into one. Reassigns all linked documents to the kept entity, adds merged entity names as aliases, and deletes the duplicates. |
| memories_save | Save an explicit long-term memory or preference for the current user, workspace, or document. |
| memories_archive | Archive a stored long-term memory so it is no longer used at runtime. |
| memories_list | List current long-term memories stored for the current user/workspace. |
| onboarding_status | Get the user's onboarding/setup progress including which steps are completed and what's pending. |