Skip to main content
Glama
ApentengJoseph

Clinical Handover MCP Server

臨床引き継ぎ MCP サーバー

臨床引き継ぎ調整エージェントのための Model Context Protocol (MCP) サーバーです。 リスク分類、SBAR生成、完全性検証、フォローアップタスク抽出、病棟設定管理のための構造化ツールを提供します。

⚠️ 安全上の注意: すべての出力は臨床コミュニケーション支援のためのドラフトに過ぎません。 本システムは診断、処方、または臨床的な意思決定を行うものではありません。 すべての出力は、患者ケアに使用する前に、資格のある臨床専門家によって確認されなければなりません。


クイックスタート

前提条件

  • Node.js ≥ 20

  • npm ≥ 9

インストールとビルド

# 1. Install dependencies
npm install

# 2. Compile TypeScript → build/
npm run build

# 3. Verify the server starts cleanly
npm start
# Expected stderr: [clinical-handover-mcp] Server running on stdio transport. Ready.
# Press Ctrl+C to stop.

ローカル開発(ビルドステップなし)

npm run dev          # runs src/index.ts via tsx directly

リント(TypeScript型チェック、出力なし)

npm run lint

Related MCP server: CardioTriage MCP Server

MCP Inspector での検査

npm run inspect
# Opens MCP Inspector UI — usually at http://localhost:5173

インスペクターを使用すると、フォームUIを使用して各ツールを対話的に呼び出し、生のJSONレスポンスを確認できます。テストデータとして src/data/sample-handover.md にあるサンプル入力を使用してください。


ツール

ツール

目的

classify_patient_risk

患者ケースのリスクスコアリング(高/中/低/不明)

validate_handover_completeness

不足している重要なフィールドを確認し、0〜100のスコアを返す

generate_follow_up_tasks

Gmail/Fireflies/Notionのテキストから優先順位付けされたタスクを抽出する

build_sbar_handover

構造化されたSBAR引き継ぎドキュメントをフォーマットする

create_handover_record

完全なシフト引き継ぎ記録を組み立てる

update_ward_preferences

臨床医のフィードバックから病棟固有の優先ルールをドラフトする


Claude Desktop への接続

~/Library/Application Support/Claude/claude_desktop_config.json (macOS) または %APPDATA%\Claude\claude_desktop_config.json (Windows) に追加します:

{
  "mcpServers": {
    "clinical-handover": {
      "command": "node",
      "args": ["/ABSOLUTE/PATH/TO/clinical-handover-mcp-server/build/index.js"]
    }
  }
}

/ABSOLUTE/PATH/TO/ を実際のパスに置き換えてから、Claude Desktopを再起動してください。 6つのツールがClaudeのツールパレットに表示されます。


Agentman への接続

Agentmanのエージェント設定で、このMCPサーバーをツールソースとして追加します:

{
  "mcp_servers": [
    {
      "name": "clinical-handover",
      "transport": "stdio",
      "command": "node",
      "args": ["build/index.js"],
      "cwd": "/path/to/clinical-handover-mcp-server"
    }
  ]
}

エージェントはMCPプロトコルを介して6つのツールすべてを自動的に検出します。


環境変数

.env.example を .env にコピーし、必要に応じて入力してください:

cp .env.example .env

現在、サーバーはシークレットを必要としません。すべてのロジックはローカルで完結します。 将来的な統合(例:Notionへの書き戻し)を行う場合は、ここにトークンを追加します。


将来の展望:ストリーミング可能なHTTPデプロイメント

現在、サーバーはstdioトランスポートを使用しています(ローカルエージェントやClaude Desktopにとって最もシンプルです)。

マルチエージェントやリモートデプロイメントのためにHTTPエンドポイントとして公開するには:

  1. 利用可能な場合はHTTPトランスポートパッケージをインストールします:

    npm install @modelcontextprotocol/sdk-transport-http
  2. src/index.ts の StdioServerTransport を StreamableHttpServerTransport に置き換えます:

    import { StreamableHttpServerTransport } from "@modelcontextprotocol/sdk-transport-http";
    const transport = new StreamableHttpServerTransport({ port: 3000 });
  3. TLSを使用してリバースプロキシ(nginx/Caddy)の背後にデプロイします。

  4. 公開する前にベアラートークン認証ミドルウェアを追加します。

現時点では、攻撃対象領域を最小限に抑え、臨床コミュニケーションツールにおけるネットワーク認証情報の管理を回避できるため、stdioが推奨されます。


安全設計の原則

  1. 診断を行わない。 ツールはコミュニケーション目的でのみスコアリングと分類を行い、臨床治療の判断材料にはしません。

  2. 処方を行わない。 SBARの recommendation フィールドは引き継ぎコミュニケーション用であり、処方箋ではありません。

  3. 必須の免責事項。 すべてのツール出力には安全上の注意が記載されます。

  4. 人間による承認ゲート。 update_ward_preferences はNotionに直接書き込むことはなく、人間が確認するためのルールをドラフトします。

  5. PII(個人識別情報)の非保存。 サーバーは呼び出し間で状態を保持しません。ツール呼び出しで使用される患者識別子は永続化されません。


プロジェクト構造

src/
  index.ts        Entry point — stdio transport setup, graceful shutdown
  server.ts       Tool registration (MCP tool schemas + handlers)
  logic.ts        Core business logic (risk scoring, completeness, task extraction)
  formatters.ts   Output formatters (SBAR markdown, task tables, handover records)
  safety.ts       Safety disclaimer constants
  types.ts        Shared TypeScript interfaces and type aliases
  data/
    sample-handover.md   Sample handover text for testing
docs/
  CODEX_PROMPT.md  Agent system prompt reference

Related MCP Connectors

Related MCP Servers