Back to MCP directory
publicPublicdnsLocal runtime

mcp-ratchet-clinical-charting

MCP服务器用于临床病历记录,帮助家庭健康护士将患者就诊信息直接记录到电子病历系统中,减少行政负担。目前处于模拟模式,用于开发和测试。

article

README

🚀 临床病历记录MCP服务器(代号:Ratchet)

此项目为使用Claude进行临床病历记录的MCP服务器,可让Claude直接将患者就诊信息记录到电子病历中,减轻居家护理护士的行政负担。

🚀 快速开始

从npm安装(推荐)

npx mcp-ratchet-clinical-charting

从源代码安装

git clone https://github.com/m2ai-mcp-servers/mcp-ratchet-clinical-charting.git
cd mcp-ratchet-clinical-charting
npm install
npm run build
npm run dev  # 开发模式
npm test     # 运行测试

✨ 主要特性

  • 支持Claude直接将患者就诊信息记录到电子病历中,减轻居家护理护士的行政负担。
  • 目前支持模拟模式,可用于开发和测试,未来将集成生产环境的电子病历系统。
  • 提供了多个工具,如搜索患者、创建就诊记录、获取患者就诊历史等。

📦 安装指南

从npm安装(推荐)

npx mcp-ratchet-clinical-charting

从源代码安装

git clone https://github.com/m2ai-mcp-servers/mcp-ratchet-clinical-charting.git
cd mcp-ratchet-clinical-charting
npm install
npm run build
npm run dev  # 开发模式
npm test     # 运行测试

💻 使用示例

基础用法

在Claude中使用示例:

"Search for patient Eleanor Thompson"
→ 返回患者PT - 10001的人口统计信息和状态

"Create a visit note for PT-10001 with blood pressure 120/80"
→ 创建并存储包含生命体征的就诊记录

"Get visit history for PT-10001"
→ 返回之前的就诊记录列表

📚 详细文档

状态信息

| 组件 | 状态 | |-----------|--------| | MCP服务器 | ✅ 正常运行(模拟模式) | | 单元测试 | ✅ 20/20通过 | | Claude桌面版 | ✅ 可进行测试 | | PointCare API | ⏳ 等待API文档 |

当前模式:模拟模式 - 使用逼真的测试数据进行开发和测试。

模拟模式

当未配置POINTCARE_API_URL时,Ratchet默认以模拟模式运行。模拟模式具有以下特点:

  • 使用5个虚构的测试患者。
  • 将就诊记录存储在内存中。
  • 返回逼真的响应。
  • 非常适合开发和Claude桌面版测试。

可用工具

| 工具 | 描述 | 模拟模式 | |------|-------------|-----------| | search_patient | 按姓名、ID或电话查找患者 | ✅ 可用 | | create_visit_note | 记录患者就诊时的生命体征 | ✅ 可用 | | get_patient_history | 获取患者的就诊历史 | ✅ 可用 |

Claude桌面版集成

配置Claude桌面版

将以下内容添加到Claude桌面版配置文件中: macOS~/Library/Application Support/Claude/claude_desktop_config.json Windows%APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "ratchet": {
      "command": "npx",
      "args": ["-y", "mcp-ratchet-clinical-charting"]
    }
  }
}

生产模式下与电子病历系统集成的配置:

{
  "mcpServers": {
    "ratchet": {
      "command": "npx",
      "args": ["-y", "mcp-ratchet-clinical-charting"],
      "env": {
        "POINTCARE_API_URL": "https://api.pointcare.com",
        "POINTCARE_API_KEY": "your-api-key"
      }
    }
  }
}

步骤3:重启Claude桌面版

重启Claude桌面版以加载新的MCP服务器。

步骤4:验证

在Claude桌面版中,你应该能看到:

  • search_patient工具可用
  • create_visit_note工具可用
  • get_patient_history工具可用

可以尝试输入:"Search for patient Eleanor"

测试患者(模拟模式)

| ID | 姓名 | 状态 | 主要诊断 | |----|------|--------|-------------------| | PT - 10001 | Eleanor Thompson | 活跃 | 2型糖尿病、充血性心力衰竭 | | PT - 10002 | Robert Martinez | 活跃 | 慢性阻塞性肺疾病、术后 | | PT - 10003 | Margaret Wilson | 活跃 | 帕金森病 | | PT - 10004 | James Thompson | 活跃 | 中风后康复 | | PT - 10005 | Dorothy Anderson | 已出院 | 髋关节置换 |

起源故事

Ratchet源于M2AI NurseCall的n8n工作流,该工作流旨在帮助居家护理护士进行就诊记录:

当前流程(M2AI NurseCall):
┌─────────┐    ┌─────────┐    ┌─────────┐    ┌─────────┐
│ Twilio  │───>│  n8n    │───>│  VAPI   │───>│  Email  │
│  SMS    │    │ Workflow│    │  Call   │    │ Summary │
└─────────┘    └─────────┘    └─────────┘    └─────────┘

问题:就诊记录通过电子邮件发送,但仍需手动输入到PointCare电子病历系统中。

Ratchet的解决方案

未来流程(使用Ratchet):
┌─────────┐    ┌─────────┐    ┌──────────┐    ┌───────────┐
│ Twilio  │───>│  n8n    │───>│ Ratchet  │───>│ PointCare │
│  SMS    │    │ Workflow│    │   MCP    │    │    EMR    │
└─────────┘    └─────────┘    └──────────┘    └───────────┘

配置信息

| 变量 | 是否必需 | 描述 | |----------|----------|-------------| | POINTCARE_API_URL | 否* | PointCare API的基础URL | | POINTCARE_API_KEY | 否* | API密钥或令牌 | | RATCHET_MOCK_MODE | 否 | 强制使用模拟模式(true/false) | | LOG_LEVEL | 否 | 日志级别(debug/info/warn/error) |

*生产环境使用时必需。未设置时激活模拟模式。

项目结构

ratchet/
├── src/
│   ├── index.ts              # MCP服务器入口点
│   ├── config.ts             # 配置管理
│   ├── tools/                # 工具实现
│   │   ├── search-patient.ts
│   │   ├── create-visit-note.ts
│   │   └── get-patient-history.ts
│   ├── services/             # 业务逻辑
│   │   ├── patient-service.ts
│   │   └── mock-data.ts
│   ├── types/                # TypeScript类型
│   └── utils/                # 日志记录器、错误处理
├── tests/
│   └── patient-service.test.ts
├── dist/                     # 编译输出
├── prds/
│   └── RATCHET-PRD.yaml
├── docs/
│   └── API_REQUIREMENTS.md
├── package.json
├── tsconfig.json
└── jest.config.js

开发

# 以监听模式运行
npm run dev

# 运行测试
npm test

# 运行测试并生成覆盖率报告
npm test -- --coverage

# 代码检查
npm run lint

下一步计划

  1. 获取PointCare API文档 - 查看docs/API_REQUIREMENTS.md
  2. 完成产品需求文档(PRD) - 使用真实的API细节填充工具规范
  3. 实现真实的API调用 - 替换模拟响应
  4. 集成测试 - 使用PointCare沙箱进行测试

相关项目

📄 许可证

本项目采用MIT许可证。


使用GRIMLOCK - 自主MCP服务器工厂构建

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client