Connect your account, then chat with AI to run tools.
Query QuickBooks customers, vendors, invoices, bills, payments, accounts, and financial reports from chat.
QuickBooks is used here only to identify this integration; MCPBundles is not affiliated with or endorsed by QuickBooks or its owner.
Live probe refreshed Sep 18, 2026 · Endpoint host mcp.mcpbundles.com
Built for
Finance Operations, Bookkeeping Automation, Founder Finance, RevOps
Find overdue receivables
Turns invoice and customer data into a collections queue.
Find overdue QuickBooks invoices with open balances, group them by customer, and summarize who needs follow-up first.
Connect QuickBooks to any MCP client in minutes
You’ll sign in to MCPBundles when your client connects.
https://mcp.mcpbundles.com/bundle/quickbooksThis server needs a sign-in. MCPBundles handles that setup once — then chat here with saved access and a log of what ran.
MCPBundles publishes this directory for MCP discovery. Except where we host or operate an offering, third-party services run under their own terms. Product and company names on this page are used in a descriptive, identifying way (including under nominative fair use where applicable); they remain the property of their owners. Nothing here grants you rights in those marks, and nothing here is an offer to sell a third party's services. Terms
You’ll sign in to MCPBundles when your client connects.
https://mcp.mcpbundles.com/bundle/quickbooksThis server needs a sign-in. MCPBundles handles that setup once — then chat here with saved access and a log of what ran.
Opens MCPBundles Studio with this server selected. After sign-in, chat and run tools from the same thread.
Browse all toolsSummarize business performance
Combines standard reports into an operator-readable finance brief.
Run QuickBooks profit and loss, balance sheet, and cash flow reports for the latest month and summarize the biggest changes.
Audit vendor spend
Connects AP objects to spend-control questions.
Review recent QuickBooks vendors, bills, purchase orders, and bill payments to identify unusual or rising expense categories.
Prepare a sync plan
Uses change data capture for operational integrations.
Use QuickBooks CDC data to list entities changed since last week and explain which customers, invoices, bills, and payments need syncing.
What QuickBooks data can MCPBundles work with?
It can query company info, customers, vendors, invoices, bills, payments, accounts, items, employees, estimates, purchase orders, refund receipts, reports, PDFs, attachments, and change data.
What is the strongest QuickBooks AI workflow?
The strongest workflows combine accounting entities with reports: overdue invoice triage, vendor spend review, monthly finance summaries, and change-data sync analysis.
How do QuickBooks updates work?
Updates require the entity id and a fresh sync token from a recent read. That optimistic concurrency token prevents overwriting newer accounting changes.
Related editorial
QuickBooks Workflows with AI
How AI agents can raise invoices, run P&L and balance-sheet reports, batch-update customers and items, and email PDF statements without leaving the chat.
Domain knowledge for QuickBooks — workflow patterns, data models, and gotchas for your AI agent.
All data is scoped to a Company (realm). realm_id is bound on the connection and applied automatically to every tool call.
Intuit exposes two accounting API hosts. The OAuth token and realm_id belong to one environment only. Use the credential Use QuickBooks sandbox API option for sandbox/developer companies; leave it off for live QuickBooks Online. Wrong host yields HTTP 403 / Intuit error 3100 (ApplicationAuthorizationFailed).
Allowed entities (FROM target): Account, Attachable, Bill, BillPayment, Budget, Class, CompanyCurrency, CompanyInfo, CreditCardPayment, CreditMemo, Customer, CustomerType, Department, Deposit, Employee, Estimate, ExchangeRate, Invoice, Item, JournalCode, JournalEntry, Payment, PaymentMethod, Preferences, Purchase, PurchaseOrder, RefundReceipt, ReimburseCharge, SalesReceipt, TaxAgency, TaxClassification, TaxCode, TaxRate, Term, TimeActivity, Transfer, Vendor, VendorCredit. There is no generic Transaction, BankTransaction, Rule, or TransactionRule entity.
Matching several values (instead of OR): use IN on a single column and do it in one call — SELECT Id, DocNumber, TxnDate FROM Bill WHERE DocNumber IN ('1166542', '1166544', '1166547'). Never issue one query per value. When the values live in different columns, run one query per column and dedupe by Id — e.g. WHERE DisplayName LIKE '%Acme%' and WHERE CompanyName LIKE '%Acme%' as two calls.
Finding a transaction by reference number: if the number is the transaction's own document number, filter DocNumber IN (…). If it is written inside the memo, the Query API cannot reach it — run quickbooks_get_report with report_type='TransactionList', a date window, and columns='tx_date,txn_type,doc_num,name,memo,subt_nat_amount', then match your reference numbers against the memo column client-side. One report call covers an unlimited list of numbers.
Overdue invoices: page SELECT * FROM Invoice WHERE TxnDate >= '2024-01-01' MAXRESULTS 100, then filter DueDate and Balance client-side.
Entity directory (name → Id): after OAuth validation, Customer DisplayName/CompanyName, Vendor DisplayName, and Account Name/AcctNum are cached on the credential. Exact-name WHERE filters and simple LIKE '%name%' probes rewrite to WHERE Id = '…' before the API call — skip repeated LIKE scans when the name is already known. Pass refresh_directory=true on quickbooks_query after adding or renaming master data; responses include a directory envelope (counts + cache age).
The report tool allows up to 60 seconds per request. Wide date ranges (full-year General Ledger, multi-year P&L) can still time out — pass narrower start_date / end_date windows (month or quarter) and stitch results client-side instead of repeating the same wide range.
Report names are a fixed list and the spelling is exact: AccountList, AgedPayableDetail, AgedPayables, AgedReceivableDetail, AgedReceivables, BAS, BalanceSheet, CashFlow, ClassSales, CustomerBalance, CustomerBalanceDetail, CustomerIncome, CustomerSales, DepartmentSales, FECReport, GeneralLedger, GeneralLedgerFR, InventoryValuationDetail, InventoryValuationSummary, ItemSales, JournalReport, JournalReportFR, ProfitAndLoss, ProfitAndLossDetail, TaxSummary, TransactionList, TransactionListByCustomer, TransactionListByVendor, TransactionListWithSplits, TrialBalance, TrialBalanceFR, VendorBalance, VendorBalanceDetail, VendorExpenses.
The API names are not the report titles in the QuickBooks UI. This is the single biggest source of failed report calls, because the UI title looks like an obvious guess and every wrong guess returns the same permission error:
| Report you want | API name |
|---|---|
| Sales by Customer | CustomerSales |
| Sales by Product/Service | ItemSales |
| Sales by Class | ClassSales |
| Sales by Department / Location | DepartmentSales |
| Income by Customer | CustomerIncome |
| Account List / Chart of Accounts | AccountList |
| A/R Aging Detail | AgedReceivableDetail (singular) |
| A/P Aging Summary | AgedPayables |
| Statement of Cash Flows | CashFlow |
An unrecognized name comes back as Permission Denied Error (code 5020) rather than "not found", so a permission error on a report is usually a wrong name — not a missing role and not an expired connection. Check the name before re-authenticating; re-authenticating cannot fix it.
Payroll and budget reports do not exist in this API at any spelling (they are QuickBooks Desktop reports). Read payroll expense accounts through ProfitAndLoss or GeneralLedger instead. These are country-edition reports that only a France or Australia company can run: BAS, FECReport, GeneralLedgerFR, JournalReportFR, TaxSummary, TrialBalanceFR.
Transaction-level filters (doc_number, memo, transaction_type, name, columns, sorting, max_rows) only apply to the TransactionList family: TransactionList, TransactionListByCustomer, TransactionListByVendor, TransactionListWithSplits. Summary reports ignore them.
Reports cannot be paged. Unlike the Query path there is no row offset — a report returns its entire result set for the window you asked for. max_rows caps the rows from the top of the sort order, so it samples or gives a "top N" with sort_by; it cannot reach the rows past the cap. To cover a long period, walk it in date windows and stitch client-side.
TransactionList is also the cross-entity view for questions the Query API cannot answer in one pass — bank-feed activity, transactions by memo, or purchase-order status. Pick the columns you need with columns (for example tx_date,txn_type,doc_num,name,memo,po_status,subt_nat_amount); requesting every column makes the report markedly slower. memo and doc_number filter on an exact value, so for substring or list matching read the column back and match client-side.
Standard outputs include ProfitAndLoss, BalanceSheet, CashFlow, AgedReceivables, AgedPayables, GeneralLedger, TrialBalance, and more.
All write tools use the upsert pattern:
Item type is constrained by company settings and is close to immutable once set:
Start here
Quickbooks
Quickbooks Batch
quickbooks_batchExecute up to 30 QuickBooks operations in a single API call. Supports create, update, delete, and query operations on any entity type. Each operation runs independently — failures in one don't affect others. Best for bulk creates/updates/deletes. For exploratory reads, prefer the dedicated query tool — embedded `Query` items obey the same QBO Query Language rules (not SQL: no `OR` at all — use `IN`, boolean `true`/`false`, amount `=` only, `COUNT(*)` but no other aggregate). Large batches may take up to 45s.
Description may be truncated on the public preview.
Open in StudioIt can query company info, customers, vendors, invoices, bills, payments, accounts, items, employees, estimates, purchase orders, refund receipts, reports, PDFs, attachments, and change data.
The strongest workflows combine accounting entities with reports: overdue invoice triage, vendor spend review, monthly finance summaries, and change-data sync analysis.
© 2026 ThinkChain Inc. All rights reserved.
Capabilities
33 tools · 1 groups
8 read · 22 write · 3 other
Updates require the entity id and a fresh sync token from a recent read. That optimistic concurrency token prevents overwriting newer accounting changes.
Yes. QuickBooks sandbox and live companies use different environments and company bindings. The connected account must match the company you intend to use.
Add the MCPBundles server URL to your MCP client configuration (Claude Desktop, Cursor, VS Code, etc.). The URL format is: https://mcp.mcpbundles.com/bundle/quickbooks. Authentication is handled automatically.
QuickBooks provides 33 tools that can be called by AI agents, along with a SKILL.md that gives your AI agent domain knowledge about when and how to use them.
QuickBooks uses One-click sign in. QuickBooks requires credentials. Connect via MCPBundles and authentication is handled automatically.
MCPBundles is an independent platform built on the open Model Context Protocol standard. Not affiliated with Anthropic PBC or Claude.
Other MCP servers in this category from the directory index
Serbian Dinar Exchange Rates