QuickBooks Online

io.github.mindstone由 GitHub 帳號 mindstone 發布v0.4.3更新於 Oct 24, 2026

QuickBooks Online MCP server: invoices, bills, customers, vendors, employees, and accounts

已驗證STDIO僅桌面金融商業與電商

概覽

AI 產生的概覽

本機 MCP 伺服器,讓助理讀寫 QuickBooks Online 的客戶、廠商、發票、帳單、報價、員工、科目和財務報表

可以做什麼
用 QuickBooks 查詢語言查詢並取得單一實體,執行損益表、資產負債表、現金流量表、應收帳齡和應付帳齡等財務報表。列出、建立和更新客戶與廠商,包括將其停用。列出、建立和更新發票,把發票以電子郵件寄給客戶,並將發票下載為 PDF。列出和建立報價與帳單,列出員工和會計科目表。在助理內設定 QuickBooks Online 的 OAuth 憑證。
適用情境
適合讓助理直接處理公司的 QuickBooks Online 帳務:取得報表、查詢客戶或發票、草擬並寄送發票,或在不開啟 QuickBooks 網頁介面的情況下登錄帳單和報價。
執行需求
透過 npx 在本機執行,需要 Node.js 20+ 和 npm。需要 Intuit 開發者應用程式,以及環境變數 QUICKBOOKS_CLIENT_ID、QUICKBOOKS_CLIENT_SECRET、QUICKBOOKS_REFRESH_TOKEN 和 QUICKBOOKS_REALM_ID;QUICKBOOKS_ENVIRONMENT 選擇 sandbox 或 production,預設為 production。需要連線至 QuickBooks API 的網路存取。
安裝前請注意
寫入類工具預設啟用且沒有開關限制,建立、更新、停用記錄和寄送郵件都依賴主機的工具核准機制。寄送發票郵件會聯絡真實客戶。環境預設為 production,測試時應設為 sandbox。需要用戶端密鑰和 OAuth 更新權杖,可存取公司財務資料。來自 QuickBooks 的文字會被標示為不可信內容。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 QuickBooks Online,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

@mindstone/mcp-server-quickbooks

[npm version] [License: FSL-1.1-MIT]

QuickBooks Online MCP server for Model Context Protocol hosts. Manage invoices, bills, customers, vendors, employees, and accounts in QuickBooks Online through a standardised MCP interface.

Status

Production writes are enabled by default

Every QuickBooks-mutating tool (create_quickbooks_invoice, create_quickbooks_bill, create_quickbooks_customer, create_quickbooks_vendor, create_quickbooks_estimate, send_quickbooks_invoice_email, update_quickbooks_invoice, update_quickbooks_customer, update_quickbooks_vendor) executes its write without any opt-in: capability is enabled by default and the host's tool-approval layer is the gate. Read-only tools (list_*, get_*, query_*, download_*, configure_quickbooks) are unaffected.

Versions 0.3.0–0.4.0 gated these writes behind a QB_ALLOW_PROD_WRITES=1 environment variable. That gate has been removed; the variable is no longer read and can be deleted from host configurations.

Requirements

  • Node.js 20+
  • npm

One-click install

[Add to Cursor] [Add to VS Code] [Add to VS Code Insiders]

After clicking the button, your host will prompt you to fill: QUICKBOOKS_CLIENT_ID, QUICKBOOKS_CLIENT_SECRET, QUICKBOOKS_REFRESH_TOKEN, QUICKBOOKS_REALM_ID, QUICKBOOKS_ENVIRONMENT.

Manual config for Claude Desktop / Claude Code / Goose / Continue.dev (QuickBooks Online)
json
{  "mcpServers": {    "QuickBooks Online": {      "command": "npx",      "args": [        "-y",        "@mindstone/mcp-server-quickbooks"      ],      "env": {        "QUICKBOOKS_CLIENT_ID": "",        "QUICKBOOKS_CLIENT_SECRET": "",        "QUICKBOOKS_REFRESH_TOKEN": "",        "QUICKBOOKS_REALM_ID": "",        "QUICKBOOKS_ENVIRONMENT": "production"      }    }  }}

Quick Start

Install & build

bash
cd <path-to-repo>/connectors/quickbooksnpm installnpm run build

npx (once published)

bash
npx -y @mindstone/mcp-server-quickbooks

Local

bash
node dist/index.js

Configuration

Environment variables

  • QUICKBOOKS_CLIENT_ID — Intuit Developer app client ID
  • QUICKBOOKS_CLIENT_SECRET — Intuit Developer app client secret
  • QUICKBOOKS_REFRESH_TOKEN — OAuth 2.0 refresh token
  • QUICKBOOKS_REALM_ID — QuickBooks company (realm) ID
  • QUICKBOOKS_ENVIRONMENT — sandbox or production (default: production)
  • MCP_HOST_BRIDGE_STATE — optional path to a host bridge state file used for credential management
  • MINDSTONE_REBEL_BRIDGE_STATE — backwards-compatible alias for MCP_HOST_BRIDGE_STATE

Host configuration examples

Claude Desktop / Cursor

json
{  "mcpServers": {    "QuickBooks": {      "command": "npx",      "args": ["-y", "@mindstone/mcp-server-quickbooks"],      "env": {        "QUICKBOOKS_CLIENT_ID": "your-client-id",        "QUICKBOOKS_CLIENT_SECRET": "your-client-secret",        "QUICKBOOKS_REFRESH_TOKEN": "your-refresh-token",        "QUICKBOOKS_REALM_ID": "your-realm-id"      }    }  }}

Local development (no npm publish needed)

json
{  "mcpServers": {    "QuickBooks": {      "command": "node",      "args": ["<path-to-repo>/connectors/quickbooks/dist/index.js"],      "env": {        "QUICKBOOKS_CLIENT_ID": "your-client-id",        "QUICKBOOKS_CLIENT_SECRET": "your-client-secret",        "QUICKBOOKS_REFRESH_TOKEN": "your-refresh-token",        "QUICKBOOKS_REALM_ID": "your-realm-id"      }    }  }}

Tools (21)

Configuration

  • configure_quickbooks — Configure QuickBooks Online OAuth credentials

Query

  • query_quickbooks — Run a QuickBooks query using QuickBooks Query Language
  • get_quickbooks_entity — Get a single entity by type and ID

Reports

  • get_quickbooks_report — Run a financial report (ProfitAndLoss, BalanceSheet, CashFlow, AgedReceivables, AgedPayables)

Customers

  • list_quickbooks_customers — List customers
  • create_quickbooks_customer — Create a new customer
  • update_quickbooks_customer — Sparse-update a customer (deactivate with active: false)

Vendors

  • list_quickbooks_vendors — List vendors
  • create_quickbooks_vendor — Create a new vendor
  • update_quickbooks_vendor — Sparse-update a vendor (deactivate with active: false)

Invoices

  • list_quickbooks_invoices — List invoices
  • create_quickbooks_invoice — Create a new invoice
  • update_quickbooks_invoice — Sparse-update invoice header fields (dueDate, memo, privateNote)
  • send_quickbooks_invoice_email — Email an invoice to its customer
  • download_quickbooks_invoice_pdf — Download an invoice as a PDF (saved to the system temp directory)

Estimates

  • list_quickbooks_estimates — List estimates (quotes)
  • create_quickbooks_estimate — Create a new estimate

Bills

  • list_quickbooks_bills — List bills (accounts payable)
  • create_quickbooks_bill — Create a new bill

Employees

  • list_quickbooks_employees — List employees

Accounts

  • list_quickbooks_accounts — List chart of accounts

Untrusted content envelopes

Text authored inside QuickBooks (customer/vendor display names, memos, line descriptions, report cells) is attacker-influenceable, so the connector wraps it in <untrusted-content source="quickbooks:…"> envelopes before returning it to the model. Typed entity payloads are sanitized deny-by-default: every string is enveloped — including strings inside arrays, which have no key context — unless its key is a narrow structural predicate (IDs, SyncToken, dates/timestamps, enums) and its value passes a shape guard. query_quickbooks, get_quickbooks_entity, and reports envelope every string key and value wholesale. Structural values such as Id, SyncToken, dates, and amounts are left untouched so they stay usable as inputs to follow-up calls.

Licence

FSL-1.1-MIT — Functional Source License, Version 1.1, with MIT future licence. The software converts to MIT licence on 2030-04-08.

來源:connectors/quickbooks/README.md,提交 0396f0b

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

2
  1. v0.4.3最新Oct 14, 2026
  2. v0.4.2Sep 16, 2026

評分

已滿足適用檢查項的 40%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分

    請在儲存庫或註冊中心條目中宣告授權條款。