使用说明

项目简介

以色列卫生数据 MCP 服务器项目是一个实现了 Model Context Protocol (MCP) 标准的后端应用。它通过封装以色列卫生部的公开数据仪表盘 API,使得支持 MCP 协议的 LLM(大型语言模型)客户端能够以结构化、可控的方式查询和获取以色列的公共健康数据,例如医疗服务可用性、服务质量、调查数据等。

主要功能点

本项目通过 MCP 协议向 LLM 客户端提供以下功能:

  • 获取主题列表: LLM 可以查询所有可用的卫生数据主题领域及其描述。
  • 获取元数据: LLM 可以为特定主题查询其下包含的数据端点信息、所属分类等。部分元数据可能包含交互式地图链接。
  • 获取具体数据: LLM 可以通过指定的端点名称和项目标识符,获取某个主题下的具体卫生数据。
  • 获取相关链接: LLM 可以查询特定主题相关的文档和资源链接。

安装步骤

  1. 克隆仓库:
    git clone https://github.com/david-aftergut/ILHealth-mcp.git
  2. 进入项目目录:
    cd ILHealth-mcp
  3. 创建并激活虚拟环境: 确保已安装 'uv' 包管理器 (可通过 'pip install uv' 或参考 uv 文档)。
    uv venv
    # 在 Windows 上:
    .venv\Scripts\activate
    # 在 macOS/Linux 上:
    source .venv/bin/activate
  4. 安装依赖:
    uv pip install -r pyproject.toml
  5. 锁定依赖 (可选,推荐):
    uv lock

服务器配置

MCP 服务器需要由 MCP 客户端(如 VS Code 中的 Copilot Agent, Claude AI assistant 等)启动和管理。客户端需要知道如何执行服务器程序。本项目作为 MCP 服务器,通常通过 'fastmcp' 命令行工具启动。

MCP 客户端通常需要一个 JSON 格式的配置来指定如何启动服务器。对于本项目,典型的配置信息如下:

  • 'server name' (服务器名称): 在 'server.py' 代码中指定为 '"ILHealth"'。客户端将以此名称识别服务器。
  • 'command' (启动命令): 通常是 '"fastmcp"' (确保 'fastmcp' 已安装并位于系统 PATH 中,或者提供其完整路径)。
  • 'args' (命令参数): 用于告诉 'fastmcp' 运行哪个服务器脚本。对于本项目,参数通常是 '["dev", "server.py"]'。这里的 '"server.py"' 路径通常相对于 MCP 客户端启动命令执行的目录(例如,项目的根目录)。

客户端配置示例 (注意:这仅是概念说明,您需要在您的 MCP 客户端中按照其要求进行实际配置,不要直接复制代码):

{
  "server name": "ILHealth",
  "command": "fastmcp",
  "args": ["dev", "server.py"],
  // 其他客户端可能需要的配置,如工作目录等
}

在 Visual Studio Code 中,通常通过编辑项目根目录下的 '.vscode/mcp.json' 文件来配置,并确保 VS Code 的 MCP 插件已启用发现功能。具体的配置方式请参考您的 MCP 客户端文档。

基本使用方法

  1. 按照安装步骤完成项目设置,并确保虚拟环境已激活。
  2. 根据您的 MCP 客户端(如支持 MCP 的 VS Code Copilot 或 Claude AI 等)的要求,配置并启动 MCP 服务器。根据配置方法不同,服务器可能会自动随客户端启动,或者需要手动运行 'fastmcp dev server.py' 命令(用于测试)。
  3. 一旦服务器成功启动并被客户端发现,您的 LLM 就可以开始使用本项目提供的工具来查询以色列卫生部的数据了。例如,您可以直接向 LLM 提问:
    • "以色列有哪些公共卫生数据主题?" (LLM 可能调用 'get_available_subjects' 工具)
    • "告诉我关于医院服务质量数据的详细信息。" (LLM 可能调用 'get_metadata' 工具,然后调用 'get_data' 工具)
    • "有没有关于儿童体检的文档链接?" (LLM 可能调用 'get_links' 工具)

LLM 会根据您的问题自动选择合适的工具并执行,然后将结果汇总并回答您。

信息

分类

网页与API