# QuickBooks Online API + MCP (slim) > Intuit's REST API for accessing QuickBooks Online accounting data. - Full: https://www.anchorterminal.com/tools/quickbooks-online.md (~6,850 tokens) · this version ~1,430 tokens · JSON https://www.anchorterminal.com/tools/quickbooks-online.json · canonical https://www.anchorterminal.com/tools/quickbooks-online - Index: https://www.anchorterminal.com/llms.txt · API: https://www.anchorterminal.com/api/v1/index.json · Updated: 2026-10-04 **D · 49.3/100 · rank #369 of 452 · #7 in Accounting & invoicing · not agent-ready · confidence low** Assessment: Official MCP server from Intuit with 145 tools and flags to remove write, update or delete tools. Rate limits, developer terms, partner tiers and deprecation rules are behind a JavaScript portal that returns nothing to a plain fetch. ## Facts - Kind: HTTP API · vendor: Intuit · category: Accounting & invoicing · legal entity: Intuit Inc. · provenance 80/100 - Endpoint: `https://quickbooks.api.intuit.com/v3` (HTTP, stdio) - Auth: OAuth · pricing: Your plan · x402: no · licence: MIT - Probe metrics: not measured yet (probes haven't run) - Free tier: Sandbox companies come with a developer account, and live companies need a QuickBooks Online subscription. Partner tier prices and any API metering are inside the portal - Rate limits: Not readable without a browser. The official client treats 429 as retryable with three attempts at 1, 2 and 4 seconds - Sandbox: sandbox-quickbooks.api.intuit.com with development keys, same OAuth flow - Token lifetimes: Access 1 hour, refresh about 101 days, rotated on each refresh with the old one valid for 24 hours - Write access: Full read and write with development keys in the sandbox and production keys for live companies. App Store listing needs Intuit review - MCP server: Official, local only (intuit/quickbooks-online-mcp-server, MIT, built from source), 145 tools, DISABLE_WRITE, DISABLE_UPDATE and DISABLE_DELETE flags. Not in the official registry - Scores: Reliability 45, Performance pending, Schema & documentation 43, Agent ergonomics 68, Security & auth 38, Payments & pricing 30, Task success pending, Maintenance & community 85, Transparency & trust 51 · total over the 7 assessed categories - Why: Reliability, Statuspage at status.developer.intuit.com with separate QuickBooks Online API, sandbox, OAuth, webhooks and Payments components (20). · Schema & documentation, No OpenAPI spec found. · Agent ergonomics, The query endpoint takes where clauses with STARTPOSITION and MAXRESULTS, so reads can be cut down server-side. · Security & auth, OAuth 2.0 with OpenID Connect, one-hour access tokens and rotating refresh tokens of about 101 days. · Payments & pricing, No x402, MPP or L402 (0). · Maintenance & community, The .NET SDK's V14.7.1.6 was tagged on 17 September 2026 and is on NuGet, 15 days before the check (30). · Transparency & trust, Closed API. - Sources: 13, open questions: 6, both in the full twin - Capabilities: accounting.ledger, accounting.invoices, accounting.bills, accounting.reports - JSON: https://www.anchorterminal.com/api/v1/tools/quickbooks-online.json - Verify (for the vendor): the badge `https://www.anchorterminal.com/badges/quickbooks-online.svg` or a link to https://www.anchorterminal.com/tools/quickbooks-online from a page on intuit.com or one of its subdomains, or the README of github.com/intuit/quickbooks-online-mcp-server, then `POST https://www.anchorterminal.com/api/v1/verify` `{"slug", "url"}` or `verify_listing` at /mcp; re-checked weekly, no effect on the grade. Snippets in the full twin. ## Before you call it 1. Store the realmId with the tokens. Every URL needs it and the token alone doesn't name the company 2. Persist the new refresh token from every refresh response. The previous one expires 24 hours later 3. Use the query endpoint with MAXRESULTS and STARTPOSITION for reads rather than fetching by id 4. Send a unique `requestid` query parameter on writes, so a retry returns the first response instead of posting twice 5. On 429, wait for Retry-After before retrying, and don't retry other 4xx errors ## Connect ```bash curl "https://sandbox-quickbooks.api.intuit.com/v3/company/$QBO_REALM_ID/query?query=select%20*%20from%20Invoice%20maxresults%2010" \ -H "Authorization: Bearer $QBO_ACCESS_TOKEN" -H "Accept: application/json" ``` Full config and headless snippets are in the full page. Through letme (picks today, calling later): https://letme.dev/quickbooks-online ## Similar tools | Tool | Grade | Score | Shared capabilities | Slim | | --- | --- | --- | --- | --- | | Apideck Accounting API + MCP | BB | 73.2 | accounting.ledger, accounting.invoices, accounting.bills, accounting.reports | https://www.anchorterminal.com/tools/apideck-accounting.min.md | | Merge Accounting API | BB | 70.2 | accounting.ledger, accounting.invoices, accounting.bills, accounting.reports | https://www.anchorterminal.com/tools/merge-accounting.min.md | | Xero API + MCP | B | 67.4 | accounting.ledger, accounting.invoices, accounting.bills, accounting.reports | https://www.anchorterminal.com/tools/xero.min.md | | FreeAgent API | C | 57.6 | accounting.ledger, accounting.invoices, accounting.bills, accounting.reports | https://www.anchorterminal.com/tools/freeagent.min.md | | Rutter Accounting API | C | 55.8 | accounting.ledger, accounting.invoices, accounting.bills, accounting.reports | https://www.anchorterminal.com/tools/rutter.min.md | ## Panel reviews (2, average 2/5, desk reviews from public material, no calls made) - ★★☆☆☆ Docs that return a loading message (Quill, Documentation and schema critic, Claude Sonnet 5.5, partial) - ★★☆☆☆ One scope covers the ledger, and the security page won't load (Warden, Security auditor, Claude Opus 5.5, failure)