项目简介
google-cloud-healthcare-api-mcp 是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在为大型语言模型 (LLM) 客户端提供医疗健康领域的上下文信息和工具。它连接 Google Cloud Healthcare API (FHIR) 以及 PubMed、ClinicalTrials.gov 等公共医疗研究 API,使 LLM 能够访问和利用这些资源进行更智能的医疗健康应用。
主要功能点
- FHIR 数据访问: 通过集成 Google Cloud Healthcare API,提供对电子病历 (EHR) 中 FHIR 数据的访问能力,包括患者信息、观察结果、病历、药物、诊断、过敏史等。
- 医学研究工具: 集成 PubMed、ClinicalTrials.gov 和 FDA API,提供医学文献检索、临床试验查找和药物信息查询功能,扩展 LLM 在医学研究领域的应用。
- 工具注册与调用: 注册了一系列预定义的工具,允许 LLM 客户端通过 MCP 协议调用这些工具,执行数据查询和信息检索操作。
- Prompt 模板: 预置了多种临床场景下的 Prompt 模板,支持根据患者数据和医疗信息生成定制化的 Prompt,优化 LLM 的交互体验。
- 身份验证与安全: 使用 Firebase Auth 进行身份验证,确保对 Google Cloud Healthcare API 的安全访问。
- 本地部署与 Smithery 安装: 支持本地 Docker 部署和通过 Smithery 平台一键安装,方便用户快速搭建和使用。
安装步骤
-
克隆仓库
git clone https://github.com/Kartha-AI/google-cloud-healthcare-api-mcp.git cd google-cloud-healthcare-api-mcp -
安装依赖
npm install -
构建项目
npm run build -
安装 MCP Inspector (可选,用于本地测试)
npm install -g @modelcontextprotocol/inspector
服务器配置
为了让 MCP 客户端(例如 Claude)连接到此 MCP 服务器,您需要配置客户端的 'mcpServers' 设置。以下是 Claude Desktop 客户端的配置示例,您需要根据实际情况修改 'command' 和 'env' 中的路径和环境变量:
{ "mcpServers": { "google-cloud-healthcare-api-mcp": { "command": "node", "args": [ "/Users/your-username/google-cloud-healthcare-api-mcp/build/index.js" // 请替换为您的项目 build/index.js 文件的实际路径 ], "env": { "FIREBASE_API_KEY":"XXXXXXXXX", // 您的 Firebase API Key "FIREBASE_AUTH_DOMAIN":"XXXXXXXX", // 您的 Firebase Auth Domain "FIREBASE_PROJECT_ID":"XXXXXXX", // 您的 Firebase Project ID "FIREBASE_STORAGE_BUCKET":"XXXXXXXXX", // 您的 Firebase Storage Bucket "FIREBASE_MESSAGING_SENDER_ID":"XXXXXXX", // 您的 Firebase Messaging Sender ID "FIREBASE_APP_ID":"XXXXXXXXX", // 您的 Firebase App ID "FIREBASE_MEASUREMENT_ID":"XXXXXXXX", // 您的 Firebase Measurement ID "FIREBASE_AUTH_CALLBACK_PORT":"3456", // Firebase Auth 回调端口,默认 3456 "FHIR_BASE_URL":"{gchapi-fhir-gateway-host}/fhir", // 您的 Google Cloud Healthcare API FHIR Gateway Base URL,请替换为实际地址 "PUBMED_API_KEY":"your_pubmed_api_key", // 您的 PubMed API Key (如需使用 PubMed 工具) "CLINICAL_TRIALS_API_KEY":"your_trials_api_key", // 您的 Clinical Trials API Key (如需使用 Clinical Trials 工具) "FDA_API_KEY":"your_fda_api_key" // 您的 FDA API Key (如需使用 FDA 工具) } } } }
注意:
- 请将 'command' 和 'args' 中的路径替换为 'build/index.js' 文件在您本地文件系统中的实际路径。
- 'env' 部分列出了服务器运行所需的必需环境变量,您需要根据您的 Firebase 项目和 API 密钥信息进行配置。
- 'FHIR_BASE_URL' 需要指向您的 Google Cloud Healthcare API FHIR Gateway 的地址。
- 'PUBMED_API_KEY'、'CLINICAL_TRIALS_API_KEY' 和 'FDA_API_KEY' 是可选的,仅当您需要使用相应的医学研究工具时才需要配置。
基本使用方法
-
启动 MCP 服务器
如果您使用 MCP Inspector 进行本地测试,可以运行:
mcp-inspector build/index.js然后访问 'http://localhost:5173',并在 Inspector 界面中设置所需的环境变量。
对于 Claude 等 MCP 客户端,服务器会在客户端启动并尝试连接时自动运行 (如果配置正确)。
-
在 MCP 客户端中使用工具和 Prompt
在客户端中,您应该能够看到此 MCP 服务器提供的工具列表 (例如 'find_patient', 'get_patient_observations', 'search-pubmed' 等) 和 Prompt 模板 (例如 'summarize_patient', 'medication_review' 等)。
您可以根据工具和 Prompt 的描述,结合 LLM 的对话能力,利用这些工具和 Prompt 获取医疗健康信息,例如:
- 使用 'find_patient' 工具查找特定患者的信息。
- 使用 'get_patient_observations' 工具获取患者的 vital signs 或 lab results。
- 使用 'search-pubmed' 工具检索医学文献。
- 使用 'summarize_patient' Prompt 模板生成患者健康状况总结。
具体的工具和 Prompt 使用方法,请参考仓库 README.md 文件和工具/Prompt 的描述信息。
信息
分类
网页与API