FCA MCP服务器
*面向金融服务的开源人工智能监管智能*
 
🎯 这解决了什么
金融服务公司浪费 每天小时数 在零散的FCA数据库中手动搜索监管信息。我们的开源FCA MCP服务器通过提供 实时对话式访问 通过AI接口实时FCA注册数据。
取而代之的是: 在多个FCA门户网站上手动搜索,复制公司参考号,交叉引用数据库 你得到这个: “哪些公司可以在苏格兰提供抵押贷款建议?”→ 即时、准确的答案和源引用
🚀 关键利益
- 减少70% 在监管研究时间
- 实时数据 来自实时FCA API(非静态数据库)
- 开源 -检查、修改和自由扩展
- 会话接口 -用简单的英语提问
- 零许可成本 -适用于所有金融服务公司
🎬 演示
查看FCA MCP服务器的运行情况:
https://github.com/user-attachments/assets/7f7c4354-4d1f-4ed5-99f2-d3bc2ce7ddbe
*观看2分钟的演示,展示如何在几秒钟内回答通常需要数小时的监管问题*
演示场景:
- 🏛️ 数字资产初创公司:“我的托管解决方案需要FCA授权吗?”
- 💼 投资咨询:“目前对高净值客户的适用性规则是什么?”
- 📊 市场情报:“查找伦敦所有授权的财富管理公司”
运作原理
我们的MCP(模型上下文协议)服务器充当了Claude Desktop等人工智能助手与FCA监管数据之间的桥梁。它
- 持续摄入 来自所有FCA寄存器端点的数据
- 流程和标准化 AI消费信息
- 展示对话工具 用于自然语言查询
- 返回实时结果 有适当的引用和上下文
建筑:FastMCP服务器→ 带语义搜索的Elasticsearch→ OpenAI嵌入→ 实时FCA API
🛠️ 可用工具
MCP服务器提供以下AI可访问的工具:
search_fca_handbook-搜索FCA手册规则和指导search_policy_statements-按内容查找FCA政策声明search_consultation_papers-搜索监管提案和咨询search_authorised_firms-查询FCA授权公司登记簿search_enforcement_notices-搜查执法行动和罚款get_firm_details-获取全面的公司信息search_guidance_documents-查找FCA指南和技术标准get_regulatory_updates-获取最新的监管公告
🎯 用例
对于合规团队:
- “查找我所在地区拥有抵押贷款建议权限的所有公司”
- “今年对违反行为采取了哪些执法行动?”
- “显示影响投资公司的最新政策变化”
法律与风险:
- “在FCA手册中搜索有关运营弹性的规则”
- “查找关于加密资产监管的咨询文件”
- “目前ESG报告的要求是什么?”
业务发展:
- “哪些竞争对手拥有与我们类似的FCA权限?”
- “查找最近获得授权的金融科技公司”
- “向我展示新产品发布的监管障碍”
🚀 快速入门(5分钟)
先决条件: Docker、Node.js、Claude Desktop、OpenAI API密钥
- 克隆和配置:
git clone https://github.com/trailblazelabs/fca-mcp.git
cd fca-mcp
cp .env.example .env
# Edit .env with your OpenAI API key- 一个命令设置:
make dev_setup_from_scratch- 连接到克劳德桌面:
{
"mcpServers": {
"fca-mcp": {
"command": "npx",
"args": ["mcp-remote", "http://localhost:8080/mcp/", "--allow-http"]
}
}
}- 开始提问!
- “在伦敦寻找财富管理公司” - “查找有关市场操纵的最新执法通知” - “向我展示影响加密货币公司的政策变化”
🔧 技术深度潜水
地方发展的先决条件
- Python>=3.12
- 紫外线 (Python包管理器)
- Docker和Docker Compose
- Node.js(用于mcp-remote)
地方发展设置
- 安装uv (如果尚未安装):
curl -LsSf https://astral.sh/uv/install.sh | sh- 克隆并设置项目:
git clone
cd fca-mcp
# Install dependencies with uv
uv sync --extra dev- 可用的Make命令:
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 health- 在本地运行MCP服务器:
make run_mcp_server
# Or directly with uv:
uv run fca-mcp serve项目结构
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命令
该项目包括一个用于数据管理和服务器操作的统一CLI:
# 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-elasticsearch数据结构
该系统适用于多种类型的FCA监管文件:
FCA手册 (索引: fca_mcp_handbook):
- 带有语义搜索的规则和指导部分
- 各节之间的交叉引用
- 章节层次和编号
政策声明 (索引: fca_mcp_policy_statements):
- 最终政策决定和声明
- 策略内容语义搜索
- PS编号参考和日期
咨询文件 (索引: fca_mcp_consultation_papers):
- 监管建议和咨询
- 评论期和回复
- CP编号参考
授权公司 (索引: fca_mcp_authorised_firms):
- 公司和个人注册
- 权限和限制
- 联系方式和状态信息
执行通知 (索引: fca_mcp_enforcement_notices):
- 纪律处分和罚款
- 决定通知和最终通知
- 公司和个人制裁
数据加载过程:
- 获取 来自FCA API和网络资源
- 变换 转化为具有计算字段的结构化模型
- 嵌入 使用OpenAI进行语义搜索
- 索引 使用适当的映射进入Elasticsearch
每日数据摄入
为了使FCA数据保持最新,提供了一种每日摄入机制:
make ingest_daily这相当于:
fca-mcp load-data handbook --incremental
fca-mcp load-data policy-documents --recent
fca-mcp load-data enforcement-notices --recent使用示例
连接到Claude后,您可以使用自然语言查询,例如:
FCA手册:
- “在FCA手册中搜索有关抵押贷款的规则”
- “查找消费者信贷法规指南”
- “显示业务规则执行的最新更新”
政策与咨询:
- “查找有关ESG和可持续性的政策声明”
- “搜索加密资产监管咨询文件”
- “显示影响投资公司的最新政策变化”
公司信息:
- “在伦敦寻找授权的财富管理公司”
- “查找特定公司权限的详细信息”
- “显示最近的授权决定”
执行:
- “关于市场操纵的搜索执行通知”
- “查找最近违反行为的罚款”
- “向我展示对个人的纪律处分”
监管研究:
- “查找FCA关于运营弹性的所有指导”
- “搜索影响金融科技公司的规则”
- “显示投资的消费者保护要求”
日志和调试
查看服务器日志:
docker-compose logs mcp-server启用调试模式 在Claude配置中添加 --debug 旗帜。
检查Elasticsearch状态:
curl http://localhost:9200/_cat/health?v
# Or use the make command:
make es_health故障排除
常见问题
MCP连接问题
- 确保MCP服务器在端口8080上运行
- MCP服务器运行在
/{MCP_ROOT_PATH}/mcp,不/MCP_ROOT_PATH - 验证Claude Desktop配置是否正确
数据加载失败
- 检查OpenAI API密钥
.env文件 - 确保Elasticsearch正在运行且可访问
- 验证与FCA API和网站的网络连接
- 使用
--ll DEBUG详细日志记录标志
Elasticsearch问题
- 验证是否创建了推理端点:
fca-mcp init-elasticsearch - 使用https://elasticvue.com/检查Elasticsearch实例
贡献
欢迎投稿!请查看我们的 贡献指南 了解如何开始的详细信息。
许可证
MIT许可证-有关详细信息,请参阅许可证文件
