berthelius

frihet-mcp

Community berthelius
Updated

MCP server for Frihet ERP — manage invoices, expenses, clients, products and quotes with AI

AI-native MCP server for business management. Servidor MCP nativo con IA para gestión empresarial.

What is this

An MCP server that connects your AI assistant to Frihet ERP. Create invoices by talking. Query expenses in natural language. Manage your entire business from your IDE.

You:     "Create an invoice for TechStart SL, 40 hours of consulting at 75 EUR/hour, due March 1st"
Claude:  Done. Invoice INV-2026-089 created. Total: 3,000.00 EUR + 21% IVA = 3,630.00 EUR.

31 tools. 6 resources. Zero boilerplate.

Install

One line. Pick your tool.

Claude Code / Claude Desktop

{
  "mcpServers": {
    "frihet": {
      "command": "npx",
      "args": ["-y", "@frihet/mcp-server"],
      "env": {
        "FRIHET_API_KEY": "fri_your_key_here"
      }
    }
  }
}
Tool Config file
Claude Code ~/.claude/mcp.json
Claude Desktop ~/Library/Application Support/Claude/claude_desktop_config.json
Cursor .cursor/mcp.json or ~/.cursor/mcp.json
Windsurf ~/.windsurf/mcp.json
Cline VS Code settings or .cline/mcp.json
Codex CLI ~/.codex/config.toml (MCP section)

The JSON config is identical for all tools. Only the file path changes.

Remote (no install)

If you prefer not to install anything locally, use the hosted endpoint at mcp.frihet.io:

{
  "mcpServers": {
    "frihet": {
      "type": "streamable-http",
      "url": "https://mcp.frihet.io/mcp",
      "headers": {
        "Authorization": "Bearer fri_your_key_here"
      }
    }
  }
}

Same 31 tools, zero local dependencies. Runs on Cloudflare Workers.

Get your API key

  1. Log into app.frihet.io
  2. Go to Settings > API
  3. Click Create API key
  4. Copy the key (starts with fri_) -- it's only shown once

What you can do

Talk to your ERP. These are real prompts, not marketing copy.

Invoicing

"Show me all unpaid invoices"
"Create an invoice for Acme SL with 10h of consulting at 95/hour"
"Mark invoice abc123 as paid"
"How much has ClientName been invoiced this year?"

Expenses

"Log a 59.99 EUR expense for Adobe Creative Cloud, category: software, tax-deductible"
"List all expenses from January"
"What did I spend on travel last quarter?"

Clients

"Add a new client: TechStart SL, NIF B12345678, email [email protected]"
"Show me all my clients"
"Update ClientName's address to Calle Mayor 1, Madrid 28001"

Quotes

"Create a quote for Design Studio: logo design (2000 EUR) + brand guidelines (3500 EUR)"
"Show me all pending quotes"

Webhooks

"Set up a webhook to notify https://my-app.com/hook when invoices are paid"
"List all my active webhooks"

Tools reference

Invoices / Facturas

Tool What it does
list_invoices List invoices with pagination
get_invoice Get full invoice details by ID
create_invoice Create a new invoice with line items
update_invoice Update any invoice field
delete_invoice Permanently delete an invoice
search_invoices Find invoices by client name

Expenses / Gastos

Tool What it does
list_expenses List expenses with pagination
get_expense Get expense details
create_expense Record a new expense
update_expense Modify an expense
delete_expense Delete an expense

Clients / Clientes

Tool What it does
list_clients List all clients
get_client Get client details
create_client Register a new client
update_client Update client info
delete_client Remove a client

Products / Productos

Tool What it does
list_products List products and services
get_product Get product details
create_product Add a product or service
update_product Update pricing or details
delete_product Remove a product

Quotes / Presupuestos

Tool What it does
list_quotes List all quotes
get_quote Get quote details
create_quote Draft a new quote
update_quote Modify a quote
delete_quote Delete a quote

Webhooks

Tool What it does
list_webhooks List configured webhooks
get_webhook Get webhook details
create_webhook Register a new webhook endpoint
update_webhook Modify events or URL
delete_webhook Remove a webhook

