AI × QuickBooks Desktop
Connect Claude Code, Cursor, VS Code — any MCP client — to QuickBooks Desktop. Your agent asks in plain language; LedgerCrossing turns it into qbXML on the machine where your books live.
Included in the product. Not a tier, not a preview, not a limited-time unlock.
QuickBooks Desktop has no cloud API — it only talks through a local COM interface on the machine where it runs. That's why cloud MCP servers can't touch it, and it's exactly what LedgerCrossing is: a Windows app sitting next to QuickBooks, exposing a REST API and an MCP server on the same local listener. If your books are in Desktop — Pro, Premier, or Enterprise — this is the bridge.
The agent discovers QuickBooks on demand instead of memorizing it:
list_operations to browse, get_operation for the exact field rules,
validate_qbxml to check locally, then run_qbxml to execute. The full
catalog never floods the agent's context — it pulls only the operation it's working on.
list_operationsReturns all 240 qbXML operations with category and minimum QuickBooks version — the agent browses what's possible.
get_operationThe full field reference for one operation: element order, required flags, max lengths, enums, version gates.
validate_qbxmlChecks a request locally against the catalog — no QuickBooks round-trip, so mistakes get caught before they run.
run_qbxmlExecutes the qbXML against QuickBooks Desktop and returns the response. Reads and writes — the same full capability as the REST API.
explain_errorTurns a QuickBooks status code into what actually went wrong and what to change.
get_statusIs QuickBooks up, which company file is open, is the bridge connected.
The catalog is generated from Intuit's own qbXML specification — facts, field rules, and version gates for all 240 operations.
MCP is not read-only. run_qbxml executes whatever qbXML the agent
writes — queries, invoices, payments, edits — exactly like the REST API. That's the point, and it
means you should scope what you connect: QuickBooks' own Audit Trail records every posted
transaction, and user permissions in QuickBooks still apply to the connection.
Runaway queries are rejected by default. Unbounded "give me everything"
queries are refused unless you opt out (RequireBoundedQueries) — a guardrail against
an agent accidentally pulling your entire company file in one call.
Auth is required on every path. The MCP endpoint takes the same API key as the
REST API (Bearer or X-Api-Key); the app refuses remote exposure without a key set.
MCP is free on every path. We charge for hosted reachability, never for AI.
REST API + MCP server, local. Part of the $299 one-time product.
Free with the product
Run your own Cloudflare Tunnel, VPN, or reverse proxy — our guide walks you through it.
Free, your infrastructure
LedgerCrossing Remote — a managed relay, zero network configuration.
$39/mo — for the relay, not the AI
X-Api-Key headerX-Api-Key headerX-Api-Key headerClaude Desktop isn't supported yet — it only speaks stdio, and our one-click bundle for it is built but unpublished until code signing lands. The quickstart has exact config for each client.
Compatibility: if it can make a web request, it can talk to QuickBooks Desktop through LedgerCrossing — custom code, integration platforms, internal tools, AI agents, anything. One honest caveat: off-the-shelf apps that sync through the Web Connector today are controlled by their vendor, so LedgerCrossing is not a drop-in replacement underneath them.
$299 one-time, unlimited QuickBooks company files per machine, 30-day money-back guarantee.
Then follow the MCP quickstart — five minutes to the first query.