Skip to main content

Setup helper for the AccountingQB MCP server in Claude Desktop

Project description

accountingqb-setup

Setup helper for the AccountingQB MCP server in Claude Desktop.

Edits your claude_desktop_config.json safely: parses it as JSON (never regex), preserves your other MCP servers, makes a .bak before writing, validates the result round-trips, and gives you a clear restart instruction.

Install and run (end users)

uvx accountingqb-setup

You'll be prompted for your license key (input is hidden, never echoed). The helper detects your OS, finds your Claude Desktop config, shows you exactly what it's about to change, and asks for confirmation before writing.

After it finishes, fully quit Claude Desktop:

  • macOS: Cmd+Q. Closing the window is not enough.
  • Windows: Right-click the Claude tray icon -> Quit.

Then reopen Claude Desktop. Ask "What QuickBooks tools do you have?" to verify the connection.

Common flags

# Non-interactive (CI, scripts, retries)
accountingqb-setup --license-key LK-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX --yes

# See what would change without writing
accountingqb-setup --license-key LK-... --dry-run

# Check current state
accountingqb-setup --status

# Remove
accountingqb-setup --uninstall

# Test against a config file in a different location
accountingqb-setup --config /tmp/test_config.json

You can also pass the key via the QB_LICENSE_KEY environment variable instead of --license-key.

What gets written

The helper merges this entry into the mcpServers object in your Claude Desktop config:

"accountingqb": {
  "command": "uvx",
  "args": ["accountingqb"],
  "env": {
    "QB_LICENSE_KEY": "<your key>"
  }
}

If accountingqb is already configured, the helper compares the existing entry to the new one. If the license key has changed, it shows you the diff and confirms before updating. If the entry is identical, it exits with a "nothing to do" message.

Safety

  • JSON-aware merge. The config is parsed as JSON, the entry is added, the result is serialized back. No regex edits. Existing servers, custom top-level keys (e.g. globalShortcut), and formatting preferences are all preserved structurally.
  • Backup first. Before writing, the existing config is copied to claude_desktop_config.json.bak.
  • Atomic write. The new config is written to a temp file in the same directory, then renamed over the original. A crash mid-write can't corrupt your config.
  • Round-trip validation. After writing, the file is reloaded and compared to what we intended to write. Any mismatch raises an error (and the backup is still on disk).
  • No license-key echoing. Keys entered interactively use getpass (no terminal echo). Keys are masked when shown in confirmation output.
  • Refuses to repair invalid JSON. If your existing config is broken, the helper tells you to fix it manually rather than guessing.

Develop locally

git clone https://github.com/RCOLKITT/AccountingQB-MCP.git
cd AccountingQB-MCP/accountingqb-setup
uv venv
source .venv/bin/activate
uv pip install -e ".[dev]"
pytest

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

accountingqb_setup-0.1.0.tar.gz (9.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

accountingqb_setup-0.1.0-py3-none-any.whl (9.9 kB view details)

Uploaded Python 3

File details

Details for the file accountingqb_setup-0.1.0.tar.gz.

File metadata

  • Download URL: accountingqb_setup-0.1.0.tar.gz
  • Upload date:
  • Size: 9.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.22

File hashes

Hashes for accountingqb_setup-0.1.0.tar.gz
Algorithm Hash digest
SHA256 75fb425c99c854a4ad00348fc5a1b7f3bb6cf34db98c346e34df4c9fed43d76b
MD5 c158460cf8124816045f4207aaf1ea5c
BLAKE2b-256 06f2a731944458ff10cce6506978478b07272e83bf33ee05fbbb00f9c67f73f5

See more details on using hashes here.

File details

Details for the file accountingqb_setup-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for accountingqb_setup-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 200157b7be3bfde86f13eedf9a3b6347ac5d6f1c112fafa4266c96589c4d8a5e
MD5 14394d0ef5bf8107e6eb266b67c1c9a2
BLAKE2b-256 f8e6d2db509e9e4971842c2494ea1b3f3d3e69653add44a971d5910f10eb2a01

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page