{"id":"d9320f0c-480f-41b1-9323-edb956910e01","slug":"contix-mcp","kind":"mcp","name":"contix-mcp","summary":"Remote MCP servers by contix.es: free Spanish business tools (IBAN, VIES, Modelo 303) and Veri*factu invoicing","owner":"martinschenk","repoUrl":"https://github.com/martinschenk/contix-mcp","license":"MIT","licenseTier":"permissive","trust":"community","stars":0,"match":null,"fewStars":true,"format":"mcp","createdAt":"2026-10-01T13:08:14.000Z","addedAt":"2026-10-21T05:14:06.295Z","logoUrl":"https://avatars.githubusercontent.com/u/635827?u=8d9adbd0ef4ddf09042a0213a2040317b09462c2&v=4","linkOnly":false,"collection":null,"skillPath":null,"categories":["cloud-infra","memory-knowledge"],"tags":["iban","invoicing","spain","verifactu","vies"],"runtime":"binary","local":true,"cloudCapable":false,"cloudCapability":"unknown","cloudReadyOnPlatform":false,"needsApiKey":false,"reviewed":false,"syncedAt":"2026-10-28T01:05:07.821Z","sample":false,"url":"https://conduits.dev/tools/contix-mcp","language":"","transports":["stdio"],"install":{},"requirements":{"env":[],"upstreamMayCharge":false},"tools":null,"readme":"<img src=\"assets/logo-400.png\" width=\"72\" alt=\"contix\">\n\n# contix MCP server: Spanish invoicing with Veri*factu\n\nRun your Spanish invoicing from Claude, ChatGPT, Cursor or any MCP client: customers, invoices with the Veri\\*factu hash chain and QR, payments, expenses, quotes, recurring invoices, Facturae/FACe for the public administration, Modelo 303/349/390 figures, and a workspace for your accountant (gestoría). Hosted by [contix](https://contix.es), nothing to install. Works in any language your assistant speaks; the contix panel itself is in Spanish, English and German. This repository holds the public metadata; the server code is not open source.\n\n```\nhttps://api.contix.es/api/v1/mcp\n```\n\nStreamable HTTP · OAuth 2.1 (dynamic client registration + PKCE) or API key (`Authorization: Bearer cx_live_…`, read-only or read/write) · needs a contix account (30-day trial). Irreversible steps, like finalizing an invoice into the Veri\\*factu chain, ask for explicit confirmation.\n\nSetup for Claude, ChatGPT and Cursor: [contix.es/mcp](https://contix.es/mcp/) · API reference: [contix.es/api](https://contix.es/api/) · OpenAPI: `https://api.contix.es/openapi.json`\n\n## All 80 tools\n\n**Invoices**\n\n- `create_invoice`: Create draft invoice\n- `update_invoice`: Update draft invoice\n- `get_invoice`: Get invoice details · *read-only*\n- `list_invoices`: List invoices · *read-only*\n- `finalize_invoice`: Finalize invoice (irreversible) · *asks for confirmation / irreversible*\n- `clone_invoice`: Clone invoice to draft\n- `rectify_invoice`: Rectify invoice (Veri*factu)\n- `cancel_invoice`: Cancel/annul invoice (irreversible) · *asks for confirmation / irreversible*\n- `resubmit_invoice_aeat`: Correct and resend Veri*factu record (subsanación)\n- `delete_invoice`: Delete draft invoice\n- `send_invoice`: Send invoice by email\n- `mark_invoice_sent`: Mark invoice as sent\n\n**Customers and payments**\n\n- `list_customers`: List customers · *read-only*\n- `get_customer`: Get customer · *read-only*\n- `create_customer`: Create customer\n- `update_customer`: Update customer\n- `record_payment`: Record a payment\n- `list_payments`: List payments of an invoice · *read-only*\n- `get_account_statement`: Customer account statement · *read-only*\n- `send_reminder`: Send payment reminder\n- `list_reminders_sent`: List reminders sent · *read-only*\n- `check_vat_number`: Check an EU VAT number (VIES) · *read-only*\n\n**Quotes and recurring invoices**\n\n- `list_quotes`: List quotes · *read-only*\n- `create_quote`: Create quote\n- `update_quote`: Update quote\n- `send_quote`: Send a quote by email\n- `mark_quote_sent`: Mark quote as sent\n- `convert_quote_to_invoice`: Convert quote to invoice\n- `list_recurring`: List recurring profiles · *read-only*\n- `create_recurring`: Create recurring profile\n- `update_recurring`: Update recurring profile\n- `generate_recurring`: Generate invoice from recurring profile\n\n**Expenses, suppliers and bank**\n\n- `list_expenses`: List expenses · *read-only*\n- `create_expense`: Create expense\n- `update_expense`: Edit expense\n- `delete_expense`: Delete expense\n- `attach_expense_receipt`: Attach receipt to expense\n- `list_suppliers`: List suppliers · *read-only*\n- `list_bank_imports`: List bank imports · *read-only*\n- `delete_bank_transactions`: Delete bank movements\n- `list_bank_trash`: Bank trash · *read-only*\n- `restore_bank_trash`: Restore bank movements\n\n**Tax figures and public administration**\n\n- `get_modelo`: Get AEAT tax model (modelo) · *read-only*\n- `get_libros_registro`: Libros registro (facturas expedidas / recibidas) · *read-only*\n- `check_period`: Check a period before handing it over · *read-only*\n- `get_invoice_facturae`: Get Facturae XML (B2G) · *read-only*\n- `submit_invoice_to_face`: Submit invoice to FACe (B2G)\n- `get_face_status`: Get FACe status (B2G) · *read-only*\n- `calculate_modelo_303`: Sum the Spanish VAT return (Modelo 303) · *read-only*\n- `calculate_vat`: Calculate VAT (IVA) and IRPF withholding · *read-only*\n- `get_obligation_dates`: Veri*factu and e-invoicing deadlines (Spain) · *read-only*\n- `validate_iban`: Validate an IBAN · *read-only*\n- `validate_spanish_tax_id`: Calculate/validate a Spanish DNI, NIE or CIF check character · *read-only*\n\n**Settings**\n\n- `get_invoice_series`: Get invoice series/numbering · *read-only*\n- `set_invoice_series`: Set invoice series/numbering\n- `get_quote_series`: Get quote numbering · *read-only*\n- `set_quote_series`: Set quote start number\n- `get_invoice_defaults`: Get invoice defaults · *read-only*\n- `set_invoice_defaults`: Set invoice defaults\n- `get_invoice_footer`: Get invoice footer · *read-only*\n- `set_invoice_footer`: Set invoice footer\n- `get_invoice_display`: Get invoice display options · *read-only*\n- `set_invoice_display`: Set invoice display options\n- `get_product_groups`: Get product groups · *read-only*\n- `set_product_groups`: Set product groups\n- `get_subscription_status`: Get subscription/trial status · *read-only*\n\n**For accountants (gestorías) and their clients**\n\n- `invite_gestoria`: Invite your gestoría\n- `gestoria_listar_mandantes`: List gestoría clients · *read-only*\n- `gestoria_invitar_mandante`: Invite a gestoría client\n- `gestoria_abrir_mandante`: Open a gestoría client\n- `gestoria_resumen_mandante`: Gestoría client: figures for a period · *read-only*\n- `gestoria_facturas_mandante`: Gestoría client: list invoices · *read-only*\n- `gestoria_gastos_mandante`: Gestoría client: list expenses · *read-only*\n- `gestoria_revision_mandante`: Gestoría client: what is missing · *read-only*\n- `gestoria_export`: Export all gestoría clients · *read-only*\n- `gestoria_certificado_mandante`: Compliance certificate for a gestoría client · *read-only*\n- `gestoria_comisiones`: Gestoría earnings from contix · *read-only*\n- `gestoria_cierre_config`: Quarter-close reminders: current settings · *read-only*\n- `gestoria_cierre_configurar`: Quarter-close reminders: change settings\n- `gestoria_cierre_vista_previa`: Quarter-close reminder: preview for one client · *read-only*\n\nThe MCP server, the REST API and the web panel run on the same engine. The live list is `tools/list` on the endpoint.\n\n## Free tools without an account\n\nA second, smaller server with six read-only tools, no account and no auth:\n\n```\nhttps://api.contix.es/api/v1/mcp/herramientas\n```\n\n- `validate_iban`: IBAN check (country length, ISO 13616 check digits); for Spanish IBANs also the account check digits and the bank with its BIC from the Banco de España registry. A 20-digit Spanish account number is converted to its IBAN.\n- `check_vat_number`: EU VAT number lookup in the European Commission's VIES registry.\n- `calculate_modelo_303`: sums the boxes of the Spanish quarterly VAT return with the formulas of the official AEAT form.\n- `get_obligation_dates`: Veri\\*factu and mandatory B2B e-invoicing dates from the published rules.\n- `calculate_vat`: base, VAT (IVA), optional recargo de equivalencia and IRPF withholding from an amount, also backwards from a total. It applies the rates it is given and does not choose one.\n- `validate_spanish_tax_id`: check character of a Spanish DNI, NIE or CIF; with 1 to 8 digits it computes the DNI letter.\n\nSame tools as a REST API without key: `https://api.contix.es/api/v1/herramientas` ([docs](https://contix.es/api/#herramientas)). In the browser: [contix.es/herramientas](https://contix.es/herramientas/).\n\n## Claude Code plugin\n\nBoth servers plus a short skill on when to use them, in one step:\n\n```\n/plugin install contix --marketplace martinschenk/contix-mcp\n```\n\n## Configuration\n\n```json\n{\n  \"mcpServers\": {\n    \"contix\": { \"type\": \"http\", \"url\": \"https://api.contix.es/api/v1/mcp\" },\n    \"contix-herramientas\": { \"type\": \"http\", \"url\": \"https://api.contix.es/api/v1/mcp/herramientas\" }\n  }\n}\n```\n\nClients without OAuth: add `\"headers\": { \"Authorization\": \"Bearer cx_live_YOUR_KEY\" }` to the `contix` entry; the key is created in the contix panel under Ajustes → API keys.\n\n## Registry\n\nBoth servers are in the [Official MCP Registry](https://registry.modelcontextprotocol.io/v0/servers?search=contix) as `es.contix/contix` and `es.contix/herramientas` (the `server.json` files here are copies).\n\n## Contact\n\nmartin@contix.es · [Privacy](https://contix.es/legal/privacidad/) · [Terms](https://contix.es/legal/terminos/)\n\ncontix is software that issues invoices, not a tax advisory service. Results are what you enter, computed; what is correct for your case you decide with your gestoría.\n"}