# Frihet

AI-native business management MCP server. 31 tools for invoicing, expenses, clients, products, quotes, tax compliance (VeriFactu), and webhooks. Multi-currency (40 currencies), OCR scanning, Stripe C…

## Quick Start

```bash
# Connect this server (installs CLI if needed)
npx -y @smithery/cli@latest mcp add frihet/frihet-mcp

# Browse available tools
npx -y @smithery/cli@latest tool list frihet/frihet-mcp

# Get full schema for a tool
npx -y @smithery/cli@latest tool get frihet/frihet-mcp list_invoices

# Call a tool
npx -y @smithery/cli@latest tool call frihet/frihet-mcp list_invoices '{}'
```

## Direct MCP Connection

Endpoint: `https://frihet.run.tools`

## Tools (31)

- `list_invoices` — List all invoices with optional pagination. Returns a paginated list of invoices sorted by creation date. / Lista todas…
- `get_invoice` — Get a single invoice by its ID. Returns the full invoice including line items, totals, and status. / Obtiene una factur…
- `create_invoice` — Create a new invoice. Requires client name and at least one line item. The invoice number is auto-generated. / Crea una…
- `update_invoice` — Update an existing invoice. Only the provided fields will be changed. / Actualiza una factura existente. Solo se modifi…
- `delete_invoice` — Permanently delete an invoice by its ID. This action cannot be undone. / Elimina permanentemente una factura por su ID.…
- `search_invoices` — Search invoices by client name. Useful for finding all invoices for a specific client. / Busca facturas por nombre de c…
- `list_expenses` — List all expenses with optional pagination. / Lista todos los gastos con paginacion opcional.
- `get_expense` — Get a single expense by its ID. / Obtiene un gasto por su ID.
- `create_expense` — Record a new expense. Requires a description and amount. Useful for tracking business costs, deductible expenses, and v…
- `update_expense` — Update an existing expense. Only the provided fields will be changed. / Actualiza un gasto existente. Solo se modifican…
- `delete_expense` — Permanently delete an expense by its ID. This action cannot be undone. / Elimina permanentemente un gasto por su ID. Es…
- `list_clients` — List all clients/customers with optional pagination. Returns contact info, tax IDs, and addresses. / Lista todos los cl…
- `get_client` — Get a single client by their ID. Returns full contact details. / Obtiene un cliente por su ID. Devuelve todos los datos…
- `create_client` — Create a new client/customer. Requires at minimum a name. Clients are used when creating invoices and quotes. / Crea un…
- `update_client` — Update an existing client. Only the provided fields will be changed. / Actualiza un cliente existente. Solo se modifica…
- `delete_client` — Permanently delete a client by their ID. This action cannot be undone. Warning: this may affect existing invoices and q…
- `list_products` — List all products/services with optional pagination. Products are reusable items that can be added to invoices and quot…
- `get_product` — Get a single product/service by its ID. / Obtiene un producto/servicio por su ID.
- `create_product` — Create a new product or service. Requires a name and unit price. Products can be referenced when creating invoices and …
- `update_product` — Update an existing product. Only the provided fields will be changed. / Actualiza un producto existente. Solo se modifi…
- `delete_product` — Permanently delete a product by its ID. This action cannot be undone. / Elimina permanentemente un producto por su ID. …
- `list_quotes` — List all quotes/estimates with optional pagination. Quotes are proposals sent to clients before they become invoices. /…
- `get_quote` — Get a single quote/estimate by its ID. Returns the full quote with line items and totals. / Obtiene un presupuesto por …
- `create_quote` — Create a new quote/estimate for a client. Requires client name and at least one line item. Quotes can later be converte…
- `update_quote` — Update an existing quote. Only the provided fields will be changed. / Actualiza un presupuesto existente. Solo se modif…
- `delete_quote` — Permanently delete a quote by its ID. This action cannot be undone. / Elimina permanentemente un presupuesto por su ID.…
- `list_webhooks` — List all configured webhooks. Webhooks send HTTP POST notifications when events occur in Frihet. / Lista todos los webh…
- `get_webhook` — Get a single webhook configuration by its ID. / Obtiene la configuracion de un webhook por su ID.
- `create_webhook` — Register a new webhook endpoint. You must specify the URL to receive notifications and which events to subscribe to (e.…
- `update_webhook` — Update an existing webhook configuration. Only the provided fields will be changed. / Actualiza la configuracion de un …
- `delete_webhook` — Permanently delete a webhook by its ID. Notifications will stop immediately. / Elimina permanentemente un webhook por s…

```bash
# Get full input/output schema for a tool
npx -y @smithery/cli@latest tool get frihet/frihet-mcp <tool-name>
```

## Resources

- `frihet://api/schema` — OpenAPI schema summary: all endpoints, authentication method, rate limits, pagination, and error codes. / Resumen del e…
- `frihet://tax/rates` — Current tax rates by Spanish fiscal zone: Peninsula IVA (21/10/4%), Canary Islands IGIC (7/3/0%), Ceuta IPSI, EU revers…
- `frihet://tax/calendar` — Spanish quarterly tax calendar with filing deadlines for Modelo 303, 130, 390, 420 (IGIC), and annual returns. Includes…
- `frihet://config/expense-categories` — The 8 expense categories in Frihet with deductibility rules, IVA treatment, and amortization periods. Essential for cor…
- `frihet://config/invoice-statuses` — Invoice status flow in Frihet: draft → sent → paid/overdue → cancelled. Includes transition rules, automation triggers,…

## Prompts (5)

- `monthly-close` (month) — Guide through closing the month: review unpaid invoices, categorize uncategorized expenses, check tax obligations, and …
- `onboard-client` (clientName, country, region) — Set up a new client: create the client record, determine correct tax rates based on their location, and optionally crea…
- `quarterly-tax-prep` (quarter, fiscalZone) — Prepare for quarterly tax filing: list all invoices and expenses for the quarter, calculate IVA/IGIC totals, identify d…
- `overdue-followup` — Find all overdue invoices, draft follow-up messages for each client, and suggest payment reminders. / Buscar facturas v…
- `expense-batch` (fiscalZone) — Process a batch of expenses: help categorize each one, apply correct tax rates, flag items needing receipts. / Procesar…
