Skip to content
Agentmart
Submit a tool

QuickBooks MCP

MCP server for QuickBooks Online API integration

Connector by laf-rge · GitHub account verified by the MCP Registry

IndexedMITLocal (stdio)★ 14
Write a review

Install

Works with Claude Code, Codex, VS Code, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.

npx agentmarket install connector/laf-rge-quickbooks-mcp

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

MCP server for QuickBooks Online API integration

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this server can do and what it asks for, from its tool list, install config and code. Checked Oct 25, 2026.

Tools
18 read · 22 write · 1 delete
Secrets
3 (API keys, tokens or passwords)
Install scripts
None found
Runs as
Node.js package

Tools by what they do 41

Read from the source code; the running server may list different tools.

Read 18 · Look things up without changing anything.

  • account_period_summary
  • get_balance_sheet
  • get_bill
  • get_bill_payment
  • get_company_info
  • get_customer
  • get_deposit
  • get_expense
  • get_invoice
  • get_journal_entry
  • get_profit_loss
  • get_report
Show 6 more tools
  • get_sales_receipt
  • get_trial_balance
  • get_vendor_credit
  • list_accounts
  • query
  • query_account_transactions

Write 22 · Create, change, send or run things.

  • create_bill
  • create_bill_payment
  • create_customer
  • create_deposit
  • create_expense
  • create_invoice
  • create_journal_entry
  • create_sales_receipt
  • create_transfer
  • create_vendor
  • create_vendor_credit
  • edit_bill
Show 10 more tools
  • edit_customer
  • edit_deposit
  • edit_expense
  • edit_invoice
  • edit_journal_entry
  • edit_sales_receipt
  • edit_vendor
  • edit_vendor_credit
  • qbo_authenticate
  • receive_payment

Delete 1 · Delete, drop, revoke or wipe things.

  • delete_entity

Secrets and settings it asks for

Secrets: values you paste in that let it act as you.

  • QBO_CLIENT_ID
  • QBO_CLIENT_SECRET
  • QBO_CREDENTIAL_MODE

Other settings (environment variables or headers).

  • QBO_SANDBOX

Network hosts it talks to 6

  • app.qbo.intuit.com · found in code
  • app.sandbox.qbo.intuit.com · found in code
  • developer.intuit.com · found in code
  • github.com · found in code
  • login.microsoftonline.com · found in code
  • sts.windows.net · found in code

Files it touches

  • Your home directory (~)

Tools (41)

Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].

  • account_period_summarySummarize QuickBooks account periodread-only

    Get a period summary for an account: opening balance, total debits/credits, closing balance, and transaction count. Uses the General Ledger report. Supports department filtering.

  • create_billCreate QuickBooks bill

    Create a vendor bill. Accepts vendor/account/department names (will lookup IDs automatically). Note: DepartmentRef is header-level only — for multi-department splits, create separate bills (one per department). Returns bill details and a link to view in QuickBooks.

  • create_bill_paymentCreate QuickBooks bill payment

    Create a bill payment (the QBO 'check' / 'pay bills' flow). Pays one or more existing bills and optionally applies vendor credits, clearing Accounts Payable. Use this to record vendor ACH/EFT debits or checks so the bank feed can match them — especially when a bank charge equals bills minus credit memos. Amounts default to each bill's open balance and each credit's remaining balance. Returns payment details and a link to view in QuickBooks.

  • create_customerCreate QuickBooks customer

    Create a customer or sub-customer. Accepts name parts, contact info, addresses, and hierarchy settings. Use parent_ref to create sub-customers or jobs. Returns customer details and a link to view in QuickBooks.

  • create_depositCreate QuickBooks deposit

    Create a bank deposit. Accepts account/department/entity names (will lookup IDs automatically). Lines represent the sources of the deposit — amounts can be positive (income) or negative (fees, deductions). Each line may name the vendor, customer, or employee it came from via entity_name/entity_type. QuickBooks computes the total from line amounts. Returns deposit details and a link to view in QuickBooks.

  • create_expenseCreate QuickBooks expense

    Create an expense (Purchase). Accepts account/department/payee names (will lookup IDs automatically). Covers Cash, Check, and Credit Card payment types. The payee may be a vendor, customer, or employee — set entity_type to say which (defaults to Vendor). Note: PaymentType cannot be changed after creation. DepartmentRef is header-level only. Returns expense details and a link to view in QuickBooks.

  • create_invoiceCreate QuickBooks invoice

    Create an invoice. Accepts item/customer/department names (will lookup IDs automatically). Either customer_name or customer_id is REQUIRED — invoices must have a customer. Lines use SalesItemLineDetail (product/service references, not accounts). Returns invoice details and a link to view in QuickBooks.

  • create_journal_entryCreate QuickBooks journal entry

    Create a journal entry. Accepts account/department/entity names (will lookup IDs automatically). Validates debits=credits before creating. Lines may carry an entity (vendor, customer, or employee) — QuickBooks requires one on any line posting to Accounts Receivable or Accounts Payable. Returns entry details and a link to view in QuickBooks.

  • create_sales_receiptCreate QuickBooks sales receipt

    Create a sales receipt. Accepts item/customer/department names (will lookup IDs automatically). Lines reference items (products/services) not accounts. Returns receipt details and a link to view in QuickBooks.

  • create_transferCreate QuickBooks transfer

    Move money between two of the company's own accounts (QuickBooks 'Transfer') — bank to bank, or a credit-card paydown. Use this rather than create_expense, which would book the outflow as an expense and never touch the receiving account, or create_journal_entry, which posts the right result but does not read as a transfer in the register or the bank-feed match screen. Defaults to draft: true for a preview.

  • create_vendorCreate QuickBooks vendor

    Create a vendor.

  • create_vendor_creditCreate QuickBooks vendor credit

    Create a vendor credit. Accepts vendor/account/department names (will lookup IDs automatically). Lines represent credit amounts applied to expense accounts. Returns credit details and a link to view in QuickBooks.

  • delete_entityDelete QuickBooks transactioncan change or delete data

    Permanently delete a QuickBooks transaction. Supports journal entries, bills, invoices, deposits, sales receipts, expenses, vendor credits, bill payments, and attachments. Uses a two-step flow: first call previews what will be deleted, second call with confirm=true executes the deletion. Note: Customers cannot be deleted — use edit_customer with active=false to deactivate instead.

  • edit_billEdit QuickBooks bill

    Modify an existing bill. Can update vendor, date, due date, memo, and/or lines. For lines: provide line_id to update existing line, omit to add new line, set delete=true to remove. A line_id preserves the line's existing customer unless customer_name/customer_id is given; pass customer_name: "" to clear it. Note: DepartmentRef is header-level only — lines do not support department.

  • edit_customerEdit QuickBooks customer

    Modify an existing customer. Can update name, contact info, addresses, notes, taxable status, active status, hierarchy (parent/sub-customer), delivery method, and payment terms. Set active=false to deactivate (QuickBooks equivalent of delete).

