QuickBooks Online MCP Server

QuickBooks Online MCP Server

Enables interaction with the QuickBooks Online Accounting API to manage customers, invoices, expenses, and payments through MCP-compatible clients. It supports comprehensive financial workflows and the generation of reports like Profit and Loss or Balance Sheets.

Category
Visit Server

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

Deploy to DO

Deploy to Cloudflare Workers

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 token
  • X-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 customers
  • qbo_customers_get — Get customer by ID
  • qbo_customers_create — Create a new customer
  • qbo_customers_search — Search customers by name or other criteria

Invoices

  • qbo_invoices_list — List invoices
  • qbo_invoices_get — Get invoice by ID
  • qbo_invoices_create — Create a new invoice
  • qbo_invoices_send — Send an invoice via email

Expenses

  • qbo_expenses_list_purchases — List purchase transactions
  • qbo_expenses_list_bills — List bills
  • qbo_expenses_get_purchase — Get purchase by ID
  • qbo_expenses_get_bill — Get bill by ID

Payments

  • qbo_payments_list — List payments
  • qbo_payments_get — Get payment by ID
  • qbo_payments_create — Create a new payment

Reports

  • qbo_reports_profit_and_loss — Generate Profit and Loss report
  • qbo_reports_balance_sheet — Generate Balance Sheet report
  • qbo_reports_aged_receivables — Generate Aged Receivables report
  • qbo_reports_aged_payables — Generate Aged Payables report
  • qbo_reports_customer_sales — Generate Customer Sales report

License

Apache-2.0

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured