Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

QuickBooks Online

NPM · @MINDSTONE/MCP-SERVER-QUICKBOOKS · SCANNED AUG 7

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

+66 this week 71 Trust /100
Trust breakdown (6 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score →

Supply Chain Security98
  • No malware found by supply-chain analysis.Pass
  • No known CVEs affecting this package version or its production dependencies.Pass
  • No install/post-install scripts declared.Pass
  • 30 of 96 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency32
Schema Quality & AI Usability72
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 1742 tokens (~134/item across 13 items; 13 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management37
  • Stability observed for 11 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.

npm · @mindstone/mcp-server-quickbooks

# add to Claude Code
claude mcp add mindstone-mcp-server-quickbooks -- npx -y @mindstone/mcp-server-quickbooks
# add to Codex CLI
codex mcp add mindstone-mcp-server-quickbooks -- npx -y @mindstone/mcp-server-quickbooks
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "mindstone-mcp-server-quickbooks": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "@mindstone/mcp-server-quickbooks"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add mindstone-mcp-server-quickbooks --command npx --arg -y --arg @mindstone/mcp-server-quickbooks
# ~/.hermes/config.yaml
mcp_servers:
  mindstone-mcp-server-quickbooks:
    command: "npx"
    args: ["-y", "@mindstone/mcp-server-quickbooks"]
// mcp.json
{
  "mcpServers": {
    "mindstone-mcp-server-quickbooks": {
      "command": "npx",
      "args": [
        "-y",
        "@mindstone/mcp-server-quickbooks"
      ]
    }
  }
}
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 7 Aug 26 +4
    • Known CVEs: partial → pass security
    • Dependency health: partial → 0.85 functional
  • 6 Aug 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 30 to 33. That category is still filling its 30-day observation window: 9 days of observed history at the previous scan, 10 at this one. The score rises as the window fills, whether or not the server changes.

  • 5 Aug 26 +1
    • CVE-2026-69207 no longer affects this package security
    • Known CVEs: fail → partial security
  • 4 Aug 26 +3
    • CVE-2026-69207 affects this package: medium security
    • Known CVEs: partial → fail security
    • Stability: unverified → 0.27 functional
  • 2 Aug 26 +42
    • Provenance: unverified → fail security
    • Malware scan: unverified → pass security
    • Install scripts: unverified → pass security
    • Known CVEs: unverified → partial security
    • Stability: Stability not yet verified: not enough scan history yet (needs a 30-day window). security
    • License: unverified → fail functional
    • Maintenance: unverified → pass functional
    • Schema quality: unverified → excellent functional
    • Dependency health: unverified → partial functional
    • MCP protocol: unverified → pass functional
    • Licence: FSL-1.1-MIT functional
  • 1 Aug 26 +15
    • Tool coverage: unverified → 100 functional
  • 31 Jul 26 −1
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 30 Jul 26 −39
    • Malware scan: pass → unverified security
    • Tool coverage: 100 → unverified functional
    • First check of Schema quality: unverified functional
Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 7 Aug 2026 · Analysed npm/@mindstone/[email protected]

Provenance No attestation

The registry publishes no build provenance for this version, so there is nothing to verify.

Result No attestation
Ecosystem npm
Dependencies 96 packages
Packages resolved 96
Stale 30
Tree resolution Complete
MCP tools · 13 exposed · ~1,742 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.

Tool Tokens
configure_quickbooks ~253

Configure QuickBooks Online credentials. Call this when the user provides their Intuit Developer app credentials. WORKFLOW: 1. Go to https://developer.intuit.com/ and create an app (or use existing) 2. Get the Client ID and Client Secret from the app's Keys & credentials page 3. Add http://localhost:8000/callback as a Redirect URI 4. Use the OAuth Playground or your app's auth flow to obtain a Refresh Token 5. Find your Company ID (Realm ID) in the URL when logged into QuickBooks Online COMMON MISTAKES: - Refresh tokens expire after 100 days of inactivity — re-authenticate if you get auth errors - The Realm ID is NOT the same as the Client ID — it's your company identifier - Sandbox and Production use different credentials

NameTypeReqDescription
clientIdstringyesIntuit Developer app Client ID
clientSecretstringyesIntuit Developer app Client Secret
environmentstring"sandbox" or "production" (default: production)
realmIdstringyesQuickBooks company ID (Realm ID)
refreshTokenstringyesOAuth2 refresh token from the authorization flow

No output schema declared.

No examples provided.

create_quickbooks_bill ~145

Create a new bill (accounts payable) in QuickBooks Online. Example: { "vendorId": "123", "lines": [{ "description": "Office supplies", "amount": 250, "accountId": "456" }] } WORKFLOW: 1. Use list_quickbooks_vendors to find the vendor ID 2. Use list_quickbooks_accounts to find expense account IDs 3. Create with line items

NameTypeReqDescription
dueDatestringDue date (YYYY-MM-DD)
linesarrayyesBill line items
memostringMemo / notes
vendorIdstringyesVendor ID (required)

No output schema declared.

No examples provided.

create_quickbooks_customer ~111

Create a new customer in QuickBooks Online. Example: { "displayName": "Acme Corp" } Example: { "displayName": "Jane Smith", "email": "[email protected]", "phone": "555-1234" }

NameTypeReqDescription
companyNamestringCompany name
displayNamestringyesCustomer display name (required, must be unique)
emailstringPrimary email address
phonestringPrimary phone number

No output schema declared.

No examples provided.

create_quickbooks_invoice ~178

Create a new invoice in QuickBooks Online. Example: { "customerId": "123", "lines": [{ "description": "Consulting services", "amount": 1500 }] } WORKFLOW: 1. Use list_quickbooks_customers to find the customer ID 2. Create with line items (description + amount required) 3. Optionally set dueDate and memo COMMON MISTAKES: - customerId is required (use list_quickbooks_customers to find it) - Each line needs at least description and amount - Dates use YYYY-MM-DD format

NameTypeReqDescription
customerIdstringyesCustomer ID (required)
dueDatestringDue date (YYYY-MM-DD)
linesarrayyesInvoice line items
memostringCustomer memo / notes

No output schema declared.

No examples provided.

create_quickbooks_vendor ~109

Create a new vendor in QuickBooks Online. Example: { "displayName": "Office Depot" } Example: { "displayName": "AWS", "email": "[email protected]", "companyName": "Amazon Web Services" }

NameTypeReqDescription
companyNamestringCompany name
displayNamestringyesVendor display name (required, must be unique)
emailstringPrimary email address
phonestringPrimary phone number

No output schema declared.

No examples provided.

get_quickbooks_entity ~92

Get a single QuickBooks entity by type and ID. Example: { "entityType": "Invoice", "entityId": "123" } Supported entity types: Account, Bill, BillPayment, Customer, Employee, Estimate, Invoice, Item, JournalEntry, Purchase, Vendor

NameTypeReqDescription
entityIdstringyesEntity ID
entityTypestringyesEntity type (PascalCase)

No output schema declared.

No examples provided.

list_quickbooks_accounts ~152

List chart of accounts from QuickBooks Online. Returns: Id, Name, AccountType, AccountSubType, CurrentBalance, Active. Example: {} Example: { "accountType": "Expense" } Account types: Bank, Accounts Receivable, Other Current Asset, Fixed Asset, Other Asset, Accounts Payable, Credit Card, Other Current Liability, Long Term Liability, Equity, Income, Cost of Goods Sold, Expense, Other Income, Other Expense.

NameTypeReqDescription
accountTypestringFilter by account type (e.g., "Expense", "Income", "Bank")
activebooleanFilter by active status
limitnumberMax results (default: 100)

No output schema declared.

No examples provided.

list_quickbooks_bills ~85

List bills (accounts payable) from QuickBooks Online. Returns: Id, DocNumber, TxnDate, DueDate, Balance, TotalAmt, VendorRef. Example: {} Example: { "vendorId": "123" }

NameTypeReqDescription
limitnumberMax results (default: 50)
vendorIdstringFilter by vendor ID

No output schema declared.

No examples provided.

list_quickbooks_customers ~99

List customers from QuickBooks Online. Returns: Id, DisplayName, PrimaryEmailAddr, PrimaryPhone, Balance, Active. Example: {} Example: { "active": true } Example: { "searchTerm": "Smith" }

NameTypeReqDescription
activebooleanFilter by active status
limitnumberMax results (default: 50)
searchTermstringSearch by display name (partial match)

No output schema declared.

No examples provided.

list_quickbooks_employees ~63

List employees from QuickBooks Online. Returns: Id, DisplayName, PrimaryEmailAddr, PrimaryPhone, Active. Example: {}

NameTypeReqDescription
activebooleanFilter by active status
limitnumberMax results (default: 50)

No output schema declared.

No examples provided.

list_quickbooks_invoices ~159

List invoices from QuickBooks Online. Returns: Id, DocNumber, TxnDate, DueDate, Balance, TotalAmt, CustomerRef, Line items. Example: {} Example: { "status": "unpaid" } Example: { "customerId": "123" } WORKFLOW: 1. Call with no args to see recent invoices 2. Filter by status (unpaid/paid/overdue) or customer 3. Use get_quickbooks_entity for full invoice details

NameTypeReqDescription
customerIdstringFilter by customer ID
limitnumberMax results (default: 50)
statusstringFilter: "unpaid", "paid", or "overdue"

No output schema declared.

No examples provided.

list_quickbooks_vendors ~91

List vendors from QuickBooks Online. Returns: Id, DisplayName, PrimaryEmailAddr, PrimaryPhone, Balance, Active. Example: {} Example: { "searchTerm": "Office" }

NameTypeReqDescription
activebooleanFilter by active status
limitnumberMax results (default: 50)
searchTermstringSearch by display name (partial match)

No output schema declared.

No examples provided.

query_quickbooks ~205

Run a QuickBooks query using the QuickBooks Query Language. Returns matching entities. QuickBooks uses a SQL-like query language. Example: { "query": "SELECT * FROM Invoice WHERE Balance > '0' ORDERBY DueDate" } Example: { "query": "SELECT * FROM Customer WHERE Active = true" } WORKFLOW: 1. Use this for flexible searches across any entity type 2. Entity names are PascalCase: Invoice, Customer, Vendor, Bill, Employee, etc. 3. String values use single quotes, dates use 'YYYY-MM-DD' format COMMON MISTAKES: - Entity names are case-sensitive PascalCase (Invoice, not invoice) - Use single quotes for string/date values, not double quotes - LIKE operator uses % wildcard: DisplayName LIKE '%Smith%'

NameTypeReqDescription
limitnumberMax results (default: 100, max: 1000)
querystringyesQuickBooks Query Language statement

No output schema declared.

No examples provided.