FCA MCP Server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@FCA MCP ServerFind wealth management firms in London with FCA authorisation"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
FCA MCP Server
Open-source AI-powered regulatory intelligence for financial services
π― What This Solves
Financial services firms waste hours every day manually searching through fragmented FCA databases for regulatory information. Our open-source FCA MCP Server transforms this experience by providing real-time, conversational access to live FCA Register data through AI interfaces.
Instead of this: Manual searches across multiple FCA portals, copying firm reference numbers, cross-referencing databases You get this: "Which firms can provide mortgage advice in Scotland?" β Instant, accurate answers with source citations
Related MCP server: Nexus Finance
π Key Benefits
70% reduction in regulatory research time
Real-time data from live FCA APIs (not static databases)
Open source - inspect, modify, and extend freely
Conversational interface - ask questions in plain English
Zero licensing costs - available to all financial services firms
π¬ Demo
See the FCA MCP Server in action:
Watch a 2-minute demo showing how regulatory questions that normally take hours are answered in seconds
https://github.com/user-attachments/assets/54d5e08c-ca84-4e9a-95c4-4251ca5af51e
Demo Scenarios:
ποΈ Digital Asset Startup: "Do I need FCA authorization for my custody solution?"
πΌ Investment Advisory: "What are current suitability rules for high-net-worth clients?"
π Market Intelligence: "Find all authorized wealth management firms in London"
How It Works
Our MCP (Model Context Protocol) server acts as a bridge between AI assistants like Claude Desktop and the FCA's regulatory data. It:
Continuously ingests data from all FCA Register endpoints
Processes and normalises the information for AI consumption
Exposes conversational tools for natural language queries
Returns real-time results with proper citations and context
Architecture: FastMCP server β Elasticsearch with semantic search β Azure OpenAI embeddings β Live FCA APIs
π οΈ Available Tools
The MCP Server provides these AI-accessible tools:
search_fca_handbook- Search FCA Handbook rules and guidancesearch_policy_statements- Find FCA Policy Statements by contentsearch_consultation_papers- Search regulatory proposals and consultationssearch_authorised_firms- Query the FCA register of authorised firmssearch_enforcement_notices- Search enforcement actions and finesget_firm_details- Get comprehensive firm informationsearch_guidance_documents- Find FCA guidance and technical standardsget_regulatory_updates- Get latest regulatory announcements
π― Use Cases
For Compliance Teams:
"Find all firms with mortgage advice permissions in my region"
"What enforcement actions were taken for conduct breaches this year?"
"Show me recent policy changes affecting investment firms"
For Legal & Risk:
"Search FCA Handbook for rules about operational resilience"
"Find consultation papers on crypto asset regulations"
"What are the current requirements for ESG reporting?"
For Business Development:
"Which competitors have similar FCA permissions to us?"
"Find recently authorised fintech firms"
"Show me regulatory barriers for new product launches"
π Quick Start (5 Minutes)
Prerequisites: Docker, Node.js, Claude Desktop, Azure OpenAI API key
Clone and configure:
git clone https://github.com/trailblazelabs/fca-mcp.git cd fca-mcp cp .env.example .env # Edit .env with your Azure OpenAI credentialsOne-command setup:
make dev_setup_from_scratchConnect to Claude Desktop:
{ "mcpServers": { "fca-mcp": { "command": "npx", "args": ["mcp-remote", "http://localhost:8080/mcp/", "--allow-http"] } } }Start asking questions!
"Search for wealth management firms in London"
"Find recent enforcement notices about market manipulation"
"Show me policy changes affecting crypto firms"
π§ Technical Deep Dive
Prerequisites for Local Development
Python >= 3.12
uv (Python package manager)
Docker and Docker Compose
Node.js (for mcp-remote)
Local Development Setup
Install uv (if not already installed):
curl -LsSf https://astral.sh/uv/install.sh | shClone and set up the project:
git clone <repository> cd fca-mcp # Install dependencies with uv uv sync --extra devAvailable Make commands:
make install # Install all dependencies make test # Run tests make test_integration # Run integration tests (slow on first run) make lint # Check code formatting make format # Format and fix code make safe # Run security checks # Pre-commit hooks make pre-commit-install # Install pre-commit hooks make pre-commit # Run pre-commit on all files # Docker operations make run # Start services with Docker Compose make stop # Stop Docker services make logs # View MCP server logs # Development helpers make mcp_test # Test MCP server connection make es_health # Check Elasticsearch healthRun the MCP server locally:
make run_mcp_server # Or directly with uv: uv run fca-mcp serve
Project Structure
fca-mcp/
βββ fca_mcp/ # Main Python package
β βββ cli.py # CLI interface
β βββ models.py # Data models
β βββ mcp_server/ # MCP server implementation
β β βββ api.py # API endpoints and tool definitions
β β βββ handlers.py # Elasticsearch query handlers
β β βββ main.py # FastAPI application setup
β β βββ utils.py # Utility functions
β βββ ... # Other modules
βββ tests/ # Test suite
β βββ mcp_server/ # MCP server tests
β βββ ... # Other tests
βββ Dockerfile.mcp-server # MCP server container configuration
βββ docker-compose.yaml # Service orchestration
βββ README.md # This fileCLI Commands
The project includes a unified CLI for data management and server operations:
# Initialize Elasticsearch indices and inference endpoints
fca-mcp init-elasticsearch
# Run the MCP server
fca-mcp serve
# Load different types of FCA data
fca-mcp load-data handbook
fca-mcp load-data policy-documents
fca-mcp load-data consultation-papers
fca-mcp load-data firms-register
fca-mcp load-data enforcement-notices
# Delete all data
fca-mcp delete-elasticsearchData Structure
The system works with several types of FCA regulatory documents:
FCA Handbook (Index: fca_mcp_handbook):
Rules and guidance sections with semantic search
Cross-references between sections
Section hierarchy and numbering
Policy Statements (Index: fca_mcp_policy_statements):
Final policy decisions and statements
Semantic search on policy content
PS number references and dates
Consultation Papers (Index: fca_mcp_consultation_papers):
Regulatory proposals and consultations
Comment periods and responses
CP number references
Authorised Firms (Index: fca_mcp_authorised_firms):
Firms and individuals register
Permissions and restrictions
Contact and status information
Enforcement Notices (Index: fca_mcp_enforcement_notices):
Disciplinary actions and fines
Decision notices and final notices
Firm and individual sanctions
Data Loading Process:
Fetch from FCA APIs and web sources
Transform into structured models with computed fields
Embed using Azure OpenAI for semantic search
Index into Elasticsearch with proper mappings
Daily Data Ingestion
To keep the FCA data up-to-date, a daily ingestion mechanism is provided:
make ingest_dailyThis runs the equivalent of:
fca-mcp load-data handbook --incremental
fca-mcp load-data policy-documents --recent
fca-mcp load-data enforcement-notices --recentUsage Examples
Once connected to Claude, you can use natural language queries like:
FCA Handbook:
"Search the FCA Handbook for rules about mortgage lending"
"Find guidance on consumer credit regulations"
"Show me the latest updates to conduct of business rules"
Policy and Consultation:
"Find policy statements about ESG and sustainability"
"Search consultation papers on crypto asset regulations"
"Show me recent policy changes affecting investment firms"
Firm Information:
"Search for authorised wealth management firms in London"
"Find details about a specific firm's permissions"
"Show me recent authorisation decisions"
Enforcement:
"Search enforcement notices about market manipulation"
"Find recent fines for conduct breaches"
"Show me disciplinary actions against individuals"
Regulatory Research:
"Find all FCA guidance on operational resilience"
"Search for rules affecting fintech companies"
"Show me consumer protection requirements for investments"
Logs and Debugging
View server logs:
docker-compose logs mcp-serverEnable debug mode in Claude config by adding --debug flag.
Check Elasticsearch status:
curl http://localhost:9200/_cat/health?v
# Or use the make command:
make es_healthTroubleshooting
Common Issues
MCP Connection Issues
Ensure MCP server is running on port 8080
The MCP server runs on
/{MCP_ROOT_PATH}/mcp, not/MCP_ROOT_PATHVerify Claude Desktop configuration is correct
Data Loading Failures
Check Azure OpenAI credentials in
.envfileEnsure Elasticsearch is running and accessible
Verify network connectivity to FCA APIs and websites
Use
--ll DEBUGflag for detailed logging
Elasticsearch issues
Verify inference endpoints are created:
fca-mcp init-elasticsearchUse https://elasticvue.com/ to inspect the Elasticsearch instance
Optional: Parliamentary horizon scanning (Enterprise)
Forwardβlooking risk monitoring to anticipate regulatory change:
HM Treasury and Select Committee hearings (Hansard)
Financial Services Acts and Statutory Instruments affecting FCA perimeter
Treasury consultations and policy statements
This module is available in the Enterprise edition and integrates with the same MCP interface for proactive alerts and research.
Contact
Interested in enterprise access or collaboration?
π Schedule a call: https://cal.com/trailblazelabs
License
MIT License - see LICENSE file for details
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/trailblazelabs/fca-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server