Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
Live data from 80+ official national company registries. Unmodified. For KYB and due diligence.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Works in Claude on the web, desktop and mobile:
https://openregistry.sophymarine.com/mcpRun this in your terminal
claude mcp add --transport http openregistry https://openregistry.sophymarine.com/mcpPaste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"openregistry": {
"url": "https://openregistry.sophymarine.com/mcp"
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"openregistry": {
"type": "http",
"url": "https://openregistry.sophymarine.com/mcp"
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
ChatGPT connects only to servers on the internet:
https://openregistry.sophymarine.com/mcpMenu names can differ slightly by plan and over time.
Your choice stays on this device in a cookie; no account needed.
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
We have not read this server’s tool list yet; we check endpoints in rotation.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026
The registry name was verified with the GitHub account sophymarine, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
Not checked yet; we check endpoints in rotation
Not checked yet; we check endpoints in rotation
Not checked yet; we read the tool list when we check the endpoint
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
The registry does not list a required key, though some servers ask you to sign in on first use.
It runs in the maker’s cloud. Connect over the internet with nothing to install, but what you send passes through the maker’s servers.
The GitHub repo last changed –, and the latest version (3.0.0) reached the registry 32 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT in developer mode.
In the same category: Spec Driven Development, Remote Desktop Commander, Date Math
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Date/time math for agents: business days, holidays, time zones, cron, RRULE. 25 free calls/day.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
Real-time direct access to unmodified data and raw filings of about 80+ official government registries via MCP.
Tools: search companies, get profiles, officers, shareholders, charges, filings, and financial-statement documents.
Covers UK Companies House, Ireland CRO, France RNE, Spain BORME, Italy InfoCamere, Norway Brreg, Poland KRS, Netherlands KVK, Belgium KBO, Switzerland Zefix, Finland, Czechia, Korea, Taiwan, New Zealand, Cayman Island, Australia, Canada and a lot more.
Free tier; paid keys for higher quota and depth.
Data licensed from 🇬🇧 UK Companies House · 🇮🇪 CRO Ireland · 🇳🇴 Brønnøysund · 🇨🇭 Zefix · 🇵🇱 KRS Ministry of Justice — and a lot more.
Above: an AI agent walks the shareholders of *Iceland Foods Ltd* through 4 UK holding companies — *WD FF MIDCO → ICELAND VLNCO → LANNIS → WD FF LIMITED* — and surfaces the 8 individuals who actually own the chain (Tarsem Dhaliwal 41.35% as the largest shareholder, Walker family 51.31% combined). Every share count, every percentage, read verbatim from the registry's own CS01 PDFs.
We return the registry's own response — unmodified. Every field name, every status value, every raw filing byte (XHTML iXBRL / PDF / XBRL) is preserved exactly as the government's system emits it. The identifiers and jurisdiction routing let you reconstruct the government URL for any record. No aggregator markup. No field renames. No document re-rendering. No AI reinterpretation. No stale cache.
Chain queries across borders in a single prompt — a UK Ltd → its Luxembourg SARL → its Cayman LP → the Jersey trust → the individual beneficiary, all in one conversation. Walk ownership structures through 80+ jurisdictions to unmask the real person behind any company.
Hosted endpoint: `https://openregistry.sophymarine.com/mcp`
A platform by Sophymarine.
| 1. Live | Every tool call is a real-time query to the upstream government registry API at the moment you ask. |
| 2. Direct-to-government | No aggregator, no third-party data warehouse, no nightly scrape. Your AI talks to UK Companies House, France INSEE, German Registerportal, Korean FSS OpenDART directly. |
| 3. Unmodified + source-linked | Every field name, every status code, every raw filing byte returned verbatim. The registry's own identifiers are preserved so any response traces back to the government record. Enterprise tier adds pre-synthesised source_url / registry_url / data_license fields. |
| 4. Zero-stale | No cache layer we control can ever go stale. You see an update the moment the government records it. Contrast with commercial data providers that serve 6-24 hour-old snapshots. |
| 5. Stable | Production-grade reliability, running on Cloudflare Workers' global edge + a warm pool of per-jurisdiction workers for stateful registries. |
| 6. Cross-border | Chain queries across 80+ registries in a single prompt. Walk UK Ltd → LU SARL → KY LP → individual without leaving the conversation. |
| OpenRegistry | OpenCorporates | Companies House API direct | Bureau van Dijk Orbis | |
|---|---|---|---|---|
| Coverage | 80+ national registries | ~140, mostly aggregated from upstream sources | UK only | ~430M companies, aggregated |
| Data freshness | Live — every call hits upstream | Scrape-and-cache (hours–days lag) | Live | 7-day to quarterly refresh |
| Field shape | Verbatim upstream payload + unified envelope | Normalised to OC's own schema | Per-registry CH schema | BvD's own schema |
| Source identifier preserved | Yes — registry URL reconstructable from response | OC ID is primary; mapping back is lossy | Native | BvD ID is primary |
| Filing PDFs / iXBRL bytes | Returned raw | Metadata only; full bytes paywalled | Native | Paywalled |
| Cross-border chain walking | One MCP prompt, ≤80+ jurisdictions | Manual ID-stitching across countries | Out of scope (UK only) | Limited to BvD-mastered entities |
| Authentication | OAuth 2.1 + DCR | API key (signup required) | API key (signup required) | Per-seat license, $30k–$50k+/yr |
| Made for AI agents | MCP-native, JSON-RPC over Streamable HTTP | REST; no MCP wrapper | REST; no MCP wrapper | REST; no MCP wrapper |
One-liner. OpenCorporates and BvD are *aggregators* that re-shape and cache; CH-direct is single-jurisdiction. OpenRegistry is the layer between an AI agent and the original government APIs — verbatim, live, multi-country, no API key for the free tier.
Where OpenRegistry deliberately doesn't have data, the response carries a structured alternative_url pointing at the AML-obliged-only statutory portal. We don't pretend to have data we don't.
Three full request → response examples for the most common tools. All three reproducible on the free tier. Calls are JSON-RPC over MCP Streamable HTTP at https://openregistry.sophymarine.com/mcp; for brevity we show the tool name + arguments + the unwrapped response.
search_companies — find a UK company// Request
{ "name": "search_companies", "arguments": { "jurisdiction": "GB", "query": "Monzo Bank", "limit": 5 } }
// Response (truncated to 1 result) { "jurisdiction": "GB", "count": 5, "results": [ { "jurisdiction": "GB", "company_id": "09446231", "company_name": "MONZO BANK LIMITED", "status": "active", "incorporation_date": "2015-02-06", "registered_address": "Broadwalk House, 5 Appold Street, London, England, EC2A 2AG", "jurisdiction_data": { "company_number": "09446231", "company_status": "active", "company_type": "ltd", "date_of_creation": "2015-02-06", "title": "MONZO BANK LIMITED", "address_snippet": "Broadwalk House, 5 Appold Street, London, England, EC2A 2AG", "kind": "searchresults#company", "links": { "self": "/company/09446231" } // ... 20+ verbatim CH fields } } ] }
get_persons_with_significant_control — UK PSC for a known company// Request
{ "name": "get_persons_with_significant_control", "arguments": { "jurisdiction": "GB", "company_id": "OC404063" } }
// Response [ { "jurisdiction": "GB", "psc_id": "...", "name": "[REDACTED — UK CH residential-address suppression]", "kind": "individual-person-with-significant-control", "nature_of_control": ["ownership-of-shares-25-to-50-percent"], "notified_on": "2024-08-15", "is_active": true, "jurisdiction_data": { "etag": "...", "natures_of_control": ["ownership-of-shares-25-to-50-percent"], "notified_on": "2024-08-15", "country_of_residence": "United Kingdom", "date_of_birth": { "month": 7, "year": 1985 }, "address": { "country": "United Kingdom" }, "links": { "self": "/company/OC404063/persons-with-significant-control/individual/..." } // ... full CH PSC record } } ]
PSC ≠ shareholders. UK Companies House publishes a structured PSC register and a *separate* (filing-only) statement of capital. They disagree: a 10% shareholder appears in the statement of capital but not in PSC; a corporate trustee appears in PSC without being a shareholder. We surface both via
get_persons_with_significant_controlandget_shareholdersrespectively — see the shareholders-vs-PSC case study.
fetch_document — raw iXBRL annual accounts bytes// Request — get the document_id from list_filings or get_financials first
{ "name": "fetch_document", "arguments": { "document_id": "MzQ0MTUyNDU5N2FkaXF6a2N4", "max_bytes": 5000000 } }
// Response (metadata + base64-encoded body) { "jurisdiction": "GB", "document_id": "MzQ0MTUyNDU5N2FkaXF6a2N4", "content_type": "application/xhtml+xml", "size_bytes": 348721, "encoding": "base64", "content": "PCFET0NUWVBFIGh0bWwgUFVCTElDIC...", // signed proxy URL for human download / out-of-band fetch "proxy_url": "https://openregistry.sophymarine.com/document/gb/MzQ0MTUyNDU5N2FkaXF6a2N4/content?token=..." }
The content is the literal iXBRL bytes Companies House sends — your AI agent parses or re-renders as it sees fit. We don't re-encode, normalise tags, or extract figures into our own schema. Pass format: "png" (Browser Rendering required) to receive a rasterised page-by-page render of scanned PDFs instead.
OpenRegistry surfaces three distinct kinds of failure with structured responses so AI agents can branch on them.
Per-IP for anonymous, per-user for signed-in. The cross-border fan-out cap is a separate counter that limits how many *distinct* jurisdictions a caller can hit via search_companies in a rolling 60-second window.
When you exceed either limit, the response is HTTP 429:
{
"jsonrpc": "2.0", "error": { "code": -32000, "message": "rate-limited", "data": { "reason": "rate-limited", "retry_after_ms": 12400, "scope": "ip" // or "user" or "fanout" } } }
The HTTP layer also sets the standard Retry-After: 13 header (seconds, rounded up). Honour `retry_after_ms` exactly — exponential back-off on top is unnecessary; the limit window is fixed-rolling, not adaptive. Fan-out cap (scope: "fanout") is a 60-second rolling window — the second your oldest country falls off, you can hit a new one. Pro tier caps at 10 distinct countries / 60s, Max at 30, Enterprise unlimited.
Some beneficial-ownership registers became access-restricted to AML-obliged entities post-CJEU C-37/20 (DE, ES, IT, NL, LU, AT, MT, PT) and the Cayman Beneficial Ownership Transparency
Only the beginning is shown; read the rest in the repo