Manage payments, customers, and subscriptions through Stripe.
- Home
- Top MCPs for Commerce & Payments
- QuickBooks Online
QuickBooks Online
Run QuickBooks Online accounting from an agent — invoices, bills, payments, and financial reports.
Quick answer
What it does
Exposes 145 tools covering 29 QuickBooks Online entity types with full create/read/update/delete/search, plus 11 financial reports — balance sheet, profit and loss, cash flow, and others. Runs locally as a stdio subprocess against one QuickBooks company.
Best for
- Creating and sending invoices from chat
- Reading QuickBooks financial reports
- Recording payments against invoices
- Read-only bookkeeping agents (write tools disabled)
Not for
- Zero-config setups — the OAuth app registration is mandatory
- Unattended writes to a production ledger without approval
Source: top-mcps.com/mcp/quickbooks — verified Sep 2026
Setup recipe
Pick your client, then follow the three steps.
- 1
Install
claude_desktop_config.jsonjson{ "mcpServers": { "quickbooks": { "command": "git", "args": [ "clone", "https://github.com/intuit/quickbooks-online-mcp-server", "&&", "cd", "quickbooks-online-mcp-server", "&&", "npm", "install", "&&", "npm", "run", "build" ], "env": { "QUICKBOOKS_CLIENT_ID": "${QUICKBOOKS_CLIENT_ID}", "QUICKBOOKS_CLIENT_SECRET": "${QUICKBOOKS_CLIENT_SECRET}", "QUICKBOOKS_REFRESH_TOKEN": "${QUICKBOOKS_REFRESH_TOKEN}", "QUICKBOOKS_REALM_ID": "${QUICKBOOKS_REALM_ID}", "QUICKBOOKS_ENVIRONMENT": "${QUICKBOOKS_ENVIRONMENT}" } } } }Paste under mcpServers. Fully quit and reopen Claude after editing.
CLI or .mcp.jsonshell# export QUICKBOOKS_CLIENT_ID=your_client_id # export QUICKBOOKS_CLIENT_SECRET=your_client_secret # export QUICKBOOKS_REFRESH_TOKEN=your_refresh_token # export QUICKBOOKS_REALM_ID=your_company_realm_id # export QUICKBOOKS_ENVIRONMENT=sandbox claude mcp add quickbooks -- git clone https://github.com/intuit/quickbooks-online-mcp-server && cd quickbooks-online-mcp-server && npm install && npm run buildRun from your repo. Commit .mcp.json to share with your team.
.cursor/mcp.jsonjson{ "mcpServers": { "quickbooks": { "command": "git", "args": [ "clone", "https://github.com/intuit/quickbooks-online-mcp-server", "&&", "cd", "quickbooks-online-mcp-server", "&&", "npm", "install", "&&", "npm", "run", "build" ], "env": { "QUICKBOOKS_CLIENT_ID": "${QUICKBOOKS_CLIENT_ID}", "QUICKBOOKS_CLIENT_SECRET": "${QUICKBOOKS_CLIENT_SECRET}", "QUICKBOOKS_REFRESH_TOKEN": "${QUICKBOOKS_REFRESH_TOKEN}", "QUICKBOOKS_REALM_ID": "${QUICKBOOKS_REALM_ID}", "QUICKBOOKS_ENVIRONMENT": "${QUICKBOOKS_ENVIRONMENT}" } } } }Global path: ~/.cursor/mcp.json. Reload window after editing.
.vscode/mcp.jsonjsonc{ "servers": { "quickbooks": { "command": "git", "args": [ "clone", "https://github.com/intuit/quickbooks-online-mcp-server", "&&", "cd", "quickbooks-online-mcp-server", "&&", "npm", "install", "&&", "npm", "run", "build" ], "env": { "QUICKBOOKS_CLIENT_ID": "${QUICKBOOKS_CLIENT_ID}", "QUICKBOOKS_CLIENT_SECRET": "${QUICKBOOKS_CLIENT_SECRET}", "QUICKBOOKS_REFRESH_TOKEN": "${QUICKBOOKS_REFRESH_TOKEN}", "QUICKBOOKS_REALM_ID": "${QUICKBOOKS_REALM_ID}", "QUICKBOOKS_ENVIRONMENT": "${QUICKBOOKS_ENVIRONMENT}" } } } }VS Code uses the "servers" key (not "mcpServers").
~/.codeium/windsurf/mcp_config.jsonjson{ "mcpServers": { "quickbooks": { "command": "git", "args": [ "clone", "https://github.com/intuit/quickbooks-online-mcp-server", "&&", "cd", "quickbooks-online-mcp-server", "&&", "npm", "install", "&&", "npm", "run", "build" ], "env": { "QUICKBOOKS_CLIENT_ID": "${QUICKBOOKS_CLIENT_ID}", "QUICKBOOKS_CLIENT_SECRET": "${QUICKBOOKS_CLIENT_SECRET}", "QUICKBOOKS_REFRESH_TOKEN": "${QUICKBOOKS_REFRESH_TOKEN}", "QUICKBOOKS_REALM_ID": "${QUICKBOOKS_REALM_ID}", "QUICKBOOKS_ENVIRONMENT": "${QUICKBOOKS_ENVIRONMENT}" } } } }Open via Cascade → hammer icon → Configure.
cline_mcp_settings.jsonjson{ "mcpServers": { "quickbooks": { "command": "git", "args": [ "clone", "https://github.com/intuit/quickbooks-online-mcp-server", "&&", "cd", "quickbooks-online-mcp-server", "&&", "npm", "install", "&&", "npm", "run", "build" ], "env": { "QUICKBOOKS_CLIENT_ID": "${QUICKBOOKS_CLIENT_ID}", "QUICKBOOKS_CLIENT_SECRET": "${QUICKBOOKS_CLIENT_SECRET}", "QUICKBOOKS_REFRESH_TOKEN": "${QUICKBOOKS_REFRESH_TOKEN}", "QUICKBOOKS_REALM_ID": "${QUICKBOOKS_REALM_ID}", "QUICKBOOKS_ENVIRONMENT": "${QUICKBOOKS_ENVIRONMENT}" } } } }Open via the Cline sidebar → MCP Servers → Edit.
~/.continue/config.jsonjson{ "experimental": { "modelContextProtocolServers": [ { "transport": { "type": "stdio", "command": "git", "args": [ "clone", "https://github.com/intuit/quickbooks-online-mcp-server", "&&", "cd", "quickbooks-online-mcp-server", "&&", "npm", "install", "&&", "npm", "run", "build" ], "env": { "QUICKBOOKS_CLIENT_ID": "${QUICKBOOKS_CLIENT_ID}", "QUICKBOOKS_CLIENT_SECRET": "${QUICKBOOKS_CLIENT_SECRET}", "QUICKBOOKS_REFRESH_TOKEN": "${QUICKBOOKS_REFRESH_TOKEN}", "QUICKBOOKS_REALM_ID": "${QUICKBOOKS_REALM_ID}", "QUICKBOOKS_ENVIRONMENT": "${QUICKBOOKS_ENVIRONMENT}" } } } ] } }Continue uses modelContextProtocolServers with a transport block.
~/.codex/config.tomlshell# ~/.codex/config.toml [mcp_servers.quickbooks] command = "git" args = [ "clone", "https://github.com/intuit/quickbooks-online-mcp-server", "&&", "cd", "quickbooks-online-mcp-server", "&&", "npm", "install", "&&", "npm", "run", "build", ] env = { QUICKBOOKS_CLIENT_ID = "${QUICKBOOKS_CLIENT_ID}", QUICKBOOKS_CLIENT_SECRET = "${QUICKBOOKS_CLIENT_SECRET}", QUICKBOOKS_REFRESH_TOKEN = "${QUICKBOOKS_REFRESH_TOKEN}", QUICKBOOKS_REALM_ID = "${QUICKBOOKS_REALM_ID}", QUICKBOOKS_ENVIRONMENT = "${QUICKBOOKS_ENVIRONMENT}" }Codex uses TOML. Each server is a [mcp_servers.<name>] subtable.
~/.config/zed/settings.jsonjsonc{ "context_servers": { "quickbooks": { "command": { "path": "git", "args": [ "clone", "https://github.com/intuit/quickbooks-online-mcp-server", "&&", "cd", "quickbooks-online-mcp-server", "&&", "npm", "install", "&&", "npm", "run", "build" ] }, "env": { "QUICKBOOKS_CLIENT_ID": "${QUICKBOOKS_CLIENT_ID}", "QUICKBOOKS_CLIENT_SECRET": "${QUICKBOOKS_CLIENT_SECRET}", "QUICKBOOKS_REFRESH_TOKEN": "${QUICKBOOKS_REFRESH_TOKEN}", "QUICKBOOKS_REALM_ID": "${QUICKBOOKS_REALM_ID}", "QUICKBOOKS_ENVIRONMENT": "${QUICKBOOKS_ENVIRONMENT}" } } } }Zed calls them "context_servers". Settings live-reload on save.
ChatGPT → Apps directorynoneQuickBooks Online doesn't ship a hosted HTTPS endpoint today. ChatGPT supports remote MCP servers only — to use this server in ChatGPT you'll need to deploy it to a public HTTPS URL first (e.g. via Cloudflare Workers or Vercel) or wait for an official remote build.
- 2
Set required secrets
Set
QUICKBOOKS_CLIENT_ID,QUICKBOOKS_CLIENT_SECRET,QUICKBOOKS_REFRESH_TOKEN,QUICKBOOKS_REALM_ID,QUICKBOOKS_ENVIRONMENTin your shell environment before launching your MCP client. - 3
Try a minimum working prompt
Minimum working prompt pending verification. Try any prompt from the MCP’s README once installed.
Tools & permissions
Tools list pending verification. The server exposes tools over MCP; we haven’t yet parsed its capability manifest into this page. Check the GitHub repo for the authoritative list.
Security & scope
- Access scope
- Network
- Sandbox
- Runs locally over stdio and authenticates to one QuickBooks company with an OAuth 2.0 refresh token, client ID/secret, and realm ID. Access scope matches the OAuth grant on the Intuit app.
- Gotchas
- Every install needs an app registered on the Intuit Developer Portal — Intuit issues no per-user API keys, so there is no way to skip the OAuth handshake even to read your own company.
- Sandbox accepts a localhost redirect URI; production rejects it and requires a public HTTPS callback for the initial authorization.
- The refresh token rotates and lapses after roughly 100 days of disuse, at which point the browser handshake has to be repeated.
- Prefer QUICKBOOKS_DISABLE_WRITE/UPDATE/DELETE over trusting prompt instructions when an agent only needs to read the ledger.
Agent prompt pack
— copy into Claude, Cursor, or ChatGPT.Recommend the best MCP servers for [task: e.g. commerce & payments work] in [client: Claude]. Constraints: - Prefer tools that are [official | open-source | read-only] — pick what matters for my use case. - Exclude MCPs that require [e.g. a paid plan, OAuth-only flows, remote-only transport]. - Return at most 3 picks, ranked. For each pick include: 1. One-sentence rationale. 2. The ready-to-paste install snippet for my client. 3. Any required secrets I need to create before installing. Cross-check the top-mcps.com listing: https://top-mcps.com/top-mcps-for-commerce-payments
Compare QuickBooks Online MCP vs [Xero MCP] for the following job: [describe the job, e.g. "let an agent create GitHub issues on bug triage"]. Judge them on: - Setup time and complexity (what a new user hits first). - Auth model (none / API key / OAuth 2.1) and credential risk. - Transport (stdio / Streamable HTTP / SSE) and where the server runs. - Required secrets and the blast radius if they leak. - Operational risk in an unattended agent loop. - Which one is "good enough" for a weekend prototype vs. production. End with one sentence: which should I pick for my scenario, which is: [my scenario]. References: - https://top-mcps.com/mcp/quickbooks - top-mcps.com listing for Xero
Install the QuickBooks Online MCP server for my [client: Claude] at the default config path for that client. Use the exact install snippet published at https://top-mcps.com/mcp/quickbooks (fetch https://top-mcps.com/mcp/quickbooks.json for the canonical server.json if you can read URLs). Before finishing: 1. Create the required secrets (QUICKBOOKS_CLIENT_ID, QUICKBOOKS_CLIENT_SECRET, QUICKBOOKS_REFRESH_TOKEN, QUICKBOOKS_REALM_ID, QUICKBOOKS_ENVIRONMENT) and put them in the appropriate env block — do not hard-code them. 2. Restart or reload the client so it picks up the new server. 3. Verify the server is connected (green / running state) and at least one tool is listed. 4. If anything fails, read the client's MCP logs and report the exact error — do not silently retry. Confirm when done and list the tools the server now exposes.
Frequently asked questions
What changed
— 2 updates tracked.Refreshed install snippets and fact sheet; verified for 2026.
Initial directory listing.
More Commerce & Payments MCPs
Other tools in the same category worth evaluating.
Official Xero MCP — invoices, contacts, bank transactions, and accounting from an agent.
Build on Shopify with an agent — searches the dev docs and validates generated GraphQL, components and Liquid themes.
Compared with QuickBooks Online
Side-by-side breakdowns for the choices people most often weigh against this MCP.
Exploring Top MCPs for Commerce & Payments? See all Commerce & Payments MCPs →

