EU Regulations MCP Server
-
项目简介
- 该仓库实现了一套完整的 MCP 服务器框架,用于向 LLM 客户端提供 EU 法规的上下文数据、查询工具以及 Prompts 渲染能力。服务器通过 MCP 协议与客户端通信,处理资源读取、工具执行和提示获取等请求,并支持多种传输方式以便嵌入到不同的 AI 工作流中。
- 核心组件包括:法规资源与全文数据(SQLite/PostgreSQL 适配层)、可注册的工具集、以及基于 MCP 的服务器入口与工具注册逻辑。客户端可以通过 MCP 的请求/响应格式进行数据查询、工具调用和模板渲染,服务器负责会话管理与能力声明。
-
主要功能点
- 资源与数据管理:提供法规、文章、定义、跨引用、适用性规则等的数据访问接口,支持全文检索与跨法规对比。
- 工具注册与执行:定义并暴露一组工具(如 search_regulations、get_article、get_recital、list_regulations、compare_requirements、map_controls 等),LLM 可以通过 JSON-RPC 调用这些工具并获取结构化结果。
- Prompts 定义与渲染:内置对法规领域的查询/对话模板,方便在对话中拼接、呈现法规上下文。
- MCP 传输与协议实现:通过 @modelcontextprotocol/sdk 实现 MCP 服务端,支持向 Claude Desktop、Cursor、VS Code 及其他 MCP 客户端提供服务。
- 多传输模式支持:提供 STDIO 形式的 MCP 服务入口,以及可选的 HTTP/ Streamable HTTP 传输入口,方便在不同运行环境中部署。
- 数据库适配层:提供 SQLite(默认 MCP 服务器)与 PostgreSQL 的适配器,确保在本地开发和生产环境中的灵活性。
-
安装步骤
- 安装依赖:在项目根目录执行安装命令,自动安装所需的依赖包。
- 构建数据库:运行构建脚本以生成并填充本地 data/regulations.db 数据库(包含法规、文章、定义、映射等数据)。
- 启动服务器:使用仓库提供的入口启动 STDIO 或 HTTP 服务器,以接入 MCP 客户端。
- 访问与测试:通过你的 MCP 客户端(如 Claude Desktop、Cursor 等)将服务器地址、名称和启动命令配置为连接点,并进行测试查询。
-
服务器配置(供 MCP 客户端使用的 JSON 配置示例说明)
- 服务器名称(server name):eu-regulations-mcp
- 启动命令(command):npx
- 参数(args):"-y", "@ansvar/eu-regulations-mcp"
- 说明:该配置用于 Claude Desktop/Clude Registry 等环境中,将 MCP 服务器作为一个可安装的节点接入到对话客户端。实际客户端会通过 MCP 协议向服务器发送请求,服务器按规范返回 JSON-RPC 风格的响应。
备注:上述配置是基于仓库 README 中 Quick Start 的推荐用法,客户端仅需按 MCP 客户端要求提供 server 名称、启动命令和参数即可建立连接。
-
基本使用方法
- 启动与连接
- 在 Claude Desktop 等客户端中添加一个 MCP 服务器,命名为 eu-regulations,命令设置为 npx,参数为 ["-y", "@ansvar/eu-regulations-mcp"],完成后重启 Claude Desktop。
- 客户端成功连接后即可开始对 EU 法规数据进行查询、比较与工具调用。
- 常用操作流程
- 通过工具集合查询法规中的相关文章或定义,例如“搜索法规中的 incident 报告相关要求”。
- 调用 get_article、get_recital 等工具检索具体文章/ recital 的原文内容。
- 使用 compare_requirements、map_controls、check_applicability 等工具进行跨法规对比、控件映射和合规性分析。
- 兼容性提醒
- 该实现提供了基本的 MCP 功能及工具集合,具体输出格式遵循 MCP 标准的 JSON-RPC 风格响应,便于与 LLM 客户端进行无缝集成。
- 如需 HTTP 入口,可选使用仓库内的 http-server 实现,以流式传输等方式暴露 MCP 服务。
- 启动与连接
-
额外信息
- 服务器默认通过 SQLite 数据库 data/regulations.db 提供数据访问能力,亦支持 PostgreSQL 适配,便于扩展与云端部署。
- 提供了广泛的工具集用于法规查询、对比、定义、映射和可用性分析,方便在对话中实现丰富的法规上下文交互。