> mcp integration
QuickBooks MCP Server: What It Does & How to Use It with Claude
What the QuickBooks MCP server can do — read invoices, run P&L reports, create transactions — and how to connect it to Claude Cowork, Code, or Desktop.
The QuickBooks MCP server lets an AI assistant read and write data in a QuickBooks Online company. It can pull invoices, run a profit-and-loss report, or draft a bill through a standard tool interface. Intuit publishes an official server, so you can wire your books into Claude Cowork, Claude Code, or Claude Desktop without writing custom QBO API code.
What can the QuickBooks MCP server do?
Intuit’s server exposes full CRUD across 29 QuickBooks Online entity types plus 11 financial reports as callable tools.
| Capability | What it enables |
|---|---|
| Read entities | Get and Search across Customer, Invoice, Bill, Vendor, Item, Account, Payment, and more — “list open invoices for Acme” |
| Create transactions | Create Invoice, Estimate, Sales Receipt, Bill, Journal Entry, Purchase Order, and other documents |
| Update & delete | Edit or void existing records (gated behind separate flags you can disable) |
| Financial reports | Profit & Loss, Balance Sheet, Cash Flow, Trial Balance, General Ledger, Aged Receivables, and more |
| Reference data | Read Class, Department, Term, Payment Method, Tax Code/Rate/Agency, and Company Info |
| Scope controls | Suppress write, update, or delete tool categories via env flags; read tools always remain available |
Is the official Intuit server the right one?
- Official,
intuit/quickbooks-online-mcp-server. This is the right default for most teams. It is a local stdio server maintained by Intuit, covering 29 entities and 11 reports with OAuth 2.0, and theQUICKBOOKS_ENVIRONMENTflag lets you point it at a sandbox company for testing or your production QBO company. Start in sandbox to learn the tool surface before touching live books. - Community servers. Several alternatives exist. CData ships read-only servers backed by their JDBC drivers, while laf-rge/quickbooks-mcp and nikhilgy/quickbooks-mcp-server are independent implementations that query and edit live QBO data. These vary in scope, maintenance, and trust, so vet them before pointing at real financials.
How do you connect QuickBooks to Claude?
- Create a free app on the Intuit Developer Portal and grab your
CLIENT_IDandCLIENT_SECRET. - Run the OAuth flow to get a
REFRESH_TOKENand your company’sREALM_ID(the default callback ishttp://localhost:8000/callback). - Clone and build
intuit/quickbooks-online-mcp-server(npm install && npm run build). - Add it to your MCP config. Claude Desktop and Claude Code use the same
mcpServersblock:
{
"mcpServers": {
"quickbooks": {
"command": "node",
"args": ["path/to/dist/index.js"],
"env": {
"QUICKBOOKS_CLIENT_ID": "...",
"QUICKBOOKS_CLIENT_SECRET": "...",
"QUICKBOOKS_REFRESH_TOKEN": "...",
"QUICKBOOKS_REALM_ID": "...",
"QUICKBOOKS_ENVIRONMENT": "sandbox"
}
}
}
}
- Start read-only by adding
"QUICKBOOKS_DISABLE_WRITE": "true"until you trust the output, then restart the client. KeepQUICKBOOKS_ENVIRONMENTonsandboxwhile you experiment, and switch toproductiononly once you have reviewed which tools the model can call.
How we use it: It is genuinely good for read-heavy work, like “summarize last quarter’s P&L,” reconciling what an invoice actually says against a spreadsheet, or pulling aged receivables into a draft email. It is bad for blind writes: letting an assistant create journal entries unsupervised in live books is how you get a mess your accountant has to unwind. The realistic gotcha: run it against the sandbox first so the data you query is Intuit’s seeded test company. Don’t switch to production and assume the assistant will write clean entries until you have watched it work.
How do you keep QuickBooks access safe?
Treat accounting access like production credentials. Use OAuth scoped to one company, start with QUICKBOOKS_DISABLE_WRITE (and disable update/delete) so the assistant is read-only first, and keep your client secret and refresh token out of shared configs. Stay in the sandbox until you have reviewed exactly which tools the model can call, then move to production deliberately.
How do you wire QuickBooks into your stack?
The MCP server is the easy part. The value is in the workflow around it: which reports get pulled, what gets drafted vs. auto-posted, and where a human signs off before anything hits the books. If you want help scoping a safe QuickBooks-to-Claude workflow, Book a discovery call.
Sources: official Intuit server · Intuit local MCP early preview · CData community server