
QuickBooks Online MCP Server
OfficialIntuit's official local MCP server exposing QuickBooks Online accounting data as callable tools.
Add to your client
Copy the config for your MCP client and paste it into its config file.
git clone https://github.com/intuit/quickbooks-online-mcp-server && npm install && npm run build && node dist/index.jsPaste into ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"quickbooks-online-mcp-server": {
"command": "node",
"args": [
"/absolute/path/to/quickbooks-online-mcp-server/dist/index.js"
],
"env": {
"QUICKBOOKS_REALM_ID": "<your-qbo-realm-id>",
"QUICKBOOKS_CLIENT_ID": "<your-qbo-client-id>",
"QUICKBOOKS_ENVIRONMENT": "sandbox",
"QUICKBOOKS_CLIENT_SECRET": "<your-qbo-client-secret>",
"QUICKBOOKS_REFRESH_TOKEN": "<your-qbo-refresh-token>"
}
}
}
}Before you start
- Node.js 18 or higher
- A QuickBooks (Intuit) Developer account and an app created in the Intuit Developer Portal
- OAuth 2.0 credentials from the app's Keys & Credentials page: Client ID and Client Secret
- A Realm ID (QuickBooks company ID) and a refresh token obtained via the included OAuth handshake
- An MCP-compatible client such as Claude Desktop
About QuickBooks Online MCP Server
The QuickBooks Online MCP Server is Intuit's official, open-source MCP server (released as an early preview) that exposes QuickBooks Online accounting data and operations as callable tools for AI assistants. It is a TypeScript implementation built on top of the node-quickbooks library, with Zod validation on every input.
It covers a broad surface of the QBO API — roughly 144 tools spanning around 29 entity types (customers, invoices, bills, vendors, accounts, items, journal entries, payments, and more) plus 11 financial reports such as Balance Sheet, Profit & Loss, Cash Flow, and Trial Balance. Operations are grouped into read, create, update, and delete, and the write/update/delete categories can each be disabled via environment variables (QUICKBOOKS_DISABLE_WRITE, QUICKBOOKS_DISABLE_UPDATE, QUICKBOOKS_DISABLE_DELETE) for safer read-only deployments.
The server runs locally over stdio and authenticates with OAuth 2.0 credentials from an Intuit Developer app. As an early-preview release it is intended for the QuickBooks Sandbox environment, making it well suited to building and testing AI accounting workflows before going to production.
Tools & capabilities (11)
get_* / search_* (read)Read and query tools for ~29 entity types including customers, invoices, bills, vendors, accounts, items, and journal entries.
create_* (write)Create entities such as customers, invoices, bills, vendors, and payments; can be disabled via QUICKBOOKS_DISABLE_WRITE.
update_* (update)Update supported entities; can be disabled via QUICKBOOKS_DISABLE_UPDATE.
delete_* (delete)Delete supported entities; can be disabled via QUICKBOOKS_DISABLE_DELETE.
get_balance_sheetGenerates the Balance Sheet financial report.
get_profit_and_lossGenerates the Profit & Loss financial report.
get_cash_flowGenerates the Cash Flow statement.
get_trial_balanceGenerates the Trial Balance report.
get_general_ledgerGenerates the General Ledger report.
financial reports (aged receivables/payables, customer/vendor)Additional reports including Aged Receivables, Aged Payables, Customer Sales, and Customer/Vendor balances (11 reports total).
get_company_infoRetrieves company profile and metadata for the connected QBO realm.
When to use it
- You want an AI assistant to pull live QuickBooks data — invoices, bills, customers, accounts — into a conversation
- You need to generate financial reports like P&L, Balance Sheet, or Cash Flow on demand
- You are building an AI accounting workflow and want to create or update invoices, bills, and payments programmatically
- You want a read-only QBO connection for safe analysis by disabling write/update/delete tools
- You are prototyping against the QuickBooks Sandbox before integrating QBO into a production app
Quick setup
- 1Create an app in the Intuit Developer Portal and copy the Client ID and Client Secret from Keys & Credentials
- 2Clone the repo, then run `npm install` and `npm run build`
- 3Copy `.env.example` to `.env` and fill in your credentials, Realm ID, and environment (sandbox)
- 4Run `npm run auth` to complete the browser-based OAuth handshake and obtain a refresh token
- 5Configure your MCP client (e.g. Claude Desktop) with the built server path and environment variables, then restart it
- 6Optionally set QUICKBOOKS_DISABLE_WRITE/UPDATE/DELETE to lock the server to read-only
Security notes
Connects to live accounting data via OAuth 2.0 refresh tokens; keep client secret and refresh token out of source control and start in the sandbox environment. Write operations can alter real ledgers, so use the write-disable flags or review tool permissions.
QuickBooks Online MCP Server FAQ
Does it support production QuickBooks or only the Sandbox?
As an early-preview release the local server is intended to run against the QuickBooks Sandbox environment. You select the environment in your `.env`, but production support is limited during preview.
How does authentication work?
It uses OAuth 2.0. You create an app in the Intuit Developer Portal, then run `npm run auth` for a browser sign-in that returns a refresh token used together with your Client ID, Client Secret, and Realm ID.
Can I prevent it from modifying my books?
Yes. Set QUICKBOOKS_DISABLE_WRITE, QUICKBOOKS_DISABLE_UPDATE, and QUICKBOOKS_DISABLE_DELETE to disable the create/update/delete tool categories, leaving only read access.
How many tools does it expose?
Around 144 tools covering roughly 29 entity types and 11 financial reports, grouped into read, create, update, and delete operations.
Is this an official Intuit project?
Yes. It is published under the `intuit` GitHub organization and licensed Apache-2.0, released as an early preview of Intuit's local MCP server.
Alternatives to QuickBooks Online MCP Server
Official Stripe server for payments, customers, subscriptions, invoices, and billing via natural language.
Coinbase's AgentKit MCP extension for onchain actions: transfers, swaps, and contract calls.
Alpaca's official trading server for stocks, ETFs, options, and crypto in plain English.
Compare QuickBooks Online MCP Server with: