Borme MCP

Community Other

Spain's company registry (BORME): typed company events since 2009, including incorporations, director changes, insolvencies and capital changes.

Install

The installation steps are in the documentation below. Documentation

Documentation

From the project's README on GitHub, refreshed weekly. Links open on GitHub.

Contents
  1. BORME MCP Server
  2. Hosted endpoint (no setup)
  3. Tools
  4. Agent skill
  5. Example prompts
  6. Self-hosting
  7. Related
  8. License

BORME MCP Server

Español: README.es.md

MCP server for BORME (Boletín Oficial del Registro Mercantil), the official gazette of Spain's commercial registry: 9.5M+ typed company events since 2009, updated every business day. Incorporations, director appointments, insolvencies, capital changes — 52 event types, each an English enum.

Hosted endpoint (no setup)

{
  "mcpServers": {
    "borme": {
      "url": "https://mcp.bormeapi.com/mcp"
    }
  }
}

In Claude Code:

claude mcp add --transport http borme https://mcp.bormeapi.com/mcp

Read-only; limit is at most 200 per call. Without a key it runs on the free plan: the last 7 days, 50 calls a day per IP address. An API key from bormeapi.com/account, sent in the X-API-Key header, unlocks your plan: "headers": {"X-API-Key": "YOUR_KEY"} in clients configured with JSON (Cursor's mcp.json and similar), --header "X-API-Key: YOUR_KEY" in claude mcp add.

  • free (no key): the last 7 days
  • basic: the last 365 days, plus tax-ID and brand lookups
  • pro: everything in basic, with the full history back to 2009
  • risk: pro plus the risk-signals tool

Plans and prices: bormeapi.com/pricing.

Tools

ToolWhat it doesFrom plan
search_eventsFilter events by date range, province, act type, company namefree
company_historyTimeline of one company (slug or name), paged, as deep as your plan's windowfree
daily_digestOne publication day's registry activity, aggregatedfree
registry_statsCorpus coverage and freshnessfree
list_act_typesThe event-type vocabulary: each enum with its Spanish original and English labelfree
company_by_nifResolve a NIF/CIF tax ID to a company (more than 520,000 mappings from public sources; a miss means "not matched yet")basic
brand_ownerWhich company holds a trademark or trading namebasic
company_brandsTrademarks and trading names held by one companybasic
recent_signalsSample of the latest derived risk signals, including insolvency declarations, phoenix companies, mass officer exits and AEAT debtor-list entriesrisk

Agent skill

skills/borme-registry is an Agent Skill that tells the agent which tool to call, how to chain them (tax ID → company → history, brand → company → history) and how to report the answers: registry data verbatim, a NIF miss as "not matched yet", trademarks kept apart from company names. skills/borme-registry-es is the same skill in Spanish. Install one of the two, not both: they cover the same questions.

For Claude Code, copy the folder into your skills directory:

git clone https://github.com/george-kozlitin/borme-mcp.git
mkdir -p ~/.claude/skills && cp -r borme-mcp/skills/borme-registry ~/.claude/skills/

Other agents that support SKILL.md skills use the same folder, placed in their own skills directory. The skill needs the MCP server above to be connected.

Example prompts

The first works without a key. The other two need one, because the free plan sees only the last 7 days; the full history needs pro.

  • "Which companies were declared insolvent in Valencia last week?"
  • "Show the corporate history of Telefónica Audiovisual Digital"
  • "How many new companies were incorporated in Madrid in June?"

Self-hosting

server.py is a single-file server (FastMCP + psycopg) with an earlier tool set than the hosted endpoint: it has no plans or keys, no brand tools (brand_owner, company_brands) and no offset paging in company_history. The skill above is written for the hosted endpoint. The server reads a PostgreSQL database with the tables it queries, through a read-only role; that schema is not part of this repository:

BORME_DSN=postgresql://user:pass@host/borme \
BORME_MCP_TRANSPORT=streamable-http \
python server.py

What building the dataset yourself involves: BORME Open Data API: Source XML vs Structured Company Intelligence.

License

MIT (server code). Registry events — source of the data: Agencia Estatal Boletín Oficial del Estado (boe.es). Trademarks and trading names: Oficina Española de Patentes y Marcas (OEPM). Tax-ID mappings and some risk-signal inputs: other Spanish public-sector open data. Public sector information reused under Ley 37/2007.

Independent project, not affiliated with, sponsored or endorsed by the Agencia Estatal Boletín Oficial del Estado or the Registro Mercantil.

Frequently asked questions

What is Borme MCP?

Spain's company registry (BORME): typed company events since 2009, including incorporations, director changes, insolvencies and capital changes.

How do I install Borme MCP?

Follow the installation steps in its documentation, shown on this page and in its repository.

Is Borme MCP open source?

Yes. Its code is on GitHub under the MIT license.

Who maintains Borme MCP?

It is published by george-kozlitin. AI.tn lists it but does not maintain or endorse it.

From the community awesome-mcp-servers lists and the project's GitHub repository. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.