CCM
/MCP
SkillsMCPMarketplacesDigestToolsAdvertise

This week in Claude

Every Monday: Claude Code, Agent SDK, MCP, and the Anthropic platform moves worth your time.

Skills by Category
Frontend DevelopmentBackend & APIsTesting & QASecurityDevOps & CI/CDGit & Pull RequestsDocumentationCode Review & QualityAI & Agent BuildingSkill Development
MCP Servers by Category
Sales & MarketingWeb & Browser AutomationDatabasesAI & LLM ToolsCloud & InfrastructureCommunication & MessagingDeveloper ToolsDesign & CreativeDocuments & KnowledgeSearch & Web Crawling
Marketplaces by Category
AI Agents & OrchestrationLLM IntegrationDevelopment ToolsFrontend & UIBackend & APIsDatabasesTesting & Code QualityDevOps & CloudSecurity & ComplianceGit & Version Control

Claude Code Marketplaces

Discover Claude Code plugins, extensions, and tools. Automatically updated directory of Anthropic Claude AI marketplaces with development tools, productivity plugins, and integrations.

Resources

  • Browse Skills
  • Browse MCP Servers
  • Browse Marketplaces
  • Skill index
  • MCP index
  • Marketplace index
  • Plugins Reference

Community

  • About
  • Tools
  • Feedback
  • Privacy Policy
  • Advertise

Built for the Claude Code community with Claude Code by mertbuilds.com

Independent project, not affiliated with Anthropic
frihet-io avatar

Frihet ERP

frihet-io/frihet-mcp
631 toolsSTDIO, HTTPregistry active
Summary

A full-featured interface to Frihet's business management platform, exposing 152 tools across invoicing, expenses, CRM, accounting, and payroll. You get structured CRUD operations over the REST API: create invoices with line items, log expenses, manage client records, track activities, generate quotes, and configure webhooks. Supports both local stdio via npx and a remote Cloudflare Workers endpoint with OAuth 2.0 or API key auth. Built for natural language workflows where you describe what you want and the AI creates, queries, or modifies business records. Handles everything from "show unpaid invoices over 1,000 EUR" to "create an invoice for 40 hours at 75 EUR/hour due March 1st" without leaving your IDE or chat interface.

CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
inference shell
inference shell
create and run specialised agents in minutes
build now →
MCP-ready Email SendingMCP-ready Email Sending
MCP-ready Email Sending
Plug Mailtrap into your AI workflow and let it handle the email.
Connect Mailtrap MCP →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Capacitor - Shared memory for your team’s coding agents.
Capacitor - Shared memory for your team’s coding agents.
Make coding agent sessions - Searchable, Shareable, Vendor-neutral & Scored.
Try For Free →
CodeScene MCP ServerCodeScene MCP Server
CodeScene MCP Server
Your agent targets a perfect 10 Code Health score. Deterministic. Every commit.
Try For Free →
Give your AI the whole web as clean markdownGive your AI the whole web as clean markdown
Give your AI the whole web as clean markdown
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
belt - the only tool your agent needs
belt - the only tool your agent needs
belt cli automatically finds the best tools and skills for your agent. image, video, music, tts...
one prompt install →
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
inference shell
inference shell
create and run specialised agents in minutes
build now →
MCP-ready Email SendingMCP-ready Email Sending
MCP-ready Email Sending
Plug Mailtrap into your AI workflow and let it handle the email.
Connect Mailtrap MCP →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Capacitor - Shared memory for your team’s coding agents.
Capacitor - Shared memory for your team’s coding agents.
Make coding agent sessions - Searchable, Shareable, Vendor-neutral & Scored.
Try For Free →
CodeScene MCP ServerCodeScene MCP Server
CodeScene MCP Server
Your agent targets a perfect 10 Code Health score. Deterministic. Every commit.
Try For Free →
Give your AI the whole web as clean markdownGive your AI the whole web as clean markdown
Give your AI the whole web as clean markdown
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
belt - the only tool your agent needs
belt - the only tool your agent needs
belt cli automatically finds the best tools and skills for your agent. image, video, music, tts...
one prompt install →

Tools

Public tool metadata for what this MCP can expose to an agent.

31 tools
list_invoicesList all invoices with optional pagination. Returns a paginated list of invoices sorted by creation date. / Lista todas las facturas con paginacion opcional. Devuelve una lista paginada de facturas ordenadas por fecha de creacion.2 params

List all invoices with optional pagination. Returns a paginated list of invoices sorted by creation date. / Lista todas las facturas con paginacion opcional. Devuelve una lista paginada de facturas ordenadas por fecha de creacion.

Parameters* required
limitinteger
offsetinteger
get_invoiceGet a single invoice by its ID. Returns the full invoice including line items, totals, and status. / Obtiene una factura por su ID. Devuelve la factura completa con conceptos, totales y estado.1 params

Get a single invoice by its ID. Returns the full invoice including line items, totals, and status. / Obtiene una factura por su ID. Devuelve la factura completa con conceptos, totales y estado.

Parameters* required
idstring
create_invoiceCreate a new invoice. Requires client name and at least one line item. The invoice number is auto-generated. / Crea una nueva factura. Requiere nombre del cliente y al menos un concepto. El numero de factura se genera automaticamente.6 params

Create a new invoice. Requires client name and at least one line item. The invoice number is auto-generated. / Crea una nueva factura. Requiere nombre del cliente y al menos un concepto. El numero de factura se genera automaticamente.

Parameters* required
clientNamestring
dueDatestring
itemsarray
notesstring
statusstring
one of draft · sent · paid · overdue · cancelled
taxRatenumber
update_invoiceUpdate an existing invoice. Only the provided fields will be changed. / Actualiza una factura existente. Solo se modifican los campos proporcionados.7 params

Update an existing invoice. Only the provided fields will be changed. / Actualiza una factura existente. Solo se modifican los campos proporcionados.

Parameters* required
clientNamestring
dueDatestring
idstring
itemsarray
notesstring
statusstring
one of draft · sent · paid · overdue · cancelled
taxRatenumber
delete_invoicePermanently delete an invoice by its ID. This action cannot be undone. / Elimina permanentemente una factura por su ID. Esta accion no se puede deshacer.1 params

Permanently delete an invoice by its ID. This action cannot be undone. / Elimina permanentemente una factura por su ID. Esta accion no se puede deshacer.

Parameters* required
idstring
search_invoicesSearch invoices by client name. Useful for finding all invoices for a specific client. / Busca facturas por nombre de cliente. Util para encontrar todas las facturas de un cliente concreto.3 params

Search invoices by client name. Useful for finding all invoices for a specific client. / Busca facturas por nombre de cliente. Util para encontrar todas las facturas de un cliente concreto.

Parameters* required
clientNamestring
limitinteger
offsetinteger
list_expensesList all expenses with optional pagination. / Lista todos los gastos con paginacion opcional.2 params

List all expenses with optional pagination. / Lista todos los gastos con paginacion opcional.

Parameters* required
limitinteger
offsetinteger
get_expenseGet a single expense by its ID. / Obtiene un gasto por su ID.1 params

Get a single expense by its ID. / Obtiene un gasto por su ID.

Parameters* required
idstring
create_expenseRecord a new expense. Requires a description and amount. Useful for tracking business costs, deductible expenses, and vendor payments. / Registra un nuevo gasto. Requiere descripcion e importe. Util para seguimiento de costes, gastos deducibles y pagos a proveedores.6 params

Record a new expense. Requires a description and amount. Useful for tracking business costs, deductible expenses, and vendor payments. / Registra un nuevo gasto. Requiere descripcion e importe. Util para seguimiento de costes, gastos deducibles y pagos a proveedores.

Parameters* required
amountnumber
categorystring
datestring
descriptionstring
taxDeductibleboolean
vendorstring
update_expenseUpdate an existing expense. Only the provided fields will be changed. / Actualiza un gasto existente. Solo se modifican los campos proporcionados.7 params

Update an existing expense. Only the provided fields will be changed. / Actualiza un gasto existente. Solo se modifican los campos proporcionados.

Parameters* required
amountnumber
categorystring
datestring
descriptionstring
idstring
taxDeductibleboolean
vendorstring
delete_expensePermanently delete an expense by its ID. This action cannot be undone. / Elimina permanentemente un gasto por su ID. Esta accion no se puede deshacer.1 params

Permanently delete an expense by its ID. This action cannot be undone. / Elimina permanentemente un gasto por su ID. Esta accion no se puede deshacer.

Parameters* required
idstring
list_clientsList all clients/customers with optional pagination. Returns contact info, tax IDs, and addresses. / Lista todos los clientes con paginacion opcional. Devuelve informacion de contacto, NIF/CIF y direcciones.2 params

List all clients/customers with optional pagination. Returns contact info, tax IDs, and addresses. / Lista todos los clientes con paginacion opcional. Devuelve informacion de contacto, NIF/CIF y direcciones.

Parameters* required
limitinteger
offsetinteger
get_clientGet a single client by their ID. Returns full contact details. / Obtiene un cliente por su ID. Devuelve todos los datos de contacto.1 params

Get a single client by their ID. Returns full contact details. / Obtiene un cliente por su ID. Devuelve todos los datos de contacto.

Parameters* required
idstring
create_clientCreate a new client/customer. Requires at minimum a name. Clients are used when creating invoices and quotes. / Crea un nuevo cliente. Requiere como minimo un nombre. Los clientes se usan al crear facturas y presupuestos.5 params

Create a new client/customer. Requires at minimum a name. Clients are used when creating invoices and quotes. / Crea un nuevo cliente. Requiere como minimo un nombre. Los clientes se usan al crear facturas y presupuestos.

Parameters* required
addressobject
emailstring
namestring
phonestring
taxIdstring
update_clientUpdate an existing client. Only the provided fields will be changed. / Actualiza un cliente existente. Solo se modifican los campos proporcionados.6 params

Update an existing client. Only the provided fields will be changed. / Actualiza un cliente existente. Solo se modifican los campos proporcionados.

Parameters* required
addressobject
emailstring
idstring
namestring
phonestring
taxIdstring
delete_clientPermanently delete a client by their ID. This action cannot be undone. Warning: this may affect existing invoices and quotes referencing this client. / Elimina permanentemente un cliente por su ID. Esta accion no se puede deshacer. Advertencia: puede afectar a facturas y presu...1 params

Permanently delete a client by their ID. This action cannot be undone. Warning: this may affect existing invoices and quotes referencing this client. / Elimina permanentemente un cliente por su ID. Esta accion no se puede deshacer. Advertencia: puede afectar a facturas y presu...

Parameters* required
idstring
list_productsList all products/services with optional pagination. Products are reusable items that can be added to invoices and quotes. / Lista todos los productos/servicios con paginacion opcional. Los productos son conceptos reutilizables para facturas y presupuestos.2 params

List all products/services with optional pagination. Products are reusable items that can be added to invoices and quotes. / Lista todos los productos/servicios con paginacion opcional. Los productos son conceptos reutilizables para facturas y presupuestos.

Parameters* required
limitinteger
offsetinteger
get_productGet a single product/service by its ID. / Obtiene un producto/servicio por su ID.1 params

Get a single product/service by its ID. / Obtiene un producto/servicio por su ID.

Parameters* required
idstring
create_productCreate a new product or service. Requires a name and unit price. Products can be referenced when creating invoices and quotes for faster data entry. / Crea un nuevo producto o servicio. Requiere nombre y precio unitario. Los productos se pueden usar al crear facturas y presupu...6 params

Create a new product or service. Requires a name and unit price. Products can be referenced when creating invoices and quotes for faster data entry. / Crea un nuevo producto o servicio. Requiere nombre y precio unitario. Los productos se pueden usar al crear facturas y presupu...

Parameters* required
descriptionstring
namestring
skustring
taxRatenumber
unitstring
unitPricenumber
update_productUpdate an existing product. Only the provided fields will be changed. / Actualiza un producto existente. Solo se modifican los campos proporcionados.7 params

Update an existing product. Only the provided fields will be changed. / Actualiza un producto existente. Solo se modifican los campos proporcionados.

Parameters* required
descriptionstring
idstring
namestring
skustring
taxRatenumber
unitstring
unitPricenumber
delete_productPermanently delete a product by its ID. This action cannot be undone. / Elimina permanentemente un producto por su ID. Esta accion no se puede deshacer.1 params

