DevWithMJ.QuickBooks.Mcp 0.1.6

{
  "inputs": [
    {
      "type": "promptString",
      "id": "QB_COMPANY_FILE",
      "description": "Full path to the QuickBooks company file (.qbw). Leave empty to use the file open in QuickBooks."
    }
  ],
  "servers": {
    "DevWithMJ.QuickBooks.Mcp": {
      "type": "stdio",
      "command": "dnx",
      "args": ["DevWithMJ.QuickBooks.Mcp@0.1.6", "--yes"],
      "env": {
        "QB_COMPANY_FILE": "${input:QB_COMPANY_FILE}"
      }
    }
  }
}
                    
This package contains an MCP Server. The server can be used in VS Code by copying the generated JSON to your VS Code workspace's .vscode/mcp.json settings file.
dotnet tool install --global DevWithMJ.QuickBooks.Mcp --version 0.1.6
                    
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
                    
if you are setting up this repo
dotnet tool install --local DevWithMJ.QuickBooks.Mcp --version 0.1.6
                    
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=DevWithMJ.QuickBooks.Mcp&version=0.1.6
                    
nuke :add-package DevWithMJ.QuickBooks.Mcp --version 0.1.6
                    

quickbooks-mcp

Open-source MCP server that connects QuickBooks Desktop (Pro, Premier, Enterprise) to LLMs and agents.

npm NuGet Release License: MIT

Status: pre-1.0. Run so far against QuickBooks Desktop Enterprise Accountant 24.0 with Intuit's sample company file; other editions and years are not yet tested (see COMPATIBILITY.md, and the tester guide if you can help).

What you get

  • Read: customers, vendors, employees, items, accounts, invoices, bills, payments, inventory, time, custom fields, and every standard report (aging, P&L, balance sheet, ...), as compact tables.
  • Change, only if you allow it: create, update, delete and void, with previews, confirmation tokens, idempotency keys, batches and an audit log.
  • Safe by default: read-only, tax IDs and bank and card numbers masked, payroll off, card data never accepted.
  • Local: runs on your Windows PC next to QuickBooks and talks to it through its SDK. No cloud, no telemetry.

Install

Claude Desktop open the .mcpb from the latest release
Claude Code /plugin marketplace add devwithmj/quickbooks-mcp, then /plugin install quickbooks-desktop@quickbooks-mcp
npx npx -y @devwithmj/quickbooks-mcp
dnx dnx DevWithMJ.QuickBooks.Mcp --yes
exe quickbooks-mcp-win-x64.exe (or -win-x86) from the release

Then allow access once in QuickBooks (--authorize) and add the server to your AI app. Step by step: docs/GUIDE.md.

Packages and listings: npm, NuGet, GitHub releases, the official MCP Registry (io.github.devwithmj/quickbooks-mcp) and Glama.

Turn on changes

Everything is read-only until you opt in. Add the flag to the arguments your MCP client starts the server with:

"args": ["-y", "@devwithmj/quickbooks-mcp", "--allow-writes"]

or set an environment variable: QB_ALLOW_WRITES=true for everything, or QB_ENABLE_WRITE, QB_ENABLE_UPDATE and QB_ENABLE_DELETE for one kind each (QB_WRITE_ALLOW=Invoice,Customer limits which record types can change). Deletes and voids always need a confirmation step. Details: docs/WRITES.md.

Use it over HTTP (advanced)

Most clients start the server themselves. For a client that cannot, quickbooks-mcp --http serves MCP over HTTP on 127.0.0.1:8765 only, and every request needs an access key (printed at start, or set QB_HTTP_KEY). Changes stay off unless you also pass --http-allow-writes. To reach it from another device, put your own tunnel in front of it: docs/REMOTE-ACCESS.md.

QuickBooks Online or Desktop?

This project is for QuickBooks Desktop. If you use QuickBooks Online, use Intuit's own server: intuit/quickbooks-online-mcp-server (Apache-2.0). We read its design for ideas and wrote our own code; no code was copied.

QuickBooks Online server (Intuit) This project (Desktop)
Targets QuickBooks Online QuickBooks Desktop Pro, Premier, Enterprise (Windows)
Where it runs Talks to Intuit's cloud API On your PC, next to QuickBooks, through its local SDK
Setup and sign-in An Intuit developer app and OAuth A one-time "allow this app" approval inside QuickBooks (--authorize); no developer account
Only on Desktop Inventory assemblies and sites, price levels, workers comp codes, custom fields via data extensions, opening a record in the QuickBooks window
Only on Online Attachments, invoice PDFs and other cloud features
Safety default See that project Read-only until you enable writes; deletes and voids need your approval; sensitive numbers masked; payroll off; audit log
Data path Through Intuit's cloud Stays on your computer except what the assistant is shown

The two do not share a company file or an account: a business on Online should not use this project, and a Desktop business cannot use Intuit's.

Requirements

  • Windows with QuickBooks Desktop installed and licensed.
  • Admin access to the company file for the one-time authorization.

Not for QuickBooks Online (Intuit has its own MCP server), QuickBooks for Mac (no SDK), card processing, or running as a Windows service. See docs/SCOPE.md.

Documentation

Not affiliated with or endorsed by Intuit. See NOTICE.md.

License

MIT

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last Updated
0.1.6 111 10/18/2026
0.1.5 91 10/18/2026
0.1.4 106 10/18/2026
0.1.3 102 10/18/2026
0.1.2 91 10/18/2026
0.1.1 92 10/18/2026