Connector guide8-minute read17 MCP tools7 languages

Connect QuickBooks to Microsoft Copilot via MCP

Let your AI work with QuickBooks Online: query customers, vendors, items, invoices, bills, payments and accounts, read single records, run Profit and Loss, Balance Sheet and aged receivables and payables reports, and create customers and invoices. Intuit OAuth sign-in, sandbox or production company.

HCBy HelpCode teamUpdated 8 min read Open-source on GitHub

No credit card · 7-day trial · Self-host alternative available

QuickBooks Online

QuickBooks Online

Let your AI work with QuickBooks Online: query customers, vendors, items, invoices, bills, payments and accounts, read single records, run Profit and Loss, Balance Sheet and aged receivables and payables reports, and create customers and invoices. Intuit OAuth sign-in, sandbox or production company.

tools

17

Region

INTL

Category

Accounting

Authentication

OAuth 2.0

Required env vars

QBO_CLIENT_IDQBO_CLIENT_SECRETQBO_REALM_IDQBO_API_URL
Install in one click on Cloud

7-day free trial · No credit card

  • 7-day free trial
    No credit card required
  • GDPR & SOC 2 ready
    EU data residency, audit logs
  • Open-source on GitHub
    Open source · AGPL-3.0
  • Works with ChatGPT, Claude, Gemini
    Any MCP-compatible client

Summary

Let your AI work with QuickBooks Online: query customers, vendors, items, invoices, bills, payments and accounts, read single records, run Profit and Loss, Balance Sheet and aged receivables and payables reports, and create customers and invoices. Intuit OAuth sign-in, sandbox or production company.

Guided setup

Connect QuickBooks Online to Microsoft Copilot in 2 minutes

Start a free trial on AnythingMCP Cloud, connect QuickBooks Online in the guided setup, then add your MCP URL to Microsoft Copilot. No code and no server to run.

No credit card · 7-day trial · Self-host alternative available

Try asking

Example prompts for QuickBooks Online

Click any prompt to copy it. Paste into Claude, ChatGPT, Cursor, Gemini, Copilot or OpenClaw to run it against this connector.

QuickBooks Online · live via MCP
Share
Opus 4.7

Claude is AI and can make mistakes. Please double-check responses.

💡 No install? Use cloud.anythingmcp.com directly. Sign in, click Connectors → QuickBooks Online, paste your credentials, mint an MCP API key and you're done. No Docker, no git clone, no local server.

QuickBooks Online + Microsoft Copilot

Let your AI work with QuickBooks Online: query customers, vendors, items, invoices, bills, payments and accounts, read single records, run Profit and Loss, Balance Sheet and aged receivables and payables reports, and create customers and invoices. Intuit OAuth sign-in, sandbox or production company.

Prerequisites

See the full setup instructions baked into the connector (visible in the in-app store when you select the connector). The required environment variables for this connector are:

QBO_CLIENT_ID, QBO_CLIENT_SECRET, QBO_REALM_ID, QBO_API_URL

Step 1 — Get credentials

  1. Sign in at developer.intuit.com, open My Hub → App dashboard → Create an app, choose QuickBooks Online and Payments and select the scope com.intuit.quickbooks.accounting.
  2. Under Settings → Redirect URIs, add https://cloud.anythingmcp.com/api/mcp-oauth/callback for Development and, later, for Production. If you host AnythingMCP yourself, enter https://your-anythingmcp-host/api/mcp-oauth/callback instead. The URI must match exactly.
  3. Copy the Client ID and Client Secret from Keys & credentials into QBO_CLIENT_ID and QBO_CLIENT_SECRET. Development keys work only with sandbox companies. Production keys work with real companies; Intuit grants them after a short app assessment (a questionnaire on the app dashboard).
  4. Find the company's realm id (Company ID): in QuickBooks, click the gear icon, open Account and settings → Billing & subscription and copy the Company ID without spaces. For a sandbox company, it is on the developer site under Sandboxes. Paste it into QBO_REALM_ID.
  5. Set QBO_API_URL to https://quickbooks.api.intuit.com for a real company or to https://sandbox-quickbooks.api.intuit.com for a sandbox company. It must match the keys: development keys with the sandbox URL, production keys with the production URL.
  6. Install the connector, click Authorize with Provider on the connector page, sign in to Intuit and connect the same company.
  7. Start with qbo_get_company_info and check the company name before the AI reads or writes anything. One connector works with one company; install it again for a second company.

Staying signed in: access tokens last an hour and are renewed automatically. A refresh token that is not used for 100 days expires, and every authorization ends after 5 years at the latest. After that, or if the app is disconnected in QuickBooks, click Authorize with Provider again. Don't use the same Intuit app in another tool at the same time: Intuit replaces the refresh token about once a day, and one of the two would be left with an old one.