Permanently delete a product by its ID. This action cannot be undone. / Elimina permanentemente un producto por su ID. Esta accion no se puede deshacer.

Parameters* required
idstring
list_quotesList all quotes/estimates with optional pagination. Quotes are proposals sent to clients before they become invoices. / Lista todos los presupuestos con paginacion opcional. Los presupuestos son propuestas enviadas a clientes antes de facturar.2 params

List all quotes/estimates with optional pagination. Quotes are proposals sent to clients before they become invoices. / Lista todos los presupuestos con paginacion opcional. Los presupuestos son propuestas enviadas a clientes antes de facturar.

Parameters* required
limitinteger
offsetinteger
get_quoteGet a single quote/estimate by its ID. Returns the full quote with line items and totals. / Obtiene un presupuesto por su ID. Devuelve el presupuesto completo con conceptos y totales.1 params

Get a single quote/estimate by its ID. Returns the full quote with line items and totals. / Obtiene un presupuesto por su ID. Devuelve el presupuesto completo con conceptos y totales.

Parameters* required
idstring
create_quoteCreate a new quote/estimate for a client. Requires client name and at least one line item. Quotes can later be converted to invoices. / Crea un nuevo presupuesto para un cliente. Requiere nombre del cliente y al menos un concepto. Los presupuestos se pueden convertir en factur...5 params

Create a new quote/estimate for a client. Requires client name and at least one line item. Quotes can later be converted to invoices. / Crea un nuevo presupuesto para un cliente. Requiere nombre del cliente y al menos un concepto. Los presupuestos se pueden convertir en factur...

Parameters* required
clientNamestring
itemsarray
notesstring
statusstring
one of draft · sent · accepted · rejected · expired
validUntilstring
update_quoteUpdate an existing quote. Only the provided fields will be changed. / Actualiza un presupuesto existente. Solo se modifican los campos proporcionados.6 params

Update an existing quote. Only the provided fields will be changed. / Actualiza un presupuesto existente. Solo se modifican los campos proporcionados.

Parameters* required
clientNamestring
idstring
itemsarray
notesstring
statusstring
one of draft · sent · accepted · rejected · expired
validUntilstring
delete_quotePermanently delete a quote by its ID. This action cannot be undone. / Elimina permanentemente un presupuesto por su ID. Esta accion no se puede deshacer.1 params

Permanently delete a quote by its ID. This action cannot be undone. / Elimina permanentemente un presupuesto por su ID. Esta accion no se puede deshacer.

Parameters* required
idstring
list_webhooksList all configured webhooks. Webhooks send HTTP POST notifications when events occur in Frihet. / Lista todos los webhooks configurados. Los webhooks envian notificaciones HTTP POST cuando ocurren eventos en Frihet.2 params

List all configured webhooks. Webhooks send HTTP POST notifications when events occur in Frihet. / Lista todos los webhooks configurados. Los webhooks envian notificaciones HTTP POST cuando ocurren eventos en Frihet.

Parameters* required
limitinteger
offsetinteger
get_webhookGet a single webhook configuration by its ID. / Obtiene la configuracion de un webhook por su ID.1 params

Get a single webhook configuration by its ID. / Obtiene la configuracion de un webhook por su ID.

Parameters* required
idstring
create_webhookRegister a new webhook endpoint. You must specify the URL to receive notifications and which events to subscribe to (e.g. 'invoice.created', 'invoice.paid', 'expense.created'). / Registra un nuevo endpoint de webhook. Debes especificar la URL y los eventos a los que suscribirt...4 params

Register a new webhook endpoint. You must specify the URL to receive notifications and which events to subscribe to (e.g. 'invoice.created', 'invoice.paid', 'expense.created'). / Registra un nuevo endpoint de webhook. Debes especificar la URL y los eventos a los que suscribirt...

Parameters* required
activeboolean
eventsarray
secretstring
urlstring
update_webhookUpdate an existing webhook configuration. Only the provided fields will be changed. / Actualiza la configuracion de un webhook. Solo se modifican los campos proporcionados.5 params

Update an existing webhook configuration. Only the provided fields will be changed. / Actualiza la configuracion de un webhook. Solo se modifican los campos proporcionados.

Parameters* required
activeboolean
eventsarray
idstring
secretstring
urlstring
delete_webhookPermanently delete a webhook by its ID. Notifications will stop immediately. / Elimina permanentemente un webhook por su ID. Las notificaciones se detendran inmediatamente.1 params

Permanently delete a webhook by its ID. Notifications will stop immediately. / Elimina permanentemente un webhook por su ID. Las notificaciones se detendran inmediatamente.

Parameters* required
idstring

frihet-mcp

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

Works with Claude · ChatGPT · Cursor · Windsurf · Cline · Antigravity · Codex · Copilot · Gemini CLI — and any MCP-compatible client.

npm version npm downloads Smithery installs MCP Registry license 157 canonical catalogue operations node >=20 TypeScript

Frihet MCP — talk to your ERP in natural language


Distribution

ChannelStatusInstall
npmLivenpx @frihet/mcp-server
Remote endpointLivehttps://mcp.frihet.io/mcp (zero install, OAuth or API key)
SmitheryLivesmithery.ai/servers/frihet/frihet-mcp
MCP RegistryLiveregistry.modelcontextprotocol.io
GlamaLiveglama.ai/mcp/servers/Frihet-io/frihet-mcp
mcp.soAuto-index (unverified)mcp.so — indexes from npm + GitHub
PulseMCPAuto-index (unverified)pulsemcp.com — indexes from npm + GitHub
Cursor MarketplaceComing sooncursor.com/marketplace
ChatGPT AppsComing soonchatgpt.com
Anthropic Claude DirectoryComing soonclaude.ai/settings/connectors

Surface truth: the catalogue contains 157 canonical operations. The local full profile serves those plus 5 fiscal alias names (162 names). The hosted grouped profile also adds 3 local discovery names (165 names). Catalogue membership is not a promise that a backing API is enabled for every workspace.


What is this

An MCP server that connects your AI assistant to Frihet. 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.

157 canonical operations. Five fiscal aliases. Ten prompts. The local package serves 11 resources; the hosted Worker deliberately serves the 7 static resources, while API-backed workspace resources remain local-profile only.


