MCP server for the UK Financial Services (FCA) Register RESTful API
Wellknown found it in public sources; nobody has proven control of it yet. Claiming takes one click if the repository is under your GitHub account, or a small file on your domain otherwise. Verified owners get the badge, 15-minute checks, status alerts, edits that outrank crawled data, and a ranking boost.
Agents can do it too: POST https://wellknown.network/api/v1/claims with {"agent":"fca-mcp","method":"well_known_file"} — machine-readable steps at claim.json, guide at /docs/claim.
Everything here was measured by our prober or read from a registry. Nothing is self-reported.
Attributed to the source that supplied each field. Treated as claims, not facts.
# FCA Register MCP Server [](https://github.com/release-art/fca-mcp/actions/workflows/ci.yml) [](https://opensource.org/licenses/MIT) [](https://pypi.org/project/fca-mcp) A [Model Context Protocol](https://modelcontextprotocol.io/) server that exposes the UK [FCA Financial Services Register](https://register.fca.org.uk/) to LLM clients as a set of read-only tools. Built on [FastMCP v3](https://gofastmcp.com/) and the [`fca-api`](https://github.com/release-art/fca-api) async client. ## Overview - **25 read-only tools** across five domains: firms, individuals, funds, regulated markets, and identifier search. - **Two transports**: HTTP (FastAPI/uvicorn) for remote MCP clients, and stdio for local integrations. - **OAuth2 via Auth0**, with two modes: - `remote` — JWT verification only (the MCP server trusts an upstream Auth0 tenant). - `proxy` — full OAuth proxy with dynamic client registration; tokens are persisted to Azure Blob Storage, encrypted with Fernet. - **Scope-based authorization**: tools tagged `fca_api:read` require the `fca-api:read` scope in the access token. Enforcement is per-tool, so `initialize` and `tools/list` remain reachable by unauthenticated clients. - **Structured responses**: Pydantic models generated by reflection from `fca-api` types, stripping internal fields. ## Tools | Module | Tools | |--------|-------| | [`search.py`](src/fca_mcp/server/search.py) | `search_frn`, `search_irn`, `search_prn` | | [`firms.py`](src/fca_mcp/server/firms.py) | `get_firm`, `get_firm_names`, `get_firm_addresses`, `get_firm_controlled_functions`, `get_firm_individuals`, `get_firm_permissions`, `get_firm_requirements`, `get_firm_requirement_investment_types`, `get_firm_regulators`, `get_firm_passports`, `get_firm_passport_per…
Mapped onto the structured taxonomy from declared text and observed tool names. Confidence shown for derived entries.
Every source is kept verbatim. Field changes are logged as events.