@centry-digital/bukku-mcp
OfficialClick on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@@centry-digital/bukku-mcplist my overdue invoices"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Bukku
Tools for the Bukku accounting platform.
Packages
Package | Description | npm |
MCP server for AI assistants (Claude, etc.) | ||
Command-line interface |
Related MCP server: invoiceninja-mcp
Quick Start
For AI assistants (MCP)
Connect your AI client to the Bukku API. See the MCP package README for setup instructions.
npx @centry-digital/bukku-mcpFor command line
Manage invoices, contacts, products, and more from your terminal. See the CLI package README for full documentation.
npx @centry-digital/bukku-cli --helpBoth packages require a Bukku API token and company subdomain. See Getting Your API Token.
Payment terms on quotes and orders: old vs new format
Bukku's API changelog announced that, from 21 October 2026, sales quotes and sales orders take payment terms in a new format, term_items, replacing the old top-level term_id. A live test on 22 October 2026 found that Bukku has not switched yet: it still applies the old format and silently ignores the new one, so a quote sent with only term_items is saved with no payment term.
Format | Example | Live Bukku API (22 Oct 2026) | bukku CLI and MCP |
Old |
| Applied | Accepted, sent in both forms |
New |
| Accepted, but terms silently dropped | Accepted, sent in both forms |
Split |
| Accepted, but terms silently dropped | Accepted, with a warning in the result |
Both |
| Applies | Refused before sending ( |
Because Bukku may switch without notice, the CLI and MCP server make payment terms stick either way:
Both forms. A single term for 100%, given in either format, is sent as both a top-level
term_idandterm_items. Today Bukku appliesterm_id; after the switch it should applyterm_items.Retry. If Bukku refuses
term_id(a validation error on that field), the request is sent again withterm_itemsonly.Check. After a create or update, the stored
term_itemsare compared with the request. If they differ, for example because split terms were dropped, the result carries awarningsfield. Sales invoices are unaffected: they already useterm_items. Contacts now need acontact_codeon create and update, which the live API enforces.
Uninstalling
Step 1: Remove the MCP server configuration
Remove the "bukku" entry from the "mcpServers" object in your AI client's config file.
Claude Code: Remove from .claude/settings.json in your project directory (or ~/.claude/settings.json if added globally).
Claude Desktop: Remove from your config file:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
After editing, restart your AI client for the changes to take effect.
Step 2: Remove the package (if installed globally)
If you installed the package globally with npm install -g, uninstall it:
npm uninstall -g @centry-digital/bukku-mcpIf you were using npx (the default Quick Start method), there is no persistent installation to remove — npx downloads the package temporarily each time it runs. You can optionally clear the npx cache:
npx clear-npx-cacheStep 3: Revoke your API token (optional)
If you no longer need API access, log into your Bukku account and revoke the token at Control Panel > Integrations > API Access.
Development
Prerequisites
Node.js v20 or later
Setup
git clone https://github.com/centry-digital/bukku.git
cd bukku
npm ci
npm run verifynpm run verify runs format, lint, build, typecheck, tests and the MCP/CLI parity check, the same as CI. See CONTRIBUTING.md for how every change is tested and verified, and docs/github-setup.md for the repository settings.
Monorepo Structure
packages/
core/ Shared API client, entities, and types (internal)
mcp/ MCP server package (@centry-digital/bukku-mcp)
cli/ CLI package (@centry-digital/bukku-cli)Both mcp and cli depend on core, which is bundled at build time and not published separately.
License
MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
MCP server unifying ERPs, CRMs, APIs and knowledge base for Claude, ChatGPT and Gemini.
- ZapierOAuthcom.zapier
Hosted MCP server connecting AI assistants to 9,000+ apps and 40,000+ actions via Zapier.
AI for Tally Prime and Tally ERP 9. Hosted MCP server to ask your accounts in any language.
MCP server that lets AI assistants use all OneSchema features exposed via the public API.
Related MCP Servers
- FlicenseBqualityDmaintenanceMCP server for DACH accounting automation. Connect AI assistants to sevDesk and Lexoffice — create invoices, manage contacts, handle bookings and vouchers for German-speaking businesses.1528 npm-
- AlicenseBqualityDmaintenanceMCP server for Invoice Ninja v5 API. Enables AI assistants to manage clients, invoices, quotes, payments, and time tracking through natural language.328 npm2MIT
- AlicenseAqualityBmaintenanceMCP server for the Elorus invoicing and accounting platform, enabling AI assistants to create invoices, manage contacts, and query financial data through natural language.434MIT
- AlicenseNot gradedqualityCmaintenanceAn MCP server that enables AI assistants to read and write Xero accounting data, including invoices, contacts, accounts, and payments, through natural language.MIT