Try it instantly (no signup)

Kick the tires with zero setup — no account, no API key:

FRIHET_DEMO=1 npx -y @frihet/mcp-server

In demo mode the server answers from realistic example fixtures (Spanish invoices with IVA/IGIC, expenses, clients, products, a bank account, and more) — every record uses demo_-prefixed IDs and the server prints a DEMO MODE banner on startup. Nothing is persisted and no network call is ever made. Writes are simulated and fiscal actions (e-invoice, VeriFactu, TicketBAI, FACe, payroll) return a clearly-labeled simulation — never a real submission to any tax authority.

When you're ready for your real data, drop the flag and add your key (app.frihet.io → Settings → API keys). See Install below.


For AI agents

If you are an agent reading this repository rather than a person reading a page, everything you need is machine-readable and generated from the running server — you do not have to parse this README.

WhatWhere
Onboarding contract: quickstart per client, auth, safe workflow, human-authority tool lists, error recoverydocs/agent-onboarding.json — also shipped inside the npm package
Per-tool capability truth: callability, writesFrihet, externalInteraction, externalSideEffects_meta["io.frihet/capability"] on every entry of tools/list
How to behave once connectedthe instructions string returned by initialize — your client hands it to you automatically

Three rules the contract encodes, in short:

  1. Orient before acting. get_business_context and the frihet://tax/rates resource decide the correct fiscal treatment. Do not recall a Spanish tax rate from memory.
  2. Draft, show, stop. create_invoice, create_quote and create_credit_note all default to status=draft — no fiscal number, no hash, nothing sent to a tax authority. Present the draft and hand back.
  3. Human authority is not yours to assume. Any tool with a non-empty externalSideEffects reaches a client's inbox, a webhook, money, or AEAT / VeriFactu / TicketBAI / FACe. Several also take confirm=true; that flag records a human decision — never set it to satisfy your own plan.

docs/agent-onboarding.json is regenerated from the live surface by npm run generate:agent-onboarding and gated in CI by npm run gate:agent-onboarding, so its tool lists and counts cannot drift from the server.


Install

One-line (Claude Code, Cursor, Copilot, Codex, Windsurf, Gemini CLI, and more)

npx skills add Frihet-io/frihet-mcp

Claude Code plugin (skill + MCP server in one install)

This repository is also a Claude Code plugin (frihet-erp): installing it wires up both the business-management skill and the MCP server.

# Try it locally
claude --plugin-dir /path/to/frihet-mcp

Once available in the community marketplace:

/plugin marketplace add anthropics/claude-plugins-community
/plugin install frihet-erp@claude-community

Skill invocation: /frihet-erp:frihet-mcp. The bundled .mcp.json launches @frihet/mcp-server via npx — set FRIHET_API_KEY in your environment (get one at app.frihet.io → Settings → API keys).

Claude Code — one command

claude mcp add frihet -s user -e FRIHET_API_KEY=fri_your_key_here -- npx -y @frihet/mcp-server
claude mcp list          # verify: frihet ✓ Connected

The CLI owns the config file, so there is nothing to hand-edit and no path to get wrong. (User scope writes ~/.claude.json, not ~/.claude/mcp.json.)

Codex CLI — one command

codex mcp add frihet --env FRIHET_API_KEY=fri_your_key_here -- npx -y @frihet/mcp-server
codex mcp list           # verify

Codex config is TOML, not JSON. codex mcp add writes:

[mcp_servers.frihet]
command = "npx"
args = ["-y", "@frihet/mcp-server"]

[mcp_servers.frihet.env]
FRIHET_API_KEY = "fri_your_key_here"

Pasting a JSON mcpServers block into ~/.codex/config.toml is a TOML parse error that takes down your whole Codex config, not just this server. Use the command above.

Claude Desktop, Cursor, Windsurf, Cline — JSON config

{
  "mcpServers": {
    "frihet": {
      "command": "npx",
      "args": ["-y", "@frihet/mcp-server"],
      "env": {
        "FRIHET_API_KEY": "fri_your_key_here"
      }
    }
  }
}
ToolConfig file
Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.json
Cursor.cursor/mcp.json or ~/.cursor/mcp.json
Windsurf~/.windsurf/mcp.json
ClineVS Code settings or .cline/mcp.json

The JSON above is identical for these four clients; only the file path changes. Claude Code and Codex are not in this table — they manage their own config through the CLI commands shown above.

Remote (no install)

Use the hosted endpoint at mcp.frihet.io -- zero local dependencies, runs on Cloudflare Workers.

With API key:

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

With OAuth 2.0 + PKCE (browser-based login, no API key needed):

Clients that support OAuth (Claude Desktop, Smithery, etc.) can connect directly to https://mcp.frihet.io/mcp and authenticate via browser. The server implements the full OAuth 2.1 authorization code flow with PKCE.

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 admin@techstart.es"
"Show me all my clients"
"Update ClientName's address to Calle Mayor 1, Madrid 28001"

CRM

"Add a contact to Acme SL: Ana Garcia, CTO, ana@acme.es"
"Log a call with TechStart: discussed Q2 proposal, they're interested in upgrade"
"Add a note to ClientName: prefers invoices in English, payment NET 30"
"Show me all activities for Acme SL"

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"

What to expect

This MCP is a structured data interface -- you describe what you want in natural language, and the AI creates, queries, or modifies business records in Frihet. Most of the 157 canonical operations are CRUD operations over the REST API; the rest are read-only summaries and fiscal/e-invoice actions. Alias and discovery names are counted separately.

Works great:

"Create an invoice for TechStart SL, 40h consulting at 75 EUR/h"   --> creates the invoice
"Show unpaid invoices over 1,000 EUR"                               --> queries and filters
"Log a 120 EUR expense for the Madrid train, category: travel"      --> records the expense
"Update client Acme's email to billing@acme.es"                     --> modifies the record

Does not do:

  • OCR or PDF scanning -- you cannot upload an invoice image and have it read
  • File upload or attachment handling
  • Image processing of any kind

If you need to digitize paper invoices or receipts, extract the data first (e.g., Claude Vision API, a dedicated OCR service, or manual entry), then use the MCP to create the record:

