Connect QuickBooks Online to Claude Code by adding DeepLedger's hosted MCP server, signing in, and choosing an active company through the AI agent. You can then read reports and prepare bookkeeping work from the terminal.
This guide covers Claude Code. For browser chat, use the Claude connector guide. For local versus hosted options, see the QuickBooks MCP server guide.
Before You Start
You need Claude Code installed and signed in, a DeepLedger account, and access to a company with QuickBooks Online connected in the DeepLedger portal. A primary admin or company admin can authorize the QuickBooks app connection. Intuit's app access guide explains that permission requirement.
There are two sign-ins: the company's QuickBooks authorization in the portal, and your AI client's authorization to DeepLedger. The terminal command handles the second connection.
Add the Hosted Server
Run:
claude mcp add --transport http deepledger https://mcp.deepledger.ai/mcp
Then open a Claude Code session, run /mcp, select deepledger, and complete authentication. Use claude mcp list to check status or claude mcp get deepledger for details. These commands follow the official Claude Code MCP documentation.
The default configuration is private to you in the current project. Add --scope user when registering the server if you want it available across your projects; --scope project shares the server definition through .mcp.json. Share the URL, never a credential. Each team member signs in separately.
DeepLedger's consent identifies you. It does not ask you to select a QuickBooks company. After signing in, ask:
List the companies I can access. Switch to Acme Consulting, confirm its QuickBooks company name, and do not record anything.
Replace Acme Consulting with your company. If names are ambiguous, choose from the returned list. If the company needs a QuickBooks reconnect, fix that in the portal before requesting ledger data.
What the Connection Provides
The URL reaches DeepLedger's hosted MCP server for accounting. You do not install a local QuickBooks server or create an Intuit developer app.
DeepLedger currently exposes 20 QuickBooks tools and six workflow tools. They cover ledger transactions, reports, company and master data, attachments, bank feeds, documents, organization context, review tasks, workflow guides, and close preparation. QuickBooks remains the ledger of record.
This is live access. A write tool can create or modify real financial records, so a setup test should use reads.
A Safe First Session
1. Confirm the company. Ask the AI agent to read the company profile and state the company name. Check that it matches the books you intend to use.
2. Pull a bounded report. Try: "Show Acme Consulting's profit and loss for August 1 through August 31, 2026, on an accrual basis. Do not make changes." Change the dates and basis to your needs. Naming them makes the result easier to compare with QuickBooks.
3. Inspect the work. Ask: "List uncategorized transactions for that period and explain what needs review. Do not record anything."
4. Agree on the write boundary. For a bookkeeping session, specify whether the AI agent may record items supported by live QuickBooks history or must prepare proposals only. DeepLedger's recording guide calls for entity lookups, open-document checks, and duplicate searches before recording.
5. Resolve uncertainty through tasks. Review the evidence and proposed treatment in the portal. After approving or correcting an item, hand it back to the AI agent to record and complete with the QuickBooks transaction reference.
Useful Terminal Workflows
- Migration checks: compare a transformation script's output with live balances and open transactions before importing.
- Receipt and invoice batches: inspect local source files, resolve vendors and accounts, and attach evidence to supported QuickBooks entries.
- Financial analysis: pull a report into a local analysis workflow while retaining the company, reporting period, and accounting basis.
- Bank-feed review: inspect DeepLedger bank-feed items, check ledger history, and route uncertain items to a reviewer.
- Month-end preparation: follow the close guide and update the shared Close Sheet, with adjusting entries and sign-off reviewed by a person.
A request to inspect a CSV is not permission to import it. Write the intended boundary into the request, especially when local scripts and ledger tools are available in the same session.
Company Access and Headless Jobs
A normal personal OAuth connection reaches the companies you can access in DeepLedger. The active company is shared across your personal AI clients. Ask the agent to switch through qbCompanyProfile, then check the company named in subsequent results. See the multi-company guide for details.
Personal API keys also follow the user's active company by default. They are not automatically fixed to the company whose settings page you were viewing. For headless work, store credentials outside source control and explicitly bind each request to its intended organization. Organization routine credentials are fixed to one company. The LangChain and CrewAI guides cover framework setup.
What the Guardrails Do
DeepLedger combines tool validation with instructions the AI agent must follow. Those are different controls: a required field or task handoff can be enforced in code, while searching for duplicate transactions and escalating uncertain categorization also depend on the agent following the recording procedure. Do not treat a successful tool call as proof that every accounting check happened.
Posted-transaction deletion is absent from the tool surface, but supported updates and voids still change the ledger. DeepLedger records tool activity for the portal worklog; QuickBooks also keeps its own audit history. Use the returned transaction reference to verify an important write rather than relying only on a chat summary.
Troubleshooting
Authentication is pending. Open /mcp and complete sign-in. If authentication fails, check the reported error before removing and adding the server again.
The wrong company appears. Ask the agent to list companies and switch to the correct one. Re-authentication is not the normal company-switching method.
The company is missing. Check your DeepLedger membership or assignment. Signing into an AI client does not grant access to additional companies.
The company is listed but reports fail. Check its QuickBooks connection status in the portal. A successful company switch does not prove its QuickBooks token works.
A request partially completed. Read the result and inspect QuickBooks before retrying a write. A timeout is not proof that nothing was recorded.
Create a DeepLedger account or see how the bookkeeping workflow works.
Frequently Asked Questions
How do I connect QuickBooks Online to Claude Code?
Add https://mcp.deepledger.ai/mcp as an HTTP MCP server, authenticate through /mcp, then ask the AI agent to list your companies and confirm the active one before reading the ledger.
Do I need a QuickBooks API key for Claude Code?
No. Interactive setup uses DeepLedger OAuth. Your company must already have an authorized QuickBooks Online connection in DeepLedger; you do not need to create an Intuit developer app.
Can this connection change QuickBooks records?
Yes. DeepLedger includes write tools as well as reports and lookups. Start with a read-only request, review the proposed work, and keep uncertain treatments in review tasks. Connecting does not make every write require approval automatically.
Does choosing a company affect other AI clients?
For a normal personal connection, yes. DeepLedger stores the active company per person, so switching can affect other clients signed in as you. Check the company before each write workflow.
How do I remove the server from Claude Code?
Run claude mcp remove deepledger. To stop DeepLedger access to the underlying company as well, disconnect that QuickBooks connection in the portal; this also affects other workflows using it.