About QuickBooks Online
QuickBooks Online is an MCP server in the Finance category: mCP server for QuickBooks Online — accounts, customers, invoices, bills, and reports.
Install
git clone https://github.com/wyre-technology/qbo-mcpThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Ask AI
Ask AI about QuickBooks Online
Powered by Claude · Grounded in docs
Security checks
- ✓README presentThe repository ships documentation.
5 checks have not been run yet.
README
QuickBooks Online MCP Server
Model Context Protocol (MCP) server for the QuickBooks Online Accounting API. Enables Claude and other MCP-compatible clients to manage QBO customers, invoices, expenses, payments, and reports.
One-Click Deployment
Quick Start
Prerequisites
- Node.js >= 20
- QuickBooks Online OAuth2 app credentials (requires an Intuit developer account)
Install and Build
npm install
npm run build
Run (stdio mode)
QBO_ACCESS_TOKEN=your-access-token QBO_REALM_ID=your-realm-id npm start
Run (HTTP mode)
MCP_TRANSPORT=http QBO_ACCESS_TOKEN=your-access-token QBO_REALM_ID=your-realm-id npm start
The server listens on http://0.0.0.0:8080/mcp by default.
Docker
docker build -t qbo-mcp .
docker run -p 8080:8080 \
-e MCP_TRANSPORT=http \
-e QBO_ACCESS_TOKEN=your-access-token \
-e QBO_REALM_ID=your-realm-id \
qbo-mcp
Environment Variables
| Variable | Required | Default | Description |
|---|---|---|---|
QBO_ACCESS_TOKEN |
Yes (env mode) | — | QuickBooks Online OAuth2 access token |
QBO_REALM_ID |
Yes (env mode) | — | QuickBooks Online company (realm) ID |
MCP_TRANSPORT |
No | stdio |
Transport type: stdio or http |
MCP_HTTP_PORT |
No | 8080 |
HTTP server port |
MCP_HTTP_HOST |
No | 0.0.0.0 |
HTTP server bind address |
AUTH_MODE |
No | env |
Auth mode: env or gateway |
Gateway Mode
When AUTH_MODE=gateway, credentials are passed per-request via HTTP headers instead of environment variables:
X-Qbo-Access-Token— OAuth2 access tokenX-Qbo-Realm-Id— QuickBooks Online company (realm) ID
This allows a gateway/proxy to manage multi-tenant credentials.
Available Tools
Tools are organized into domains. Use qbo_navigate to select a domain, then use the domain-specific tools.
Navigation
qbo_navigate— Select a domain (customers, invoices, expenses, payments, reports)qbo_back— Return to domain selection
Customers
qbo_customers_list— List customersqbo_customers_get— Get customer by IDqbo_customers_create— Create a new customerqbo_customers_search— Search customers by name or other criteria
Invoices
qbo_invoices_list— List invoicesqbo_invoices_get— Get invoice by IDqbo_invoices_create— Create a new invoiceqbo_invoices_send— Send an invoice via email
Expenses
qbo_expenses_list_purchases— List purchase transactionsqbo_expenses_list_bills— List billsqbo_expenses_get_purchase— Get purchase by IDqbo_expenses_get_bill— Get bill by ID
Payments
qbo_payments_list— List paymentsqbo_payments_get— Get payment by IDqbo_payments_create— Create a new payment
Reports
qbo_reports_profit_and_loss— Generate Profit and Loss reportqbo_reports_balance_sheet— Generate Balance Sheet reportqbo_reports_aged_receivables— Generate Aged Receivables reportqbo_reports_aged_payables— Generate Aged Payables reportqbo_reports_customer_sales— Generate Customer Sales report
License
Apache-2.0
README copy captured when this server was indexed; it may lag the repository. The original is authoritative.