1. Scan/photograph the invoice
2. Use Claude Vision: "Read this invoice image and extract the vendor, items, amounts, and dates"
3. Then: "Create an expense in Frihet for [extracted data]"

Catalogue operations (157)

Invoices (12)

ToolWhat it does
list_invoicesList invoices with pagination
get_invoiceGet full invoice details by ID
create_invoiceCreate a new invoice with line items
update_invoiceUpdate any invoice field
delete_invoiceDelete a draft invoice; a sent/paid one is cancelled, not destroyed (confirm=true required)
search_invoicesFind invoices by client name, date, or status
send_invoiceEmail invoice to client (PDF attachment) — reaches a third party, confirm=true required
mark_invoice_paidMark an invoice as paid with optional payment date
get_invoice_pdfGet bounded invoice PDF bytes as base64
get_invoice_einvoiceGet bounded XML or Factur-X PDF bytes for an invoice
create_credit_noteCreate a credit note linked to an existing invoice
apply_late_feeApply a late payment fee to an overdue invoice

Expenses (5)

ToolWhat it does
list_expensesList expenses with pagination
get_expenseGet expense details
create_expenseRecord a new expense
update_expenseModify an expense
delete_expenseDelete an expense

Clients (5)

ToolWhat it does
list_clientsList all clients
get_clientGet client details
create_clientRegister a new client
update_clientUpdate client info
delete_clientRemove a client

CRM: Contacts (3)

ToolWhat it does
list_client_contactsList all contacts for a client
create_client_contactAdd a contact person to a client
delete_client_contactRemove a contact from a client

CRM: Activities (2)

ToolWhat it does
list_client_activitiesList CRM activities (calls, emails, meetings, tasks)
log_client_activityLog a call, email, meeting, or task against a client

CRM: Notes (3)

ToolWhat it does
list_client_notesList all notes for a client
create_client_noteAdd a free-form note to a client
delete_client_noteRemove a note from a client

Products (5)

ToolWhat it does
list_productsList products and services
get_productGet product details
create_productAdd a product or service
update_productUpdate pricing or details
delete_productRemove a product

Quotes (6)

ToolWhat it does
list_quotesList all quotes
get_quoteGet quote details
create_quoteDraft a new quote
update_quoteModify a quote
delete_quoteDelete only a clean draft with no delivery, response, attachment, or conversion evidence; refuse protected drafts; cancel non-drafts (confirm=true required)
send_quoteEmail quote to client for acceptance

Webhooks (6)

ToolWhat it does
list_webhooksList configured webhooks
get_webhookGet webhook details
create_webhookRegister a new webhook endpoint
update_webhookModify events or URL
delete_webhookRemove a webhook
test_webhookSend a test payload to a configured webhook endpoint

Intelligence (4)

ToolWhat it does
get_business_contextFull snapshot: profile, plan, recent activity, top clients, current month
get_monthly_summaryMonthly P&L: revenue, expenses, profit, tax liability, top clients by revenue
get_quarterly_taxesQuarterly tax prep: Modelo 303/130 fields, collected vs deductible, liability
duplicate_invoiceClone an invoice for recurring billing (copies items/client/tax, starts as draft)

E-Invoicing (10)

ToolWhat it does
send_einvoiceDispatch an invoice in 11 formats (XRechnung, Factur-X, FatturaPA, PEPPOL, Facturae, UBL, CII) via email / Chorus Pro / SDI / PEPPOL / download
get_einvoice_statusPoll Hatchet workflow run status until succeeded/failed — returns ackId, XML URL, PDF/A-3 URL
validate_einvoice_xmlValidate raw XML against format schema + schematron rules (KOSIT / Mustang / XSD / Schematron)
export_datevExport accounting data as DATEV EXTF (Buchungsstapel / Debitoren / Kreditoren) in CP1252 encoding
einvoice_exportExport e-invoice data in machine-readable formats (JSON/XML) for archival or integration
face_submitSubmit invoice to FACe (Spain B2G government e-invoicing platform)
face_statusPoll submission status from FACe for a submitted invoice
ticketbai_submitSubmit TicketBAI fiscal record to Basque Country tax authority (Hacienda)
ticketbai_statusPoll TicketBAI submission status from the Basque tax authority
ksef_submitSubmit invoice to KSeF (Poland) — stub: transport is infra-ready in Frihet-ERP but not yet exposed as a live endpoint (production gated on KSeF cert); returns a labeled "unavailable" error until activated

Time Tracking (6)

ToolWhat it does
list_time_entriesList time entries with filter by user, project, date range, billable status
get_time_entryGet full details of a single time entry by ID
create_time_entryLog hours for a project (billable flag, description, date)
update_time_entryUpdate any field on an existing time entry (PATCH semantics)
delete_time_entrySoft-delete a time entry (confirm=true required)
get_time_summaryAggregate total/billable/non-billable hours for a period, with optional groupBy (user/project/day)

Recurring Invoices (8)

ToolWhat it does
list_recurring_invoicesList all recurring invoice templates (filter by active/paused)
get_recurring_invoiceGet full details of a recurring template by ID
create_recurring_invoiceCreate a new recurring invoice template (daily/weekly/monthly/quarterly/yearly)
update_recurring_invoiceUpdate template fields — affects future generated invoices only
pause_recurring_invoicePause an active template — no invoices generated while paused
resume_recurring_invoiceResume a paused template — next invoice on next scheduled cycle
delete_recurring_invoicePermanently delete a template (confirm=true required)
run_recurring_nowManually trigger immediate generation of the next invoice instance

Team Management (4)

ToolWhat it does
list_team_membersList active members + pending invites (owner excluded)
invite_team_memberInvite a new member by email with role (admin/editor/accountant/viewer)
update_team_member_roleChange an existing member's role (admin/editor/accountant/viewer)
remove_team_memberRemove a member from the workspace (confirm=true required)

Gestoria — Accountants (5)

ToolWhat it does
gestoria_message_sendSend a message in a contextual thread (documentRequest / filingItem / obligation)
gestoria_messages_listList messages in a thread, newest first; paginate backwards with before
gestoria_template_createCreate a reusable document request template with variables + due-date offset
gestoria_template_bulk_sendBulk send a template to up to 500 client workspaces in one call
gestoria_aging_consolidatedCross-client AR aging report (buckets, per-workspace breakdown, top overdue)

