AI-agent invoice generator: PDF, JSON & UBL in 11 languages via the Invovate API.
Invovate MCP Server is a free, no-signup invoice MCP server for Claude, Cursor, and other MCP clients — it generates invoices as PDF, JSON, and UBL 2.1 via the Invovate invoice API.
Let AI agents generate PDF, JSON, and UBL 2.1 invoices in 11 languages (including right-to-left Arabic, Japanese, Hindi, and Cyrillic) through the Invovate invoice API. Works with Claude Desktop, Cursor, Windsurf, and any MCP-capable client.
JSON math works with no API key; PDF/UBL output uses a free key.
| Tool | What it does | Key needed |
|---|---|---|
calculate_invoice_totals | Compute subtotal, discounts, tax, shipping, deposit, grand total, balance due — no file rendered. | No |
generate_invoice_pdf | Generate a PDF. Returns a 7-day hosted link (great for chat), or writes the file when save_path is given. | Required |
generate_invoice_ubl | Generate UBL 2.1 XML (interoperability/archival only — not regulated e-invoicing). | Yes |
get_invoice_capabilities | List supported languages, templates, currencies, and features. | No |
Sign up at https://invovate.com/auth — your key starts with inv_. Free tier,
no credit card. (calculate_invoice_totals works without a key; PDF, UBL, QR, and hosted links require a free key.)
Add to claude_desktop_config.json
(~/Library/Application Support/Claude/claude_desktop_config.json on macOS,
%APPDATA%\Claude\claude_desktop_config.json on Windows):
{
"mcpServers": {
"invovate": {
"command": "npx",
"args": ["-y", "invovate-mcp-server"],
"env": { "INVOVATE_API_KEY": "inv_your_key_here" }
}
}
}
Restart Claude Desktop. Then ask: “Create an invoice for Acme BV billing Globex for 3 consulting days at €900/day with 21% VAT, in English, and give me the PDF.”
Add the same block to the MCP config (~/.cursor/mcp.json for Cursor, or the
Windsurf MCP settings).
git clone https://github.com/LightSpeedPlusOne/invovate-mcp-server.git
cd invovate-mcp-server && npm install
INVOVATE_API_KEY=inv_your_key node src/index.js
…and point your client at it:
{
"mcpServers": {
"invovate": {
"command": "node",
"args": ["/absolute/path/to/mcp-server/src/index.js"],
"env": { "INVOVATE_API_KEY": "inv_your_key_here" }
}
}
}
| Env var | Default | Purpose |
|---|---|---|
INVOVATE_API_KEY | — | Free API key (inv_…). Enables PDF/UBL output and hosted links. |
INVOVATE_API_BASE | https://invovate.com | Override the API base (rarely needed). |
npm test # lists tools + JSON math (no key)
INVOVATE_API_KEY=inv_xxx npm test # also exercises the PDF hosted-link path
Once connected, ask your AI client in natural language:
Create an invoice for Acme Ltd for 3 hours of consulting at $120/hour. Return it as a PDF.
Generate a UBL 2.1 invoice for a SaaS subscription charged €49/month.
Make a Japanese invoice (¥) for ¥350,000 of web design with 10% consumption tax, and give me the link.
MIT © Invovate
Source-derived launch command. Check the maintainer’s required arguments and credentials before running:
npx -y invovate-mcp-serverMerge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.
{
"mcpServers": {
"io-github-lightspeedplusone-invovate-mcp-server": {
"command": "npx",
"args": [
"-y",
"invovate-mcp-server"
]
}
}
}Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.
Claude Desktop setup referenceio.github.LightSpeedPlusOne/invovate-mcp-server works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.
~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.~/.cursor/mcp.jsonRestart Cursor for changes to take effect..vscode/mcp.jsonReload VS Code window for changes to take effect.~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect..mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.