Permissions and read-only setup: the scope com.intuit.quickbooks.accounting gives read and write access to the accounting data, as far as the role of the QuickBooks user who signs in allows. Intuit has no read-only accounting scope. For a read-only setup, sign in with a user whose role cannot create transactions, and disable qbo_create_customer, qbo_update_customer and qbo_create_invoice.

Switched off at install: qbo_send_invoice, which emails an invoice to the customer in your company's name, and qbo_delete_invoice. Turn them on only if the AI should send or delete invoices.

Invoices are booked at once: QuickBooks has no draft invoices. An invoice the AI creates raises the customer's balance and shows up in reports right away, but it is not emailed. Customers cannot be deleted, only made inactive.

Customer names: a customer's display name must be unique across customers, vendors and employees, and it cannot contain a colon (QuickBooks uses colons to separate sub-customers), a tab or a line break.

Common errors: 401 AuthenticationFailed (3200) means the authorization expired or was revoked, or QBO_API_URL does not match the keys: check the URL, then click Authorize with Provider again. 403 ApplicationAuthorizationFailed (3100) means the realm id belongs to a company this sign-in was not granted for, or the user's role lacks access. 400 QueryParserError means a syntax error in a query. 6240 Duplicate Name Exists Error means the display name is taken; 2040 Invalid String means a name contains a colon, a tab or a line break; 5010 Stale Object Error means the record changed in the meantime and has to be read again. 429 means the limit of 500 requests per minute was reached: wait a minute.

The connector does not handle invoice PDFs and attachments, recording payments, bank feeds, payroll or QuickBooks Desktop, and it deletes nothing except invoices.

Step 2 — Install the adapter

curl -fsSL https://raw.githubusercontent.com/HelpCode-ai/anythingmcp/main/docker-compose.quickstart.yml -o docker-compose.yml
printf 'JWT_SECRET=%s\nENCRYPTION_KEY=%s\n' "$(openssl rand -hex 32)" "$(openssl rand -hex 32)" > .env
docker compose up -d

Step 3 — Add the connector in Microsoft Copilot

