Agent Care MCP服务器使用说明
项目简介
Agent Care 是一个 Model Context Protocol (MCP) 服务器,旨在为大型语言模型 (LLM) 应用提供医疗健康领域的上下文信息和功能。它主要用于连接电子病历 (EMR) 系统,如 Cerner 和 Epic,并提供工具来访问患者数据、进行医学研究,从而增强 LLM 在医疗健康场景下的应用能力。
主要功能点
- EMR系统集成: 通过 SMART on FHIR API 和 OAuth2 认证,安全连接 Cerner 和 Epic 等 EMR 系统。
- 患者数据访问: 提供多种工具,用于检索患者的 demographics 信息、观测数据 (如生命体征、实验室结果)、病历、用药记录、过敏史等 FHIR 资源。
- 医学研究工具: 集成了 PubMed、ClinicalTrials.gov 和 FDA API,支持医学文献、临床试验和药品信息的检索。
- Claude/Goose Desktop 集成: 专门为 Anthropic Claude Desktop 和 Goose Desktop 等 MCP 客户端设计,方便集成和使用。
- 数据缓存与错误处理: 具备响应缓存机制,优化数据访问效率,并提供错误处理机制,提升系统稳定性。
安装步骤
- 克隆仓库
在你的本地计算机上克隆 Agent Care MCP 服务器仓库:
git clone https://github.com/Kartha-AI/agentcare-mcp cd agentcare-mcp - 安装依赖
使用 npm 安装项目依赖:
npm install - 构建项目
构建 TypeScript 项目:
npm run build
服务器配置 (MCP 客户端配置)
为了让 MCP 客户端(如 Claude Desktop 或 Goose Desktop)连接到 Agent Care MCP 服务器,您需要在客户端的配置文件中添加服务器配置信息。以下是 Claude Desktop 配置文件 'claude_desktop_config.json' 的配置示例,Goose Desktop 的配置方式类似。
{ "mcpServers": { "agent-care": { "command": "node", "args": [ "/path/to/agentcare-mcp/build/index.js" // 替换为 agentcare-mcp 项目 build/index.js 的实际路径 ], "env": { "OAUTH_CLIENT_ID": "YOUR_OAUTH_CLIENT_ID", // 你的 EMR OAuth Client ID "OAUTH_CLIENT_SECRET": "YOUR_OAUTH_CLIENT_SECRET", // 你的 EMR OAuth Client Secret "OAUTH_TOKEN_HOST": "EMR_OAUTH_TOKEN_HOST", // EMR OAuth Token Host (例如,Cerner: "https://authorization.cerner.com") "OAUTH_AUTHORIZE_PATH": "EMR_OAUTH_AUTHORIZE_PATH", // EMR OAuth Authorize Path (例如,Cerner: "/tenants/.../authorize") "OAUTH_TOKEN_PATH": "EMR_OAUTH_TOKEN_PATH", // EMR OAuth Token Path (例如,Cerner: "/tenants/.../token") "OAUTH_AUDIENCE": "EMR_FHIR_API_URL", // EMR FHIR API URL (例如,Cerner: "https://fhir-ehr.cerner.com/r4/...") "OAUTH_CALLBACK_URL": "http://localhost:3456/oauth/callback", // OAuth 回调 URL (默认: http://localhost:3456/oauth/callback) "OAUTH_SCOPES": "FHIR_SCOPES", // 必需的 FHIR Scopes (例如, "user/Patient.read user/Observation.read ...") "OAUTH_CALLBACK_PORT": 3456, // OAuth 回调端口 (默认: 3456) "FHIR_BASE_URL": "EMR_FHIR_API_URL", // EMR FHIR Base URL (同 OAUTH_AUDIENCE) "PUBMED_API_KEY": "YOUR_PUBMED_API_KEY", // 你的 PubMed API Key "CLINICAL_TRIALS_API_KEY": "YOUR_CLINICAL_TRIALS_API_KEY", // 你的 Clinical Trials API Key "FDA_API_KEY": "YOUR_FDA_API_KEY" // 你的 FDA API Key } } } }
注意:
- 请将 '/path/to/agentcare-mcp' 替换为 'agentcare-mcp' 项目在您本地文件系统中的实际路径。
- 'YOUR_OAUTH_CLIENT_ID', 'EMR_OAUTH_TOKEN_HOST', 'FHIR_SCOPES' 等占位符需要替换为您的实际 EMR 系统和 API 密钥信息。
- 详细的 Cerner 和 Epic EMR 配置信息,请参考仓库 'README.md' 文件中的 "Development Configuration" 部分。
基本使用方法
- 启动 MCP 服务器: Agent Care MCP 服务器在配置完成后,会在 MCP 客户端(如 Claude Desktop 或 Goose Desktop)启动时自动运行。
- 在 LLM 中调用工具: 在 LLM 对话中,您可以指示 LLM 使用预定义的工具来获取医疗健康信息。例如,您可以指示 LLM 调用 'find_patient' 工具来搜索患者,或调用 'get_patient_observations' 工具来获取患者的生命体征数据。
- 工具参数: 每个工具都有其特定的参数,例如 'find_patient' 工具需要 'lastName' 参数,'get_patient_observations' 工具需要 'patientId' 参数。请参考 'README.md' 或 'build/server/constants/tools.js' 文件中 'TOOL_DEFINITIONS' 获取工具的详细参数信息。
示例工具
FHIR 工具:
- 'find_patient': 通过姓名、出生日期等信息查找患者。
- 'get_patient_observations': 获取患者的观测数据,如生命体征、实验室结果等。
- 'get_patient_conditions': 获取患者的诊断和病历信息。
- 'get_patient_medications': 获取患者的用药医嘱。
- 'clinical_query': 执行自定义 FHIR 查询。
医学研究工具:
- 'search-pubmed': 搜索 PubMed 医学文献。
- 'search-trials': 搜索 ClinicalTrials.gov 临床试验信息。
- 'drug-interactions': 检查药物相互作用。
测试用户登录 (Sandbox/Dev 环境)
- Cerner: 用户名 'portal' | 密码 'portal'
- Epic: 用户名 'FHIRTWO' | 密码 'EpicFhir11!'
信息
分类
商业系统