home / mcp / quickbooks mcp server

QuickBooks MCP Server

Provides access to QuickBooks Online data via MCP, enabling queries and financial reports through natural language.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "laf-rge-quickbooks-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "quickbooks-mcp"
      ],
      "env": {
        "AWS_REGION": "us-east-2",
        "QBO_SANDBOX": "true",
        "QBO_CLIENT_ID": "YOUR_CLIENT_ID",
        "QBO_SECRET_NAME": "prod/qbo",
        "QBO_CLIENT_SECRET": "YOUR_CLIENT_SECRET",
        "QBO_CREDENTIAL_FILE": "~/.quickbooks-mcp/credentials.json",
        "QBO_CREDENTIAL_MODE": "local",
        "QBO_COMPANY_ID_PARAM": "/prod/qbo/company_id"
      }
    }
  }
}

You can run a production-ready MCP server that gives Claude access to QuickBooks Online data, enabling natural language queries for customers, invoices, accounts, transactions, and more. This guide shows practical ways to install, configure, and run the server in different environments so you can choose the setup that fits your workflow.

How to use

Start by choosing a run mode or environment that matches your needs: local development with a simple npm-based setup, a full development checkout for customization, or a production-ready AWS-backed deployment with shared credentials. Once the server is running, you connect to it using an MCP client integration configured to use the provided command and arguments. You can then issue natural language requests like querying customers, pulling financial reports, or examining account transactions. The server handles authentication, token refresh, and persistence so you can focus on building conversational capabilities around your QuickBooks data.

Additional usage notes

The server provides a consistent interface for performing common QuickBooks operations through Tools like query, list_accounts, and get_profit_loss. It manages OAuth tokens automatically and persists credentials to your chosen storage (local file or AWS Secrets Manager). If you run into authentication issues, re-authenticating with the provided tool will refresh tokens and restore access.

Available tools

qbo_authenticate

Set up OAuth credentials for local mode to enable initial authentication and token storage.

get_company_info

Retrieve information about the connected QuickBooks company.

query

Run SQL-like queries against QuickBooks data to fetch customers, invoices, transactions, and more.

list_accounts

List the chart of accounts for the connected company.

get_profit_loss

Generate a Profit & Loss financial report.

get_balance_sheet

Generate a Balance Sheet report.

get_trial_balance

Generate a Trial Balance report.

query_account_transactions

Query transactions for a specific account.

create_journal_entry

Create a new journal entry in QuickBooks.

get_journal_entry

Fetch a journal entry by its ID.

edit_journal_entry

Modify an existing journal entry.

get_bill

Fetch a bill by its ID.

edit_bill

Modify an existing bill.

get_expense

Fetch an expense by its ID.

edit_expense

Modify an existing expense.

get_sales_receipt

Fetch a sales receipt by its ID.

edit_sales_receipt

Modify an existing sales receipt.

get_deposit

Fetch a deposit by its ID.

edit_deposit

Modify an existing deposit.