Your server URL: in AnythingMCP, open MCP Servers → the server this connector is on, and copy its URL (https://cloud.anythingmcp.com/mcp/…). Use it wherever this guide shows YOUR_SERVER_ID.

Microsoft Copilot uses MCP servers through agents built in Copilot Studio: you add AnythingMCP to an agent as a tool, then publish the agent to Microsoft 365 Copilot and Teams. Copilot Studio connects from Microsoft's cloud over Streamable HTTP, which AnythingMCP supports.

  1. In Copilot Studio, open your agent (or create one), go to Tools and choose Add a tool → New tool → Model Context Protocol.
  2. Enter a Server name (for example AnythingMCP), a Server description that says what the connector does, and the Server URL https://cloud.anythingmcp.com/mcp/YOUR_SERVER_ID. Copilot Studio uses the description to decide when to call the server.
  3. Under authentication, choose API key, set Type to Header and the header name to X-API-Key, then select Create.
  4. In Add tool, choose Create a new connection, paste an MCP API key from AnythingMCP (MCP Servers → your server → API keys) and select Add to agent.
  5. Try it in the agent's Test pane: ask for something that needs the QuickBooks Online tools.
  6. Select Publish, then Channels → Microsoft 365 and Microsoft Teams, keep Make agent available in Microsoft Copilot selected and choose Add channel. See agent in Teams installs it for you; in Microsoft 365 Copilot, type @ and pick the agent.

Prefer per-user sign-in? Choose OAuth 2.0 → Dynamic discovery instead of an API key: each user then signs in to AnythingMCP the first time the agent calls it.

Self-hosting? Use your instance's public HTTPS address instead of https://cloud.anythingmcp.com. Copilot Studio connects from Microsoft's cloud, so localhost does not work.

Available tools

ToolWhat it does
qbo_get_company_infoRead the connected company: CompanyName, LegalName, addresses, email, phone, Country, FiscalYearStartMonth, the company's start date and…
qbo_queryRun a read-only QuickBooks query (SQL-like, one entity, no joins): e.g. "select * from Invoice where Balance > '0' orderby DueDate…
qbo_get_customerRead one customer by its Id (the numeric Id from qbo_query, not a document number or name), with contact details, addresses, Balance and…
qbo_get_invoiceRead one invoice by its Id (the numeric Id from qbo_query, not a document number or name), with its lines, totals, Balance, due date…
qbo_get_itemRead one item (product or service) by its Id (the numeric Id from qbo_query, not a document number or name), with prices, income and…
qbo_get_vendorRead one vendor by its Id (the numeric Id from qbo_query, not a document number or name), with contact details, addresses and Balance
qbo_get_billRead one bill (a vendor's invoice to the company) by its Id (the numeric Id from qbo_query, not a document number or name), with its lines…
qbo_get_paymentRead one customer payment by its Id (the numeric Id from qbo_query, not a document number or name), with the invoices it was applied to…
qbo_create_customerCreate a customer
qbo_update_customerChange some fields of a customer (sparse update); fields not named keep their values
qbo_create_invoiceCreate an invoice for a customer
qbo_send_invoiceEmail an invoice to the customer as a PDF from QuickBooks, to the invoice's BillEmail or to send_to (which also becomes the invoice's…
qbo_delete_invoiceDelete an invoice permanently (it disappears from reports; QuickBooks keeps it in the audit log)
qbo_report_profit_and_lossProfit and Loss report (income, cost of goods sold, expenses, net income) for a period, as QuickBooks' report JSON: Header, Columns and…
qbo_report_balance_sheetBalance Sheet report (assets, liabilities, equity) as of the end of a period, as QuickBooks' report JSON with nested Rows
qbo_report_aged_receivablesAged Receivables summary: what each customer owes, split into Current, 1-30, 31-60, 61-90 and 91+ days past due, as of report_date (default…
qbo_report_aged_payablesAged Payables summary: what the company owes each vendor, split into Current, 1-30, 31-60, 61-90 and 91+ days past due, as of report_date…

Example prompts

  • "Which invoices are overdue, and how much does each customer owe?"
  • "Show me the Profit and Loss for this fiscal year, month by month."
  • "Create an invoice for Acme Ltd: 10 hours of the Consulting service, due in 30 days."
  • "Which vendor bills are more than 60 days past due?"

FAQ

Which Copilot is this for? Microsoft 365 Copilot at work, through agents built in Copilot Studio. The Microsoft Copilot app for personal accounts has no option to add your own MCP server.

What do I need? A work account with access to Copilot Studio (a license or a trial) to build the agent. People who use it in Microsoft 365 Copilot or Teams need access to the agent: share it with them, or ask an admin to publish it to the organization. If your organization applies data policies to Power Platform connectors, they cover MCP servers too.

The agent doesn't call the tools. Check that the header name is exactly X-API-Key and that the key belongs to the same MCP server as the URL, and make the server description specific: Copilot Studio uses it to decide when to call the server. Publish the agent again after each change; in an open chat, type "start over" to get the new version.

Next steps

Was this guide helpful?

Connect QuickBooks Online to Microsoft Copilot in 2 minutes

Start a free trial on AnythingMCP Cloud, connect QuickBooks Online in the guided setup, then add your MCP URL to Microsoft Copilot. No code and no server to run.

Related guides

Connectors

Connect QuickBooks to ChatGPT via MCP

Let your AI work with QuickBooks Online: query customers, vendors, items, invoices, bills, payments and accounts, read single records, run Profit and Loss, Balance Sheet and aged receivables and payables reports, and create customers and invoices. Intuit OAuth sign-in, sandbox or production company.

Connectors

Connect QuickBooks to Claude via MCP

Let your AI work with QuickBooks Online: query customers, vendors, items, invoices, bills, payments and accounts, read single records, run Profit and Loss, Balance Sheet and aged receivables and payables reports, and create customers and invoices. Intuit OAuth sign-in, sandbox or production company.

Connectors

Connect QuickBooks to Cursor via MCP

Let your AI work with QuickBooks Online: query customers, vendors, items, invoices, bills, payments and accounts, read single records, run Profit and Loss, Balance Sheet and aged receivables and payables reports, and create customers and invoices. Intuit OAuth sign-in, sandbox or production company.

Connectors

Connect QuickBooks to Gemini CLI via MCP

Let your AI work with QuickBooks Online: query customers, vendors, items, invoices, bills, payments and accounts, read single records, run Profit and Loss, Balance Sheet and aged receivables and payables reports, and create customers and invoices. Intuit OAuth sign-in, sandbox or production company.

Connectors

Connect QuickBooks to Meta Muse via MCP

Let your AI work with QuickBooks Online: query customers, vendors, items, invoices, bills, payments and accounts, read single records, run Profit and Loss, Balance Sheet and aged receivables and payables reports, and create customers and invoices. Intuit OAuth sign-in, sandbox or production company.

Connectors

QuickBooks MCP Server: Invoices and Reports

Let your AI work with QuickBooks Online: query customers, vendors, items, invoices, bills, payments and accounts, read single records, run Profit and Loss, Balance Sheet and aged receivables and payables reports, and create customers and invoices. Intuit OAuth sign-in, sandbox or production company.