mcpField
F
fhir-mcp-server-medagentbench

fhir-mcp-server-medagentbench

ローカル
github.com/mike-holcombヘルスケア081 週間前に更新

fhir-mcp-server-medagentbench について

fhir-mcp-server-medagentbench は、実際の FHIR エンドポイントなしで MedAgentBench エージェントをテストする Python 製 MCP サーバーです。FHIR 操作を模擬し、送信されるはずの HTTP リクエストをテキストで返します。

主な機能

  1. 01FHIR の検索と読み取りを模擬
  2. 02FHIR リソースの作成を模擬
  3. 03HTTP リクエストをテキストで表現
  4. 04模擬リソースとツールを公開

活用シーン

  1. 01実際の FHIR API なしで MedAgentBench エージェントをテスト
  2. 02生成された FHIR リクエスト表現を確認

MCP 対応

MCP クライアントに、検索、読み取り、リソース作成などの模擬 FHIR リソースとツールを公開します。FHIR サーバーへ HTTP リクエストを送らず、リクエスト内容をテキストで返します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

fhir-mcp-server-medagentbench

PyPI version License: MIT

MedAgentBench 環境向けに設計された、Python ベースの MCP(MedAgentBench Communications Protocol)サーバーです。このサーバーは、FHIR(Fast Healthcare Interoperability Resources)API とのやり取りをシミュレートします。

FHIR サーバーに実際の HTTP リクエストを送信する代わりに、FHIR 操作の MCP リクエストを傍受し、実行されるはずだった HTTP リクエストのテキスト表現を返します(例:GET https://fhir.example.com/Patient/123 または POST https://fhir.example.com/Observation\n{...})。これにより、稼働中の FHIR エンドポイントを用意せずに、MedAgentBench エージェントをテストできます。

特長

  • MCP ハンドラーを実装します:
    • list_resources:利用可能なシミュレート対象リソース(現在は CapabilityStatement)を一覧表示します。
    • read_resource:URI で指定された FHIR リソースの読み取りをシミュレートします。
    • list_tools:利用可能な FHIR シミュレーションツールを一覧表示します。
    • call_tool:FHIR 操作の実行をシミュレートします:
      • search_fhir:FHIR リソースの検索をシミュレートします。
      • read_fhir:URI で指定された特定の FHIR リソースの読み取りをシミュレートします。
      • create_fhir_resource:新しい FHIR リソースの作成をシミュレートします。
  • MCP 通信に mcp-server ライブラリを使用します。
  • Poetry を使用して設定およびパッケージ化されています。
  • pytest と pytest-asyncio による非同期ユニットテストが含まれています。

インストール

Python >= 3.10 と Poetry がインストールされていることを確認してください。

poetry install

設定

サーバーを実行する前に、環境変数 FHIR_BASE_URL を設定する必要があります。この URL は、シミュレートされたリクエスト文字列の構築に使用されます。

export FHIR_BASE_URL="https://your-fhir-server-base.com/fhir"
# Or for local testing:
# export FHIR_BASE_URL="http://localhost:8080/fhir"

使用方法

設定後、インストールされたスクリプトを使用してサーバーを実行します:

fhir-mcp-server-medagentbench

サーバーは標準入出力を介して MCP リクエストの待ち受けを開始します。

開発

セットアップ

リポジトリをクローンし、開発ツールを含む依存関係をインストールします:

git clone https://github.com/MikeHolcomb/mcp-fhir-python-medagentbench.git
cd mcp-fhir-python-medagentbench
poetry install --with dev
リントとフォーマット

このプロジェクトでは、コードスタイル(black、isort)の適用と問題のチェック(flake8、mypy)に pre-commit を使用します。

# Run all checks on staged files (usually run automatically on commit)
poetry run pre-commit run

# Run all checks on all files
poetry run pre-commit run --all-files

# Or run tools individually
poetry run black .
poetry run isort .
poetry run flake8 src tests
poetry run mypy src
テスト

テストは tests/ ディレクトリにあり、pytest を使用します。

poetry run pytest

# Run with coverage report
poetry run pytest --cov=src

MCP ハンドラーが非同期であるため、テストには pytest-asyncio が必要です。

ライセンス

このプロジェクトは MIT ライセンスの下で公開されています。詳細については LICENSE ファイルを参照してください(ただし、LICENSE ファイルが存在しない場合は作成が必要になることがあります)。

コントリビューション

コントリビューションを歓迎します!Issue を作成するか、プルリクエストを送信してください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。