Audit GL (3)

ToolWhat it does
frihet_gl_entry_approveApprove a GL journal entry (gestor/admin only — TRUST AREA)
frihet_gl_entry_rejectReject a GL entry with a mandatory reason (TRUST AREA)
frihet_gl_entry_audit_logRetrieve full audit trail for a GL entry

White-label Portal Domain (3)

ToolWhat it does
frihet_portal_domain_addAdd a custom domain to the client portal (returns DNS CNAME records)
frihet_portal_domain_verifyVerify DNS propagation for a custom portal domain
frihet_portal_domain_removeRemove a custom portal domain (reverts to default Frihet subdomain)

Self-onboard & VIES (2)

ToolWhat it does
frihet_portal_onboard_link_generateGenerate a time-limited self-onboard link for a prospective client
frihet_tax_id_vies_lookupValidate an EU VAT number (CIF intracomunitario) via VIES

IGIC — Canary Islands Indirect Tax (4)

ToolWhat it does
frihet_modelo_415_summaryM415 annual operations >€3,005 (Canarias equivalent of M347)
frihet_modelo_425_summaryM425 annual IGIC recap for Canary Islands businesses
frihet_modelo_418_summaryM418 monthly IGIC return for large enterprises (grandes empresas)
frihet_aiem_calculateCalculate AIEM (Arbitrio Importación) for imported/produced goods in Canarias

Impuesto sobre Sociedades — Corporate Tax (2)

ToolWhat it does
frihet_modelo_200_summaryModelo 200 annual IS return (taxable base, deductions, net payable)
frihet_modelo_202_summaryModelo 202 installment payments (1P April, 2P October, 3P December)

Bank Categorization Rules (2)

ToolWhat it does
frihet_bank_rules_listList all bank auto-categorization rules (conditions + actions + status)
frihet_bank_rule_createCreate a new rule to auto-categorize transactions by description, amount, counterparty

Deposits (7)

ToolWhat it does
list_depositsList deposits with pagination
get_depositGet deposit details by ID
create_depositRecord a new client deposit
update_depositUpdate deposit fields
delete_depositDelete a deposit (confirm=true required)
apply_depositApply a deposit balance against an invoice
refund_depositIssue a refund for a deposit

Vendors (5)

ToolWhat it does
list_vendorsList all vendors/suppliers
get_vendorGet vendor details
create_vendorAdd a new vendor
update_vendorUpdate vendor info
delete_vendorRemove a vendor

Banking (5)

ToolWhat it does
list_bank_accountsList connected bank accounts
get_bank_accountGet details for a bank account
list_transactionsList bank transactions with filters
categorize_transactionAssign a category and expense/income type to a transaction
match_transaction_to_invoiceLink a bank transaction to an existing invoice

Fiscal — Spanish Tax Models (7)

ToolWhat it does
get_modelo_303_summaryQuarterly IVA return (Modelo 303) — collected vs deductible, net payable
get_modelo_130_summaryQuarterly IRPF installment for self-employed (Modelo 130)
get_modelo_390_summaryAnnual IVA summary (Modelo 390)
get_modelo_180_summaryAnnual withholding summary for rentals (Modelo 180)
get_modelo_347_summaryAnnual third-party transactions >€3,005 (Modelo 347)
verifactu_statusGet VeriFactu submission status for a fiscal record
verifactu_resubmitResubmit a rejected VeriFactu fiscal record
ticketbai_statusPoll TicketBAI submission status — cross-reference from E-Invoicing (10); NOT counted toward this section's 7

Vacation Rentals / Stay (5)

ToolWhat it does
list_reservationsList rental reservations with filters
get_reservationGet reservation details
create_reservationCreate a new reservation
list_propertiesList all rental properties
sync_channelTrigger OTA channel sync (Airbnb, Booking.com, etc.)

POS — Point of Sale (4)

ToolWhat it does
list_terminalsList registered POS terminals
get_saleGet details for a POS sale transaction
list_salesList POS sales with pagination
refund_saleIssue a refund for a POS sale

Kitchen / Restaurant (6)

ToolWhat it does
list_kitchen_ticketsList kitchen order tickets for the live board, filtered by status or station
get_kitchen_ticketGet a single kitchen ticket by ID with all items and their individual statuses
update_kitchen_ticketAdvance a ticket's status (queued → preparing → ready → served) or reassign it to another station
list_kitchen_stationsList all kitchen stations with id, name, and active status
list_menu_itemsList the kitchen menu catalog with free-text search and active/inactive filter
kitchen_flow_summarySlow-station detection: aggregate open tickets per station and flag the bottleneck

HR — Human Resources (9)

ToolWhat it does
leave_request_createCreate a leave request (vacation, sick, personal)
leave_approveApprove a pending leave request
leave_rejectReject a leave request with a reason
leave_cancelCancel an approved or pending leave request
leave_listList leave requests with filters (user, status, date range)
attendance_clock_inRecord clock-in for an employee
attendance_clock_outRecord clock-out for an employee
overtime_reportRead daily/weekly overtime, aggregate minutes/hours, and compliance alerts computed over the selected YYYY or YYYY-MM records
anomaly_listList attendance anomalies (missing punches, excessive overtime)

Payroll (2)

ToolWhat it does
payroll_exportRead normalized payroll-ready employee data; the format value is an echoed destination label, not a generated file
payroll_checklistList payable employees with payroll-profile readiness, missing fields, and monthly review state

Onboarding (2)

ToolWhat it does
onboarding_statusGet onboarding completion status for the current workspace
onboarding_persona_setSet or update the business persona (freelancer, SME, gestoría, etc.)

Permissions (2)

ToolWhat it does
permissions_matrixGet the documented RBAC-model snapshot (not a runtime authorization guarantee)
permissions_meCompare RBAC-model fields with actual API-key scopes and known scope denials (non-exhaustive)

Period Close (3)

ToolWhat it does
period_close_statusGet the current or selected YYYY fiscal-year range, open/closed state, and nullable closing details
period_closeClose an accounting period (gestor/admin only — TRUST AREA)
period_reopenReopen a closed period with a mandatory reason (TRUST AREA)

