mcpField
M
mcp-ratchet-clinical-charting

mcp-ratchet-clinical-charting

本地服务
github.com/m2ai-mcp-servers健康医疗034 周前更新

关于 mcp-ratchet-clinical-charting

mcp-ratchet-clinical-charting 是一款 MCP 服务,帮助居家护理护士通过 Claude 将患者访视记录写入 EMR。目前它以虚构患者数据运行于模拟模式,生产环境的 EMR 集成尚待完成。

主要功能

  1. 01按姓名、ID 或电话查找患者
  2. 02创建含生命体征的访视记录
  3. 03检索患者访视历史
  4. 04使用内存中的模拟访视记录

适用场景

  1. 01在记录工作流中查找患者
  2. 02记录含生命体征的访视
  3. 03查看患者过往访视

MCP 相关

该 MCP 服务向 Claude 和其他 MCP 客户端提供患者搜索、创建访视记录及查询患者历史的工具。目前模拟模式使用虚构患者数据,并将记录保存在内存中;PointCare 生产集成尚待完成。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"m2ai-mcp-servers-mcp-ratchet-clinical-charting": {
"command": "npx",
"args": [
"-y",
"mcp-ratchet-clinical-charting"
],
"env": {
"POINTCARE_API_URL": "<POINTCARE_API_URL>",
"POINTCARE_API_KEY": "<POINTCARE_API_KEY>"
}
}
}
}
启动命令npx -y mcp-ratchet-clinical-charting
需要配置的环境变量
POINTCARE_API_URLEMR API base URL (optional - runs in mock mode if not set)
POINTCARE_API_KEY密钥EMR API key (required for production mode)

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmmcp-ratchet-clinical-charting0.1.0

工具

3

收录的工具列表 · 更新于 2 周前

参数类型必填说明
limitnumber否要返回的最大结果数(默认值:10,最大值:50)
querystring是搜索词:患者姓名、ID(例如:PT-10001)或电话号码
statusenum否按患者状态筛选。如果未指定,则返回所有状态的患者。active | inactive | discharged | pending
searchTypeenum否要执行的搜索类型。默认为 "all",即搜索所有字段。name | id | phone | all

详细介绍

mcp-ratchet-clinical-charting

用于临床病历记录的 MCP 服务,可与 Claude 配合使用(代号:Ratchet) - 支持 Claude 将患者就诊记录直接写入电子病历,减轻居家护理护士的行政负担。

**注意:**目前处于模拟模式,用于开发和测试。即将支持生产环境电子病历集成。

状态

组件状态
MCP Server✅ 正常运行(模拟模式)
单元测试✅ 20/20 通过
Claude Desktop✅ 已准备好进行测试
PointCare API⏳ 等待 API 文档

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

快速开始

从 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  # Development mode
npm test     # Run tests

模拟模式

默认情况下,如果未配置 POINTCARE_API_URL,Ratchet 将以模拟模式运行。模拟模式:

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

可用工具

工具描述模拟模式
search_patient按姓名、ID 或电话号码查找患者✅ 正常运行
create_visit_note记录患者就诊情况及生命体征✅ 正常运行
get_patient_history检索患者就诊历史✅ 正常运行
使用示例(在 Claude 中)
"Search for patient Eleanor Thompson"
→ Returns patient PT-10001 with demographics and status

"Create a visit note for PT-10001 with blood pressure 120/80"
→ Creates and stores visit note with vitals

"Get visit history for PT-10001"
→ Returns list of previous visits

Claude Desktop 集成

配置 Claude Desktop

将以下内容添加到 Claude Desktop 配置文件中:

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 Desktop

重启 Claude Desktop 以加载新的 MCP 服务。

步骤 4:验证

在 Claude Desktop 中,你应该能看到:

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

试试:“搜索患者 Eleanor”

测试患者(模拟模式)

ID姓名状态主要诊断
PT-10001Eleanor Thompson在院2 型糖尿病、CHF
PT-10002Robert Martinez在院COPD、术后
PT-10003Margaret Wilson在院帕金森病
PT-10004James Thompson在院中风后康复
PT-10005Dorothy Anderson已出院髋关节置换

起源故事

Ratchet 源自 M2AI NurseCall n8n 工作流,旨在帮助居家护理护士记录就诊情况:

Current Flow (M2AI NurseCall):
┌─────────┐    ┌─────────┐    ┌─────────┐    ┌─────────┐
│ Twilio  │───>│  n8n    │───>│  VAPI   │───>│  Email  │
│  SMS    │    │ Workflow│    │  Call   │    │ Summary │
└─────────┘    └─────────┘    └─────────┘    └─────────┘

**问题:**就诊记录会发送到电子邮件,但仍需手动录入 PointCare EMR。

Ratchet 的解决方案:

Future Flow (with 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 server entry point
│   ├── config.ts             # Configuration management
│   ├── tools/                # Tool implementations
│   │   ├── search-patient.ts
│   │   ├── create-visit-note.ts
│   │   └── get-patient-history.ts
│   ├── services/             # Business logic
│   │   ├── patient-service.ts
│   │   └── mock-data.ts
│   ├── types/                # TypeScript types
│   └── utils/                # Logger, errors
├── tests/
│   └── patient-service.test.ts
├── dist/                     # Compiled output
├── prds/
│   └── RATCHET-PRD.yaml
├── docs/
│   └── API_REQUIREMENTS.md
├── package.json
├── tsconfig.json
└── jest.config.js

开发

# Run in watch mode
npm run dev

# Run tests
npm test

# Run tests with coverage
npm test -- --coverage

# Lint
npm run lint

后续步骤

  1. 获取 PointCare API 文档 - 参见 docs/API_REQUIREMENTS.md
  2. 完成 PRD - 根据真实 API 详情填写工具规范
  3. 实现真实 API 调用 - 替换模拟响应
  4. 集成测试 - 使用 PointCare 沙盒进行测试

相关项目

许可证

MIT


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

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。