gnubok.app has no DNS delegation (the .app TLD returns no NS records for it), so every https://gnubok.app/... link in the public docs was dead — including the OAuth connector URL a Claude Connectors Directory reviewer would paste from the new Connect-with-Claude page (#682), and the docs links in the gnubok-mcp npm README that ships in the tarball. app.gnubok.se is the live production domain (the MCP endpoint there correctly answers 401 unauthenticated) and was already the default GNUBOK_URL in the npm bridge and the branding-service appUrl fallback. Mechanical swap: 55 occurrences across 11 files, all https:// URL form (verified no emails or identifiers). Docs content only — no code paths. Also resolves the greptile domain-mismatch finding on #682. Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
gnubok-mcp
Connect Claude Desktop (or any stdio MCP client) to your Accounted bookkeeping account. This is a thin stdio → HTTPS bridge: it forwards JSON-RPC over stdio to the hosted Accounted MCP server, which exposes 90+ bookkeeping tools (invoices, transactions, VAT/momsdeklaration, payroll, reports, year-end).
Write tools stage a pending operation that you confirm before anything is booked — the bridge never books on its own.
Quickstart
-
Mint an API key in the Accounted dashboard at /settings/api. Use a
gnubok_sk_test_*key against the sandbox while you evaluate; switch tognubok_sk_live_*for real data. The key's scopes gate which tools are callable. -
Run the bridge with the key in the environment:
GNUBOK_API_KEY=gnubok_sk_test_... npx gnubok-mcpIt reads JSON-RPC from stdin and writes responses to stdout, so you normally point an MCP client at it rather than running it by hand.
Claude Desktop config
Add the bridge to your claude_desktop_config.json:
{
"mcpServers": {
"gnubok": {
"command": "npx",
"args": ["gnubok-mcp"],
"env": {
"GNUBOK_API_KEY": "gnubok_sk_test_..."
}
}
}
}
Restart Claude Desktop. The Accounted tools appear in the client and you can start asking questions like "Show my uncategorized bank transactions and suggest categories."
Environment variables
| Variable | Required | Default | Purpose |
|---|---|---|---|
GNUBOK_API_KEY |
yes | — | Your gnubok_sk_* API key. |
GNUBOK_URL |
no | https://app.gnubok.se/api/extensions/ext/mcp-server/mcp |
Override the MCP endpoint (e.g. for self-hosted Accounted). |
Alternative: claude.ai connector (no API key)
If you use claude.ai or Claude Desktop's custom-connector flow, you can skip this bridge entirely and add Accounted as an OAuth 2.1 custom connector instead — paste the connector URL https://app.gnubok.se/api/extensions/ext/mcp-server/mcp and authorise on the Accounted consent screen (read-only scopes by default; write scopes are ticked explicitly).
Docs
Full setup, sample prompts, and a 10-minute reviewer test: Connect with Claude.
License
MIT