All canonical operations (and their aliases) return structured output via outputSchema -- typed JSON, not raw text. List response shapes follow their API family; not every list endpoint is paginated.

Capability and side-effect truth

On the full MCP surfaces, every tools/list entry includes _meta["io.frihet/capability"]:

  • registered means the name and handler exist in this server build;
  • callability is api_dependent (the handler calls the API; deployment, workspace enablement, and authorization still decide), runtime_checked (the handler explicitly distinguishes an absent backend from empty data), deferred, unavailable, or local—never an unconditional “available” claim;
  • writesFrihet, externalInteraction, and externalSideEffects distinguish state changes and calls to external entities/providers;
  • MCP action annotations remain the standard source for read-only, destructive, idempotent, and open-world hints.

The ChatGPT/OpenAI host is a separately reviewed surface: exactly 33 business operations with complete descriptions, 0 discovery meta-tools, 0 prompts, and 0 resources. Its 17 reads and 16 writes are deliberately narrow, and all writes require literal confirm=true. Ten writes may deliver full business events to active endpoints previously configured by the workspace owner; webhook administration itself remains excluded. Direct email delivery, the legacy monthly summary, raw invoice PDFs, invoice lifecycle transitions, updating an existing quote, regulated filing, deleting client parent records, deleting expenses with their linked files, deleting products, and deleting vendors are also excluded. This surface must not be inferred from the full catalogue.


Resources

Context the AI can read to make smarter decisions.

The local package serves 11 resources: 7 static references plus 4 API-backed workspace resources. The hosted Worker serves the 7 static resources. The OpenAI-reviewed host serves 0 resources.

Static (reference data, no API calls):

ResourceURIWhat it provides
API Schemafrihet://api/schemaOpenAPI summary: endpoints, auth, rate limits, pagination, error codes
Tax Ratesfrihet://tax/ratesTax rates by Spanish fiscal zone: IVA, IGIC, IPSI, EU reverse charge, IRPF
Tax Calendarfrihet://tax/calendarQuarterly and annual filing deadlines for the listed Spanish tax models
Expense Categoriesfrihet://config/expense-categories8 categories with deductibility rules, IVA treatment, amortization
Invoice Statusesfrihet://config/invoice-statusesStatus flow (draft > sent > paid/overdue > cancelled), transition rules, webhook events
Currenciesfrihet://config/currencies40 supported currencies with ISO codes, symbols, decimal places, locale formatting
Countriesfrihet://config/countries61 supported countries with fiscal zones, default tax rates, currencies, invoice prefixes

Dynamic (live data from your account):

ResourceURIWhat it provides
Business Profilefrihet://business-profileYour business info, plan, defaults, recent activity, top clients
Monthly Snapshotfrihet://monthly-snapshotCurrent month P&L, revenue, expenses, tax liability
Overdue Invoicesfrihet://overdue-invoicesAll invoices past due date (up to 100)
Plan Limitsfrihet://status/plan-limitsLive plan tier, usage counters, invoices/month, API rate limits

Prompts (10)

Pre-built workflows the AI can execute as guided multi-step operations.

PromptWhat it doesArguments
monthly-closeClose the month: review unpaid invoices, categorize expenses, check tax obligations, generate summarymonth? (YYYY-MM)
onboard-clientSet up a new client with correct tax rates by location, optionally create a welcome quoteclientName, country?, region?
quarterly-tax-prepPrepare quarterly tax filing: calculate IVA/IGIC, identify deductibles, preview Modelo 303/130/420quarter?, fiscalZone?
overdue-followupFind overdue invoices, draft follow-up messages, suggest payment reminders--
new-client-invoiceCreate a client + first invoice in one workflow with tax rate lookupclientName, country?
expense-reportGenerate expense report grouped by category with deductible totalsmonth? (YYYY-MM)
year-end-closeFull annual closing: quarterly review, pending invoices, uncategorized expenses, year-end checklistyear (YYYY)
cash-flow-forecastProject cash flow for coming months: recurring income, expenses, overdue receivables, tax deadlinesmonths? (default: 3)
invoice-aging-reviewAR aging analysis: group unpaid invoices by bucket (0-30/31-60/61-90/90+ days), top debtors, collection actions--
expense-batchProcess expenses in bulk: categorize, apply tax rates, flag missing receiptsfiscalZone?

How it works

graph LR
    AI["Your AI assistant"]
    MCP["frihet-mcp"]
    API["api.frihet.io"]
    DB["Frihet ERP"]

    AI -- "create_invoice()" --> MCP
    MCP -- "POST /v1/invoices" --> API
    API --> DB
    DB -- "201 + invoice data" --> API
    API -- "structured JSON" --> MCP
    MCP -- "typed response + suggestions" --> AI

    style AI fill:#09090b,stroke:#4ade80,color:#fafafa
    style MCP fill:#09090b,stroke:#fafafa,color:#fafafa
    style API fill:#09090b,stroke:#3f3f46,color:#a1a1aa
    style DB fill:#09090b,stroke:#3f3f46,color:#a1a1aa

The server translates tool calls into REST API requests. It handles authentication, rate limiting (automatic retry with backoff on 429), pagination, and error mapping.

Two transports:

  • stdio (local) -- npx @frihet/mcp-server with FRIHET_API_KEY
  • Streamable HTTP (remote) -- https://mcp.frihet.io/mcp with Bearer token or OAuth 2.0+PKCE

Environment variables

VariableRequiredDefault
FRIHET_API_KEYYes (stdio)--
FRIHET_API_URLNohttps://api.frihet.io/v1
FRIHET_TOOL_MODENofull

Tool exposure: depth served on demand

Frihet's differentiator is depth — full ES/EU fiscal coverage plus native compliance (VeriFactu, TicketBAI, Facturae/FACe; KSeF Poland infra-ready, activation pending), banking, CRM, HR/payroll, stay/PMS and POS. But a flat list of every tool, loaded into an agent's context up front, is the 2026 context-rot problem: it crowds out the task and degrades tool selection before any work begins.

FRIHET_TOOL_MODE lets you choose how that depth is exposed.