How it works

Your AI assistant          frihet-mcp           Frihet API
      |                        |                    |
      |-- "create invoice" --> |                    |
      |                        |-- POST /invoices ->|
      |                        |<-- 201 Created ----|
      |<-- "Invoice created" --|                    |

The MCP server translates natural language tool calls into REST API requests. It handles authentication, rate limiting (automatic retry on 429), pagination, and error mapping. You just talk.

Environment variables

Variable Required Default
FRIHET_API_KEY Yes --
FRIHET_API_URL No https://api.frihet.io/v1

FRIHET_API_URL is useful if you self-host or want to point to a staging environment.

API limits

Limit Value
Requests per minute 100 per API key
Results per page 100 max (50 default)
Request body 1 MB max
Webhook payload 100 KB max
Webhooks per account 20 max

Rate limiting is handled automatically with exponential backoff. You don't need to think about it.

Claude Code Skill

Beyond raw MCP tools, Frihet ships a Claude Code skill that adds business intelligence: Spanish tax context, workflow recipes (monthly close, quarterly tax prep, overdue follow-up), formatted financial reports, and natural language commands.

Install the skill

# Clone and symlink
git clone https://github.com/berthelius/frihet-mcp.git
ln -s "$(pwd)/frihet-mcp/skill" ~/.claude/skills/frihet

Commands

Command What it does
/frihet status Account overview, recent activity, pending payments
/frihet invoice Create, list, search invoices
/frihet expense Log and query expenses
/frihet clients Manage client database
/frihet quote Create and manage quotes
/frihet report Financial summaries (P&L, quarterly, overdue)
/frihet webhooks Configure automation triggers
/frihet setup Guided setup and connection test

The skill knows about IVA rates, IRPF retention, Modelo 303 prep, expense deductibility rules, and Verifactu compliance. It's your accountant in the terminal.

Full documentation: docs.frihet.io/desarrolladores/skill-claude-code

Development

git clone https://github.com/berthelius/frihet-mcp.git
cd frihet-mcp
npm install
npm run build

Run locally:

FRIHET_API_KEY=fri_xxx node dist/index.js

Test with the MCP Inspector:

npx @modelcontextprotocol/inspector node dist/index.js

Why Frihet MCP

Frihet Holded Billin Quipu Anfix
Official MCP server Yes No (third-party) No No No
Claude / Cursor / Windsurf Yes No No No No
Public REST API Yes Yes Limited Yes No
Webhooks with HMAC verification Yes No No No No
AI assistant built-in Yes No No No No
Open source tooling Yes No No No No

The first business management platform with an official MCP server. No other ERP has this.

Links

License

MIT. See LICENSE.

Built by BRTHLS.

MCP Server · Populars

MCP Server · New

    easyshell-ai

    EasyShell

    Lightweight server management & intelligent ops platform with Docker one-click deployment, batch script execution, web terminal, and AI-powered operations.

    Community easyshell-ai
    AVIDS2

    Memorix

    Cross-Agent Memory Bridge Persistent memory for AI coding agents across 10 IDEs (Cursor, Windsurf, Claude Code, Codex, Copilot, Kiro, Antigravity, OpenCode, Trae, Gemini CLI) via MCP. Team collaboration, auto-cleanup, mini-skills, workspace sync. Never re-explain your project again.

    Community AVIDS2
    zw008

    VMware AIops

    VMware vCenter/ESXi AI-powered monitoring and operations. Two skills: vmware-monitor (read-only, safe) and vmware-aiops (full operations) | Claude Code Skill

    Community zw008
    Dave-London

    Pare

    Dev tools, optimized for agents. Structured, token-efficient MCP servers for git, test runners, npm, Docker, and more.

    Community Dave-London
    luckyPipewrench

    Pipelock

    Firewall for AI agents. DLP scanning, SSRF protection, bidirectional MCP scanning, tool poisoning detection, and workspace integrity monitoring.

    Community luckyPipewrench