Back to Browse

Registrum MCP Server

by vdmeu
Developer ToolsLow Risk10.0LocalRemote
Free

UK company data: profiles, iXBRL financials, directors, PSC chains, ECCTA. Hosted, no key.

About

UK company data: profiles, iXBRL financials, directors, PSC chains, ECCTA. Hosted, no key.

Remote endpoints: streamable-http: https://registrum.co.uk/api/mcp

Security Report

10.0
Low Risk10.0Low Risk

Valid MCP server (2 strong, 2 medium validity signals). No known CVEs in dependencies. Package registry verified. Imported from the Official MCP Registry.

9 tools verified · Open access · 1 issue found

Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.

Permissions Required

This plugin requests these system permissions. Most are normal for its category.

HTTP Network Access

Connects to external APIs or services over the internet.

file_system

Check that this permission is expected for this type of plugin.

What You'll Need

Set these up before or after installing:

Optional. Only needed to lift the anonymous rate caps or to run the server locally against your own key - the hosted endpoint above needs no key at all. Get a free key at https://registrum.co.uk/?utm_source=mcp&utm_campaign=registryRequired

Environment variable: REGISTRUM_API_KEY

How to Install & Connect

Available as Local & Remote

This plugin can run on your machine or connect to a hosted endpoint. during install.

Documentation

View on GitHub

From the project's GitHub README.

Registrum MCP Server

UK company data in your AI agent — without building Companies House plumbing.

MCP Registry npm Status Docs

No Companies House developer account, no rate-limit handling, no iXBRL parsing. Works in Claude Desktop, Claude Code, Cursor, and any MCP-compatible client.

Try it now — no signup, no key, no install

Point your client at the hosted endpoint and every tool answers with real data:

https://registrum.co.uk/api/mcp
{
  "mcpServers": {
    "registrum": {
      "url": "https://registrum.co.uk/api/mcp"
    }
  }
}

That is the whole setup. Ask it "Who ultimately owns Rolls-Royce Holdings?" and it will trace the ownership chain.

The free anonymous tier is generous on the everyday tools and deliberately small on the expensive ones — a couple of ownership-chain traces and financial statements per day, which is enough to see exactly what comes back before you decide anything. When you reach a cap, the tool tells you so and points at a free key; nothing silently degrades.


Why this instead of the Companies House API directly

Companies House publishes the raw register for free, and you can absolutely call it yourself. What you then own is the plumbing:

Doing it yourselfWith Registrum
Register for a CH developer key, manage OAuthNothing, or one REGISTRUM_API_KEY
600 requests/5min, and you handle the 429sServer-side throttling on a higher negotiated budget
Accounts arrive as iXBRL documents you must parseget_financials returns turnover, net assets, profit/loss as numbers
PSC control types are raw codesDecoded to plain English
Ownership chains: recurse yourself, handle cyclesget_psc_chain returns the resolved tree with termination reasons
Director networks: N+1 queries across appointmentsget_network traverses to depth 2
Retry, cache, and survive CH outages yourself24h/7d caching, circuit breaker, stale-while-revalidate

Other Companies House MCP servers make you bring your own CH key and hand back the raw response. This one does the enrichment.


Running it with your own key

Use a key when you want the anonymous caps lifted, or when you would rather run the server locally than call ours.

Claude Desktop~/.claude/claude_desktop_config.json Cursor.cursor/mcp.json (per project) or ~/.cursor/mcp.json (global)

{
  "mcpServers": {
    "registrum": {
      "command": "npx",
      "args": ["-y", "@registrum/mcp"],
      "env": { "REGISTRUM_API_KEY": "reg_live_..." }
    }
  }
}

Get a free key — no card.


Tools

ToolWhat you get
search_companyFind a company by name → company number
get_bundleProfile, compliance, financials, PSCs and directors in one call - start here
get_companyProfile: status, age, SIC descriptions, overdue flags
get_financialsTurnover, net assets, profit/loss, employees — parsed from iXBRL, in GBP
get_directorsCurrent board with appointment history across all their companies
get_pscPersons with Significant Control, control types in plain English
get_psc_chainOwnership traversed to ultimate beneficial owners, with termination reasons
get_complianceECCTA identity-verification status — who has verified, who is pending, who is overdue
get_networkCompanies connected by shared directors, to depth 2

On get_bundle

Most questions about a company need several of these views at once. get_bundle returns them in a single request: one call and one credit instead of five, and one round trip instead of five. Pass include to fetch a subset, or omit it for all five sections.

Each section carries exactly what its own endpoint returns, because the bundle is composed from those same handlers rather than reimplemented - so plan gates, caching and the ECCTA rules behave identically either way.

A null section is not an error. Financials come back null for a company that has filed no machine-readable accounts, and compliance requires a Pro plan. Only a missing company is an error, and that is a 404. Report a null section as "not available", never as an absence of the underlying fact.

On get_compliance

The Economic Crime and Corporate Transparency Act requires every UK director and PSC to verify their identity with Companies House. Enforcement begins 18 November 2026, after which unverified officers can block filings.

The tool returns verified / pending / overdue counts plus each unverified person and their individual deadline. It deliberately distinguishes pending (deadline not yet reached — not a failure) from overdue (missed). Treating those as the same thing is the single easiest way to report a compliant company as non-compliant.


Example prompts

"Is Tesco PLC compliant with ECCTA director verification, and who still needs to verify?"

"Pull the last filed financials for 00445790 and tell me if turnover grew."

"Who ultimately owns Rolls-Royce Holdings? Trace the ownership chain."

"Which companies share directors with Barratt Developments?"

"Search for 'Monzo' and show me status, incorporation date and directors."


Plans

The anonymous endpoint needs no account at all. A free key raises the caps, and paid tiers add volume, PSC chain traversal and the ECCTA compliance endpoint.

Prices and quotas are served live from GET /v1/plans — that endpoint is the source of truth, so this README does not duplicate the numbers and cannot go stale against them. Human-readable version at registrum.co.uk.


Notes

  • Company numbers are zero-padded 8-character strings: 00445790, SC000268.
  • Responses are JSON, cached server-side (24h profiles/directors, 7d financials).
  • The hosted endpoint is stateless and anonymous: it stores no account, and rate limiting is keyed on a hash of the calling IP rather than anything about you.
  • The npm package sends User-Agent: @registrum/mcp/<version> so we can see which features developers actually use. No telemetry runs on your machine.

API reference · Issues · support@registrum.co.uk

Reviews

No reviews yet

Be the first to review this server!