ModeBehavior
full (default)Canonical tools and fiscal aliases are exposed with full descriptions and schemas. Public descriptors add conservative callability and side-effect truth; operation names, schemas and handlers are unchanged.
groupedProgressive disclosure. Each tool's description collapses to a one-line [group] summary — full schema via describe_tool('name'), and three lightweight discovery tools are added. The agent loads depth only for the tools it actually needs.

In grouped mode operation names, input schemas and handlers are unchanged. Descriptors also expose the same conservative capability and action truth as the full profile. Discovery flows through three meta-tools:

  • list_tool_groups() — the domain map (invoicing, expenses, fiscal/compliance, banking, CRM, HR/payroll, stay/PMS, POS, intelligence, products, platform) with a one-line blurb and tool count for each.
  • search_tools(query) — free-text search across tool name, title, summary and group; returns matching tools with their group, summary, read-only flag and input fields. Optional group filter and limit.
  • describe_tool(name) — the full original description and input fields for one tool, on demand, before you call it.
// claude_desktop_config.json — opt in to grouped mode
{
  "mcpServers": {
    "frihet": {
      "command": "npx",
      "args": ["@frihet/mcp-server"],
      "env": {
        "FRIHET_API_KEY": "fri_...",
        "FRIHET_TOOL_MODE": "grouped"
      }
    }
  }
}

Grouped exposure changes description density, not operation behavior. The versioned OpenAI-reviewed profile is composed separately and remains independently gated.


API limits

LimitValue
Requests per minute100 per API key
Results per page100 max (50 default)
Request body1 MB max
Webhook payload100 KB max
Webhooks per account20 max

Rate limiting is handled automatically with exponential backoff.


Claude Code Skill

Beyond raw MCP tools, this repo includes a Claude Code skill that adds business context: Spanish tax rules, workflow recipes, financial reports, and natural language commands.

Install the skill

git clone https://github.com/Frihet-io/frihet-mcp.git
ln -s "$(pwd)/frihet-mcp/skill" ~/.claude/skills/frihet

Or with the universal installer:

npx skills add Frihet-io/frihet-mcp

Commands

CommandWhat it does
/frihet statusAccount overview, recent activity, pending payments
/frihet invoiceCreate, list, search invoices
/frihet expenseLog and query expenses
/frihet clientsManage client database
/frihet quoteCreate and manage quotes
/frihet reportFinancial summaries (P&L, quarterly, overdue)
/frihet webhooksConfigure automation triggers
/frihet setupGuided setup and connection test

The skill knows about IVA rates, IRPF retention, Modelo 303 prep, expense deductibility rules, and VeriFactu compliance.

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


Development

git clone https://github.com/Frihet-io/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

Contributing

Contributions are welcome. Please open an issue first to discuss what you'd like to change.

git clone https://github.com/Frihet-io/frihet-mcp.git
cd frihet-mcp
npm install
npm run build   # must pass before submitting

Current limitations

  • No OCR or file upload -- the MCP works with structured data, not images or PDFs.
  • Single company -- one API key maps to one Frihet workspace.
  • Frihet account required -- you need an active account at app.frihet.io and an API key (starts with fri_).

Ecosystem

PackageWhat it is
@frihet/mcp-serverThis MCP server (157 canonical operations + 5 alias names; 11 local resources; 10 prompts)
@frihet/sdkTypeScript SDK (frihet.invoices.create())
frihetCLI (frihet invoices list --status overdue)
n8n-nodes-frihetn8n community node for workflow automation
REST APIOpenAPI 3.1 at api.frihet.io/v1
Remote MCPHosted endpoint on Cloudflare Workers (zero install)
WebhooksReal-time events with HMAC-SHA256

Links

  • Frihet -- The product
  • Documentation -- Full docs
  • API reference -- REST API
  • MCP server docs -- Setup guides, troubleshooting
  • npm -- Package registry
  • Smithery -- Smithery marketplace
  • MCP Registry -- Anthropic official registry
  • Remote endpoint -- Hosted MCP server (Cloudflare Workers)
  • OpenAPI spec -- Machine-readable API definition
  • Security policy -- Private vulnerability reporting guidance

License

MIT. See LICENSE.

Built by Frihet.

Featured
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
inference shell
inference shell
create and run specialised agents in minutes
build now →
MCP-ready Email SendingMCP-ready Email Sending
MCP-ready Email Sending
Plug Mailtrap into your AI workflow and let it handle the email.
Connect Mailtrap MCP →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Capacitor - Shared memory for your team’s coding agents.
Capacitor - Shared memory for your team’s coding agents.
Make coding agent sessions - Searchable, Shareable, Vendor-neutral & Scored.
Try For Free →
CodeScene MCP ServerCodeScene MCP Server
CodeScene MCP Server
Your agent targets a perfect 10 Code Health score. Deterministic. Every commit.
Try For Free →
Give your AI the whole web as clean markdownGive your AI the whole web as clean markdown
Give your AI the whole web as clean markdown
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
belt - the only tool your agent needs
belt - the only tool your agent needs
belt cli automatically finds the best tools and skills for your agent. image, video, music, tts...
one prompt install →
Categories
Sales & MarketingFinance & Commerce
Registryactive
Package@frihet/mcp-server
TransportSTDIO, HTTP
UpdatedJun 10, 2026
View on GitHub

Related Sales & Marketing MCP Servers

View all →
keshrath avatar
Agent Tasks

keshrath/agent-tasks

Pipeline task management for AI agents - stages, dependencies, artifacts, claiming
6
sophymarine avatar
Openregistry

sophymarine/openregistry

Live data from 27 official national company registries. Unmodified. For KYB and due diligence.
6
cyanheads avatar
Secedgar Mcp Server

cyanheads/secedgar-mcp-server

Query SEC EDGAR filings, XBRL financials, and company data through MCP. STDIO & Streamable HTTP.
5
martc03 avatar
Business Entity

io.github.martc03/business-entity

SEC company search and SBA business resources. 4 MCP tools for business intelligence.
5
ashev87 avatar
Propstack Mcp

ashev87/propstack-mcp

Propstack CRM MCP: search contacts, manage properties, track deals, schedule viewings.
4
flowzap-xyz avatar
Flowzap

io.github.flowzap-xyz/flowzap

Create workflow, sequence, and architecture diagrams via AI assistants.
4