LedgerCrossingLedgerCrossing
HomePricingRemoteFAQ

AI × QuickBooks Desktop

The MCP Server for 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.

5-minute setup guide →

Every other QuickBooks MCP server is for QuickBooks Online

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.

Six tools, one discovery loop

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_operations

Returns all 240 qbXML operations with category and minimum QuickBooks version — the agent browses what's possible.

get_operation

The full field reference for one operation: element order, required flags, max lengths, enums, version gates.

validate_qbxml

Checks a request locally against the catalog — no QuickBooks round-trip, so mistakes get caught before they run.

run_qbxml

Executes the qbXML against QuickBooks Desktop and returns the response. Reads and writes — the same full capability as the REST API.

explain_error

Turns a QuickBooks status code into what actually went wrong and what to change.

get_status

Is 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.

Full capability — treat it accordingly

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.

What's free and what isn't

MCP is free on every path. We charge for hosted reachability, never for AI.

On your machine or LAN

REST API + MCP server, local. Part of the $299 one-time product.

Free with the product

From anywhere, self-managed

Run your own Cloudflare Tunnel, VPN, or reverse proxy — our guide walks you through it.

Free, your infrastructure

From anywhere, hosted by us

LedgerCrossing Remote — a managed relay, zero network configuration.

Works today over HTTP

Claude 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.

One purchase. The API and the AI door included.

$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.