8 tools on this address; 5 of them answer without an account or key.
This public endpoint is separate from the authenticated Jithox connection and product servers below. Client availability depends on your plan and workspace permissions.
These links open your installed client. Review the server configuration before adding it.
Grok Build CLI 1.0.46 (2026-10-02): doctor exit 0, healthy=true, protocol 2025-11-25, 8 tools discovered. Discovery only; no tool call or grok.com test. Setup reference — Grok Build CLI
Claude.ai / Claude Desktop
Open Customize → Connectors → Add custom connector. On Team and Enterprise, an owner first adds it in Organization settings → Connectors → Add → Custom → Web.
Name: Jithox. Remote MCP server URL: https://jithox.com/api/mcp.
For this public setup, choose No sign-in if Authentication is shown; leave OAuth credentials and request headers empty. Click Add, then enable the connector for your conversation.
On ChatGPT web, open Settings → Security and login → Developer mode and turn it on. Then go to https://chatgpt.com/plugins and select the plus button to add your MCP app (custom connector).
Name: Jithox. Remote MCP server URL: https://jithox.com/api/mcp. Authentication: No Authentication.
In the app details, enable only verify_iban for this demonstration. Select the app in a conversation when it fits the task; no search/fetch pair is required.
The platform supports SSE and streaming HTTP, with OAuth, No Authentication or Mixed Authentication. No Authentication fits this free demonstration.
ChatGPT asks for confirmation by default for write actions. It uses readOnlyHint to identify read-only tools and treats tools without that hint as writes. MCP annotations are not authorization.
Expand the tool details and inspect the actual JSON input and output. A configured app is not proof that a call ran; surface errors or missing results rather than substituting model prose.
Use the community package n8n-nodes-jithox. Follow its README for installation and credentials. This is a separate n8n integration, not an MCP install link.
Client setup only. A saved configuration is not proof of a tool call. Check the actual tool output; do not substitute model prose for a missing result.
Choose your MCP client
No Jithox account or key is needed for this free, read-only verify_iban demonstration. It checks IBAN structure, not account existence or ownership. This public endpoint is separate from the authenticated Jithox connection and product servers described below.
OpenAI and Grok examples: Vendor documentation and local contract tests only. Locally tested, not proven end to end. These examples do not prove a provider journey, a tools/call, adoption or revenue. No ChatGPT/Grok listing or recommendation is promised.
The API snippets are individual MCP tool entries, not complete requests. Provider access and usage may have separate requirements and costs; no provider call is made by these examples.
Use a tool only when it fits the user request. Configuration does not force tool selection. Never substitute an invented tool answer for a missing or failed result.
—Keep allowed_tools limited to verify_iban. This is an Agents API contract, not a Responses API tool entry.
Check the outcome: With required: true, initialization failure fails the turn. Inspect the error in agent.session.turn.failed and check the URL and connection origin; do not treat a failed turn as a tool result.
—The approval flow needs client code: inspect mcp_approval_request, show the proposed arguments for a decision, then send mcp_approval_response with the matching approval_request_id and approve decision in a follow-up request using previous_response_id. Do not auto-approve.
—Provider approval is not a Jithox credential. Jithox authorization remains a separate server boundary for authenticated tools; this demonstration needs none.
Check the outcome: Inspect response output items: mcp_list_tools must include verify_iban. If a call occurs, check mcp_call.error and the actual mcp_call.output, including any tool-level failure. A list, an approval request or model prose alone is not a successful call; report missing output or errors instead of guessing.
—Keep the non-empty allowed_tools list: an empty allowlist enables all tools on xAI. The native xAI SDK instead calls this parameter allowed_tool_names; that name does not belong in this Responses object.
—Do not copy OpenAI-specific approval or connector options: xAI does not support them here. No provider approval flow is promised. Server authorization and any required consent remain separate obligations.
Check the outcome: Inspect the actual Responses output for tool discovery and call results, not just model text. Check mcp_list_tools when present, and mcp_call.error and mcp_call.output for a returned call; missing output or an error is not success. No xAI response has been observed in this local contract test.
Not executed: these are documented commands for an already available Grok CLI. Run from the intended project directory; project scope writes .grok/config.toml there, not a global user configuration.
grok mcp add --scope project --transport http jithox https://jithox.com/api/mcp
grok mcp list --json
grok mcp doctor jithox --json
—No CLI was installed or user profile changed for this guide. For servers that need it, OAuth can require interactive browser consent; this no-auth demonstration does not need that flow.
—Adding a server is not the API allowlist above: these commands do not restrict its tool set. Keep the demonstration to verify_iban and review available tools before use.
Check the outcome: After list and doctor, inspect the JSON for the configured URL and any configuration or connectivity errors. Successful discovery or diagnostics is not proof of a tool call.
For an installed Hermes Agent with native MCP support, merge this YAML into the active Hermes profile's config.yaml under mcp_servers; keep other entries. The url selects Streamable HTTP. No Jithox account, token or headers are needed. Restart Hermes after saving.
—Example task: Check whether Belgian IBAN BE68539007547034 is structurally valid. Use only one free check. Do not infer that the account exists or belongs to anyone; do not pay or change supplier data.
—Internally tested on 2026-09-29 with Hermes Agent v0.21.4: Hermes natively discovered this endpoint and completed one check_payment_change tools/call with HTTP 200, a JSON-RPC result without error and Hermes is_error:false, before a safe final answer. The narrower verify_iban example above was not that exact end-to-end task. This does not prove support in every Hermes version, an external installation, adoption, provider recommendation, repeat use, payment or revenue.
Check the outcome: Inspect the actual mcp__jithox__verify_iban tool output. Discovery, a tool description or model prose alone is not a successful call. Report missing output or errors instead of guessing. A successful check concerns IBAN structure, not account existence or ownership.
From nothing to a verified tool call with a signed receipt. No card, no application, no approval — 25 free accepted calls over 14 days, once for your workspace across every product.
Free to start
You are charged per accepted call. A failure, a refusal, a rate limit or an unavailable source costs €0,00 and never consumes a free call.
One connection, four steps
You do not create a key per server. One Jithox connection reaches every live tool and the free Labs tools; the credential is shown once on your account page and travels only as a bearer header.
1Endpoint
POST https://jithox.com/api/agent-connection/v1/mcp — Streamable HTTP, JSON answers, MCP 2025-06-18. initialize and tools/list need no credential.
2Authenticate
Authorization: Bearer <PASTE_YOUR_JITHOX_CONNECTION> — the connection credential from /mcp/account, or a ten-minute token from https://jithox.com/api/oauth/token (client_credentials: client_id = connection id, client_secret = the credential).
3Call
tools/call with the tool name exactly as listed and an x-jithox-idempotency-key; only an accepted answer is charged, at the price the tool's description states.
4Receipt
_meta.receipt (the server's signed receipt) and _meta.jithoxConnection.receiptReference in every accepted answer; your account page lists them.
The shortest working configuration for your client
Official endpoint, a safe placeholder, the minimum fields — and the exact status of each snippet. CERTIFIED means a real client completed a call on production; nothing is CERTIFIED yet.
CONFIG_READYLoaded by Claude Code against a local production build on 2026-09-06 (Connected). Not yet run on production with a real credential.
Run it once in a terminal where Claude Code is installed, with the credential from your account page in place of <PASTE_YOUR_JITHOX_CONNECTION>. Claude Desktop: Settings → Connectors → Add custom connector with the endpoint and the same Authorization header.
Claude Desktop and Claude Code speak MCP over Streamable HTTP with OAuth.
Prefer a terminal? npm install -g jithox@0.2.4 installs the Connect Kit, and jithox discover lists every tool and its price without an account or a credential. How the Connect Kit works
One safe test
First list the tools (free, no credential), then one read-only accepted call with a public company VAT number. Replace the placeholder with your own credential; never paste a credential anywhere else.
A stable code, a plain explanation, the safe next step, the human page, and a machine-readable action in error.data.recovery. The same words the funnel records.
This connection holds no server key for the product yet.
Open the account page: the connection can create one, or replace a key made by hand — never silently. page
check_connection
tool_retired
-32014
This tool was served here and is retired on purpose. Nothing ran and nothing was charged.
Choose a tool from tools/list on this endpoint, or see the tools Jithox offers now. page
choose_another_tool
Prefer the guided route? The Setup Doctor asks which AI you use, hands you the same snippet and checks what you pasted. The steps below are the long way: one key per server, which still works.
The long way: one key per server
1Discover what exists and what it costs — no account
Two public documents, no key and no account. The first lists every server, its endpoint and its tools and says which are publicly available; the second is the only price that counts, per product and per tool, with the free allowance and the rules for what is charged.
If you are an agent rather than a person, the agent context names every canonical document and what each is authoritative for, and SKILL.md is the same onboarding as an instruction file you can load.
2Create an account and a key
Sign up, verify your e-mail, then create an MCP credential from your dashboard. The credential is shown once — copy it immediately. If you lose it, rotate it; you never have to pay twice and your balance is untouched by a rotation.
Each product is its own MCP server with its own OAuth resource, so a token minted for one is refused by another. That is deliberate: a credential cannot spend somewhere you did not intend.
Product
MCP endpoint
Jithox E-Invoice
https://mcp.jithox.com/mcp
EU Import Preflight
https://import.mcp.jithox.com/mcp
EU Energy Label Preflight
https://energy.mcp.jithox.com/mcp
EU Counterparty Sanctions Preflight
https://sanctions.mcp.jithox.com/mcp
Authentication is OAuth 2.1 with PKCE (S256, mandatory). Your client discovers the authorization server from /.well-known/oauth-protected-resource and registers itself — you paste your access key once on the consent screen, and the client keeps a refreshing connection. Discovery below needs none of that; a paid tool call does.
4List the tools — copy, paste, run (no key needed)
Discovery is open on every server: initialize and tools/listneed no token and cost nothing. These two commands run in a bare terminal exactly as written — swap the URL for another product’s endpoint from the table above to explore it instead.
initializereturns the server’s name and protocol version; tools/list returns the tools and their input schemas. Both answer with plain JSON — there is no session header to carry between requests.
5Make your first call — from an MCP client, or from a terminal
A tool call spends a free call or balance, so it needs your key. An MCP client exchanges it for an OAuth token on the consent screen; a terminal sends the key itself as a bearer token and needs no browser. Every client needs the same thing — the endpoint. In VS Code that is .vscode/mcp.json:
For these authenticated product endpoints, follow the client-specific OAuth instructions on the connect page rather than the public-server installation above.
A structural VAT check is the fastest way to see the whole path — decision, evidence and a signed receipt. Ask your client to run validate_vat_number on BE0403170701. From a terminal it is one JSON-RPC request carrying your key as a bearer token. In Bash or Zsh the key is read into $JITHOX_ACCESS_KEY silently, so it never lands in shell history:
# Bash/Zsh (read -rs is not POSIX sh). Paste the key when prompted; it is read silently and never lands in shell history.
read -rs JITHOX_ACCESS_KEY && export JITHOX_ACCESS_KEY
curl -sS https://mcp.jithox.com/mcp \
-H "Authorization: Bearer $JITHOX_ACCESS_KEY" \
-H 'Content-Type: application/json' \
-H 'Accept: application/json, text/event-stream' \
-d '{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"validate_vat_number","arguments":{"vatNumber":"BE0403170701"}}}'
# Clear the key from this shell when you are done:
unset JITHOX_ACCESS_KEY
The result carries a machine-readable decision state, the evidence behind it, and a _meta.receiptyou can verify offline against the server’s published public key. Without a key this exact call returns 401 and runs nothing; a key this server does not accept is refused as invalid_api_key. Neither is ever charged.
6Know what a call costs before you make it
Prices are server-side and per accepted call. Your client never sends an amount, and nothing a client says can change a price.
Product
Price per accepted call
Tools
einvoice
€0,01
5
eu-import-preflight
€0,01
5
eu-energy-label-preflight
€0,01
5
eu-sanctions-preflight
€0,09
5
Every row here is read from the running price catalog at request time, so the products shown are exactly the ones on sale right now. If an official source is down, that product’s calls return a truthful unavailable and cost €0,00 — the price is what a call costs, not a promise the source is up this second.
7When the free calls run out
The server answers 402 payment_required with a typed payment_required object on the error: the product and tool, why (budget_exhausted or entitlement_required), the amount required in cents, your remaining free calls, and the pricing and checkout URLs to act on. chargeable is always false: it does not execute, does not charge, and does not upgrade you to anything. Add prepaid credit and repeat the same call.
—One balance covers every product — spend it wherever you like.
—Credit does not expire and there is no automatic top-up.
—Tax is charged on top of credit and is never spendable.
—A refund reverses credit; it never creates a negative balance.
8Keep the receipt, and verify it without asking us
Every accepted call answers with _meta.receipt: an Ed25519 signature over what was asked, what was answered and when. The public key is published separately from the receipt, so verifying one is a local computation — the receipt verification guide walks through it with the exact commands.
# The key that signs this server's receipts (every server publishes its own):
curl -sS https://mcp.jithox.com/receipts/public-key.pem
Your calls and every receipt they produced are also listed on your usage page.
Troubleshooting
You see
What it means
401
No valid token. Re-run the OAuth flow; your client should do this for you.
403
The token is valid but not for this resource or scope — check you are calling the product you authorized.
404 / 405
Wrong URL or method. The endpoint answers POST at the paths above; a plain browser GET returning 405 is the server working, not an outage.
402 payment_required
Free calls used up and the balance cannot cover this call. Add credit and retry the same request.
429 rate_limited
Too many calls too quickly. Honour the retry-after header; nothing was charged.
503 canary_disabled
The operator paused this server. Nothing was executed and nothing was charged.
unavailable / source_unavailable
An upstream official source did not answer. You get a truthful non-answer, never a guess, and it costs €0,00.
Credential rejected after rotation
The old credential is contained on purpose. Use the new one; your balance and free calls are unchanged.
Something not covered here? Contact — include the correlation id from the error body and we can trace the exact call.
These figures are read from the running price catalog at request time, so this page cannot promise a price the server does not charge.