Show 26 more tools
  • edit_depositEdit QuickBooks deposit

    Modify an existing deposit. Can update date, memo, deposit account, department, and/or lines. CRITICAL for line changes: The QB Deposit API does NOT replace lines - it merges them. Lines WITH line_id update existing lines. Lines WITHOUT line_id are ADDED as new. Lines NOT included are KEPT unchanged. To 'delete' a line, you must include ALL existing lines with their line_ids and set unwanted lines to amount: 0. Line amounts must sum to the original deposit total (use expected_total to override for corrupted deposits). Entity (vendor/customer/employee) can be set on any line, new or existing, v…

  • edit_expenseEdit QuickBooks expense

    Modify an existing expense (Purchase). Can update date, memo, payment account, payee, and/or lines. The payee may be a vendor, customer, or employee — set entity_type to say which (defaults to Vendor). Note: PaymentType (Cash/Check/CreditCard) cannot be changed after creation.

  • edit_invoiceEdit QuickBooks invoice

    Modify an existing invoice. Can update date, due date, memo, customer, department, terms, email, online payment settings, and/or lines. For lines: provide line_id to update existing line, omit line_id to add new line (requires item_name), set delete=true to remove.

  • edit_journal_entryEdit QuickBooks journal entry

    Modify an existing journal entry. Can update date, memo, doc_number, and/or lines. For lines: provide line_id to update existing line, omit line_id to add new line, set delete=true to remove a line. A line_id preserves the line's existing entity unless entity_name/entity_id is given; pass entity_name: "" to clear it. Validates debits=credits before saving.

  • edit_sales_receiptEdit QuickBooks sales receipt

    Modify an existing sales receipt. Can update date, memo, customer, deposit account, department, and/or lines. For lines: provide line_id to update existing line, omit line_id to add new line (requires item_name), set delete=true to remove.

  • edit_vendorEdit QuickBooks vendor

    Sparse-update a vendor: only fields passed change; bill_address merges into the stored address. active=false deactivates. Read vendors with query (SELECT * FROM Vendor WHERE ...).

  • edit_vendor_creditEdit QuickBooks vendor credit

    Modify an existing vendor credit. Can update vendor, date, memo, ref number, and/or lines. For lines: provide line_id to update existing line, omit line_id to add new line (requires amount and account_name), set delete=true to remove. A line_id preserves the line's existing customer unless customer_name/customer_id is given; pass customer_name: "" to clear it. Note: DepartmentRef is header-level only — lines do not support department.

  • get_balance_sheetGet QuickBooks balance sheetread-only

    Get a Balance Sheet report. Can be broken down by department/location.

  • get_billGet QuickBooks billread-only

    Fetch a single bill by ID with full details including SyncToken (needed for edits). Returns vendor, date, due date, amount, AP account, line details.

  • get_bill_paymentGet QuickBooks bill paymentread-only

    Fetch a single bill payment by ID with full details including SyncToken. Shows vendor, date, pay type, bank account, linked bills/credits with applied amounts, and flags any unapplied amount (payment total not matching net applied lines).

  • get_company_infoGet QuickBooks company inforead-only

    Get information about the connected QuickBooks company.

  • get_customerGet QuickBooks customerread-only

    Fetch a single customer by ID with full details including SyncToken (needed for edits). Returns name, contact info, addresses, balance, hierarchy (parent/sub-customer), and active status.

  • get_depositGet QuickBooks depositread-only

    Fetch a single deposit by ID with full details including SyncToken (needed for edits). Returns deposit account, date, memo, and line details showing source accounts and amounts.

  • get_expenseGet QuickBooks expenseread-only

    Fetch a single expense (Purchase) by ID with full details including SyncToken. Covers Expenses, Checks, and Credit Card charges. Returns payment type, account, date, amount, line details.

  • get_invoiceGet QuickBooks invoiceread-only

    Fetch a single invoice by ID with full details including SyncToken (needed for edits). Returns customer, date, due date, balance, department, line details with items/qty/price.

  • get_journal_entryGet QuickBooks journal entryread-only

    Fetch a single journal entry by ID with full details including SyncToken (needed for edits). Returns formatted summary and writes full object to temp file.

  • get_profit_lossGet QuickBooks profit and lossread-only

    Get a Profit and Loss (Income Statement) report. Can be broken down by department/location.

  • get_reportRun QuickBooks reportread-only

    Run a QuickBooks report that has no dedicated tool: A/R and A/P aging, customer and vendor balances, transaction lists, general ledger, journal, sales by customer/item/class/department, cash flow, and detail variants. Answers what is outstanding and how old it is, which the entity query tools cannot — a report sees postings that carry no account reference in entity JSON. Profit and Loss, Balance Sheet and Trial Balance have their own tools.

  • get_sales_receiptGet QuickBooks sales receiptread-only

    Fetch a single sales receipt by ID with full details including SyncToken (needed for edits). Returns customer, date, deposit account, department, line details with items/qty/price.

  • get_trial_balanceGet QuickBooks trial balanceread-only

    Get a Trial Balance report. Useful for month-end close and reconciliation. Note: Trial Balance does not support department/location breakdown in QuickBooks Online.

  • get_vendor_creditGet QuickBooks vendor creditread-only

    Fetch a single vendor credit by ID with full details including SyncToken (needed for edits). Returns vendor, date, memo, ref number, AP account, and line details showing expense accounts and amounts.

  • list_accountsList QuickBooks accountsread-only

    List all accounts in the chart of accounts. Returns AcctNum (the user-facing account number), Name, AccountType, AccountSubType, and CurrentBalance. Use AcctNum to reference accounts in other queries or operations.

  • qbo_authenticateAuthenticate with QuickBooks

    Authenticate with QuickBooks using OAuth (local credential mode only). Step 1: Call with no arguments to get the authorization URL. Step 2: After authorizing in browser, call with authorization_code and realm_id from the callback URL. This tool only works when QBO_CREDENTIAL_MODE is 'local' (the default).

  • queryQuery QuickBooksread-only

    Execute a QuickBooks query using SQL-like syntax. Supports querying any entity type (Customer, Vendor, Invoice, Bill, Account, Item, Department, etc.). Results are written to a file to preserve context. Defaults to MAXRESULTS 1000 if not specified. Examples: 'SELECT * FROM Customer', 'SELECT * FROM SalesReceipt WHERE TxnDate >= \'2025-11-01\' AND TxnDate <= \'2025-11-30\''

  • query_account_transactionsQuery QuickBooks account transactionsread-only

    Query all transactions affecting a specific account, across all 13 posting transaction types. Returns a consolidated list with date, type, amount (debit/credit), and description. Useful for investigating account balance discrepancies. Note: the A/R side of invoices, credit memos, and payments has no account reference in QBO's data model and cannot appear here — use account_period_summary for A/R totals.

  • receive_paymentReceive QuickBooks customer payment

    Record a customer payment against one or more open invoices (QuickBooks 'Receive Payment'), clearing Accounts Receivable. This is the A/R counterpart to create_bill_payment. Not a deposit — create_deposit banks money without settling an invoice — and not a sales receipt, which records a sale that was paid outright and never had an invoice. Defaults to draft: true for a preview.

Signals

Stars
14
Forks
14
Open issues
1
Last commit
Oct 19, 2026 (9 days ago)
Last release
Oct 19, 2026 (9 days ago)

From GitHub (fetched Oct 24, 2026).

Details

Registry name
io.github.laf-rge/quickbooks-mcp
Version
0.12.0
Auth
API key
Packages
npm quickbooks-mcp
License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026
Cite this page

QuickBooks MCP. Agent Mart. https://agentmart.dev/connectors/laf-rge-quickbooks-mcp (last updated 2026-10-24)