QuickBooks Online MCP server
QuickBooks Online MCP server: invoices, bills, customers, vendors, employees, and accounts
14 stars98 downloads/wk
Reviews
Write oneNobody has reviewed QuickBooks Online yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
QuickBooks Online tools (21, 11 write)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
configure_quickbooksConfigure QuickBooks Online credentials. Call this when the user provides their Intuit Developer app credentials. WORKFLOW: 1. Go to https://developer.intuit.com/ and create an app (or use existing) 2. Get the Client ID and Client Secret from the app's Keys & credentials page 3. Add http://localhost:8000/callback as a Redirect URI 4. Use the OAuth Playground or your app's auth flow to obtain a Ref
create_quickbooks_billwrite actionCreate a new bill (accounts payable) in QuickBooks Online. Example: { "vendorId": "123", "lines": [{ "description": "Office supplies", "amount": 250, "accountId": "456" }] } WORKFLOW: 1. Use list_quickbooks_vendors to find the vendor ID 2. Use list_quickbooks_accounts to find expense account IDs 3. Create with line items
create_quickbooks_customerwrite actionCreate a new customer in QuickBooks Online. Example: { "displayName": "Acme Corp" } Example: { "displayName": "Jane Smith", "email": "jane@smith.com", "phone": "555-1234" }
create_quickbooks_estimatewrite actionCreate a new estimate (quote) in QuickBooks Online. Example: { "customerId": "123", "lines": [{ "description": "Consulting services", "amount": 1500 }] } WORKFLOW: 1. Use list_quickbooks_customers to find the customer ID 2. Create with line items (description + amount required) 3. Optionally set expirationDate and memo COMMON MISTAKES: - customerId is required (use list_quickbooks_customers to fin
create_quickbooks_invoicewrite actionCreate a new invoice in QuickBooks Online. Example: { "customerId": "123", "lines": [{ "description": "Consulting services", "amount": 1500 }] } WORKFLOW: 1. Use list_quickbooks_customers to find the customer ID 2. Create with line items (description + amount required) 3. Optionally set dueDate and memo COMMON MISTAKES: - customerId is required (use list_quickbooks_customers to find it) - Each lin
create_quickbooks_vendorwrite actionCreate a new vendor in QuickBooks Online. Example: { "displayName": "Office Depot" } Example: { "displayName": "AWS", "email": "billing@aws.amazon.com", "companyName": "Amazon Web Services" }
download_quickbooks_invoice_pdfDownload an invoice as a PDF file from QuickBooks Online. Returns the local file path where the PDF has been saved (system temp directory). Example: { "invoiceId": "123" } WORKFLOW: 1. Use list_quickbooks_invoices to find the invoice ID 2. Download the PDF, then attach or share the saved file
get_quickbooks_entityGet a single QuickBooks entity by type and ID. Example: { "entityType": "Invoice", "entityId": "123" } Supported entity types: Account, Bill, BillPayment, Customer, Employee, Estimate, Invoice, Item, JournalEntry, Purchase, Vendor
get_quickbooks_reportwrite actionRun a financial report from QuickBooks Online. Reports available: ProfitAndLoss, BalanceSheet, CashFlow, AgedReceivables, AgedPayables. Example: { "report": "ProfitAndLoss", "startDate": "2026-01-01", "endDate": "2026-03-31" } Example: { "report": "AgedReceivables", "asOfDate": "2026-03-31" } WORKFLOW: 1. ProfitAndLoss / BalanceSheet / CashFlow cover a date range (startDate + endDate) 2. AgedRecei
list_quickbooks_accountsList chart of accounts from QuickBooks Online. Returns: Id, Name, AccountType, AccountSubType, CurrentBalance, Active. Example: {} Example: { "accountType": "Expense" } Account types: Bank, Accounts Receivable, Other Current Asset, Fixed Asset, Other Asset, Accounts Payable, Credit Card, Other Current Liability, Long Term Liability, Equity, Income, Cost of Goods Sold, Expense, Other Income, Other
list_quickbooks_billsList bills (accounts payable) from QuickBooks Online. Returns: Id, DocNumber, TxnDate, DueDate, Balance, TotalAmt, VendorRef. Example: {} Example: { "vendorId": "123" }
list_quickbooks_customersList customers from QuickBooks Online. Returns: Id, DisplayName, PrimaryEmailAddr, PrimaryPhone, Balance, Active. Example: {} Example: { "active": true } Example: { "searchTerm": "Smith" }
list_quickbooks_employeesList employees from QuickBooks Online. Returns: Id, DisplayName, PrimaryEmailAddr, PrimaryPhone, Active. Example: {}
list_quickbooks_estimatesList estimates (quotes) from QuickBooks Online. Returns: Id, DocNumber, TxnDate, ExpirationDate, TotalAmt, TxnStatus, CustomerRef, Line items. Example: {} Example: { "status": "Pending" } Example: { "customerId": "123" } WORKFLOW: 1. Call with no args to see recent estimates 2. Filter by status (Pending/Accepted/Closed/Rejected) or customer 3. Use get_quickbooks_entity with entityType "Estimate" f
list_quickbooks_invoicesList invoices from QuickBooks Online. Returns: Id, DocNumber, TxnDate, DueDate, Balance, TotalAmt, CustomerRef, Line items. Example: {} Example: { "status": "unpaid" } Example: { "customerId": "123" } WORKFLOW: 1. Call with no args to see recent invoices 2. Filter by status (unpaid/paid/overdue) or customer 3. Use get_quickbooks_entity for full invoice details
list_quickbooks_vendorsList vendors from QuickBooks Online. Returns: Id, DisplayName, PrimaryEmailAddr, PrimaryPhone, Balance, Active. Example: {} Example: { "searchTerm": "Office" }
query_quickbookswrite actionRun a QuickBooks query using the QuickBooks Query Language. Returns matching entities. QuickBooks uses a SQL-like query language. Example: { "query": "SELECT * FROM Invoice WHERE Balance > '0' ORDERBY DueDate" } Example: { "query": "SELECT * FROM Customer WHERE Active = true" } WORKFLOW: 1. Use this for flexible searches across any entity type 2. Entity names are PascalCase: Invoice, Customer, Ven
send_quickbooks_invoice_emailwrite actionEmail an invoice to its customer via QuickBooks Online. Example: { "invoiceId": "123" } Example: { "invoiceId": "123", "sendTo": "billing@example.com" } WORKFLOW: 1. Use list_quickbooks_invoices to find the invoice ID 2. Send to the invoice's billing email, or override with sendTo Note: this emails a real customer.
update_quickbooks_customerwrite actionSparse-update an existing customer in QuickBooks Online. Example: { "customerId": "123", "email": "ap@example.com" } Example: { "customerId": "123", "active": false } If syncToken is omitted the customer is read first to obtain the current one (QuickBooks rejects stale SyncTokens). Setting active to false deactivates the customer.
update_quickbooks_invoicewrite actionSparse-update an existing invoice in QuickBooks Online (header fields only — line items cannot be sparse-updated). Example: { "invoiceId": "123", "dueDate": "2026-04-01" } Example: { "invoiceId": "123", "memo": "Net 30", "privateNote": "Chased 2026-03-01" } If syncToken is omitted the invoice is read first to obtain the current one (QuickBooks rejects stale SyncTokens).
update_quickbooks_vendorwrite actionSparse-update an existing vendor in QuickBooks Online. Example: { "vendorId": "123", "email": "ap@example.com" } Example: { "vendorId": "123", "active": false } If syncToken is omitted the vendor is read first to obtain the current one (QuickBooks rejects stale SyncTokens). Setting active to false deactivates the vendor.
Public scan report
scanner v0.1.10 · 2026-11-04 · same rubric, same numbers if you re-run it
- Code scan41 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitystatic API keys via environment variables6/15
- Maintenancelast push 0 days ago15/15
- Maintainer identityregistry namespace matches repository owner; GitHub account older than a year9/10
How QuickBooks Online compares
Against every graded Finance MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 85/100
- higher than 82% of 1,765 Finance servers
- Tools
- 21
- the typical Finance server has 9
- Tools that change things
- 52%
- typical: 0%. Fewer write tools means less an agent can break
- GitHub stars
- 14
- more than 90% of 957 Finance servers
- Downloads a week
- 98
- more than 58% of 505 Finance servers with a package
What its tools let an agent do: 10 read · 5 create · 5 change · 1 send or post
Release history: 2 versions in the registry since 2026-08-10, latest 2026-10-13, typically one every 65 days.
Install QuickBooks Online in Claude Code, Cursor or VS Code
Runs npx -y @mindstone/mcp-server-quickbooks on your machine. Read the scan report first; the gateway never runs local packages.
claude mcp add mcp-server-quickbooks -- npx -y @mindstone/mcp-server-quickbooks
What the publisher says
From the QuickBooks Online repository's README, as published. We do not edit it. Read it on GitHub
mcp-servers
Source-available MCP servers by Mindstone. Works with any MCP host — Claude Desktop, Cursor, Rebel, and others.
Browse all 35 connectors with their version, auth model, and tool count at the catalogue site (regenerated from each connector's STATUS.json on every push).
Connectors
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
QuickBooks Online: common questions
- Is QuickBooks Online MCP server safe?
- Yes, by our scan: it is graded A (85/100). Read the QuickBooks Online safety report
- How do I install QuickBooks Online?
- It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
- Does QuickBooks Online need an API key?
- Yes. The registry entry asks for
QUICKBOOKS_CLIENT_SECRET,QUICKBOOKS_REFRESH_TOKEN. - Is QuickBooks Online maintained?
- The last commit was 11 days ago (2026-11-04). The latest release is v0.4.3.
- What can I use instead of QuickBooks Online?
- Servers from other publishers that do the same job: Quickbooks MCP server, Quickbooks MCP server and T-Bank MCP server. Compare all QuickBooks Online alternatives.
- How does QuickBooks Online compare with other Finance MCP servers?
- safety score 85/100 (higher than 82% of 1,765 Finance servers); tools 21 (the typical Finance server has 9); tools that change things 52% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.
Alternatives to QuickBooks Online
Same job from other publishers: the closest match first, then the best rated.
- QuickbooksMCP server for QuickBooks Online (Intuit) — customers, invoices, payments, items, accounts, P&Lnot reviewedGrowingB
- QuickbooksMCP server for QuickBooks Online API integrationnot reviewedGrowingB
- T-Bank MCPT-Bank (Т-Банк) mobile banking: accounts, cards, transfers, bill pay, grocery, tickets, travelnot reviewedGrowingA
- BexioSwiss accounting integration for Bexio. 315 tools: invoices, contacts, projects, account balancesnot reviewedGrowingA
BankMCP™Read-only MCP server for your own bank accounts via Enable Banking. Self-hosted, one user.not reviewedEstablishedA