🏥 EPIC EHR MCP服务器
用于具有OAuth 2.0身份验证的电子健康记录的生产就绪模型上下文协议(MCP)服务器。
🚀 快速开始
1.安装依赖项
pip install -r requirements.txt2.设置数据库(仅限第一次)
如果您有现有数据:
- 数据库文件
ehr_database.db已包含 - 跑
python seed_database.py添加OAuth客户端
如果重新开始:
python seed_database.py这将创建数据库模式和OAuth客户端。
3.启动服务器
python server.py --websocket服务器运行于: ws://0.0.0.0:7777
⚠️ 重要: 这 oauth_clients_credentials.json 该文件包含您的OAuth凭据,请确保其安全!
🔐 认证
用途 OAuth 2.0客户端凭据 流量:
# Authenticate
{
"client_id": "client_abc123...",
"client_secret": "secret_xyz789...",
"app_id": "copilot-studio"
}
# Returns access_token for API calls📋 可用工具
- 验证 -OAuth 2.0身份验证
- 注册表_客户端 -注册新的OAuth客户端
- validate_token -验证访问令牌
- get_patient -通过MRN获取患者
- 搜索_患者 -按姓名搜索患者
- 创建_患者 -创建新患者
- get_appoints -预约患者
- 时间表_预约 -安排新的预约
- get_指示 -获取患者药物
- 处方用药 -开新药
- get_lab_results -获取实验室结果
- get_vital_signs -获取生命体征
- record_vital_signs -记录新的生命体征
- 获取_过敏反应 -引起患者过敏
🌐 部署
DigitalOcean水滴
- 创建快捷批处理程序 (Ubuntu 22.04 LTS)
- 克隆存储库
git clone
cd epic-ehr-mcp-server-db- 安装Python及其依赖项
sudo apt update
sudo apt install python3 python3-pip python3-venv -y
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt- 配置环境
cp .env.example .env
nano .env # Edit with production values- 上载数据库
# Upload ehr_database.db and oauth_clients_credentials.json to server
scp ehr_database.db root@your-droplet:/home/ehrserver/epic-ehr-mcp-server-db/
scp oauth_clients_credentials.json root@your-droplet:/home/ehrserver/- 使用systemd运行 (参见DEPLOYMENT.md)
环境变量
DATABASE_URL=sqlite:///ehr_database.db
JWT_SECRET_KEY=your-production-secret-key
SERVER_HOST=0.0.0.0
SERVER_PORT=7777🔒 安全
- OAuth 2.0客户端凭据
- JWT代币(60分钟到期)
- 使用SHA-256散列的客户端机密
- 基于角色的访问控制
- 基于范围的权限
📊 数据库模式
- oauth_客户端 -OAuth客户端凭据
- 患者 -患者人口统计
- 提供商 -医疗保健提供者
- 预约 -患者预约
- 药物 -处方
- 过敏 -患者过敏
- 生命体征 -生命测量
- 实验室结果 -实验室结果
🧪 测试
# Test authentication
python -c "from auth import authenticate_client; print(authenticate_client('client_id', 'secret', 'app_id'))"📚 文档
- 建筑.md -系统架构
- DATABASE_SCHEMA.md -数据库架构详细信息
- 部署.md -部署指南
- oauth_clients_credentials.json -OAuth凭据(gitignored)
🎯 Microsoft Copilot Studio集成
此服务器专为Microsoft Copilot Studio MCP集成而设计:
- 在Copilot Studio中配置MCP连接
- 使用WebSocket URL:
ws://your-server:7777 - 从提供OAuth凭据
oauth_clients_credentials.json - Copilot Studio自动发现所有工具
📞 支持
- 端口:7777(WebSocket)
- 协议:MCP(模型上下文协议)
- 身份验证:OAuth 2.0客户端凭据
📝 许可证
MIT许可证-请参阅许可证文件
______________________________________________________________________
版本: 1.0.0\ 最后更新时间: 2025年11月28日
