mike-holcomb
MCP Servermike-holcombpublic

fhir mcp server medagentbench

An implementation of Model Context Protocol server for use with MedAgentBench (FHIR request generation)

Repository Info

0
Stars
0
Forks
0
Watchers
0
Issues
Python
Language
MIT License
License

About This Server

An implementation of Model Context Protocol server for use with MedAgentBench (FHIR request generation)

Model Context Protocol (MCP) - This server can be integrated with AI applications to provide additional context and capabilities, enabling enhanced AI interactions and functionality.

Documentation

fhir-mcp-server-medagentbench

PyPI version License: MIT

A Python-based MCP (MedAgentBench Communications Protocol) server designed for the MedAgentBench environment. This server simulates interactions with a FHIR (Fast Healthcare Interoperability Resources) API.

Instead of making actual HTTP requests to a FHIR server, it intercepts MCP requests for FHIR operations and returns a textual representation of the HTTP request that would have been made (e.g., GET https://fhir.example.com/Patient/123 or POST https://fhir.example.com/Observation\n{...}). This allows testing MedAgentBench agents without needing a live FHIR endpoint.

Features

  • Implements MCP handlers:
    • list_resources: Lists available simulated resources (currently CapabilityStatement).
    • read_resource: Simulates reading a FHIR resource by its URI.
    • list_tools: Lists available FHIR simulation tools.
    • call_tool: Simulates executing FHIR operations:
      • search_fhir: Simulates searching for FHIR resources.
      • read_fhir: Simulates reading a specific FHIR resource by URI.
      • create_fhir_resource: Simulates creating a new FHIR resource.
  • Uses mcp-server library for MCP communication.
  • Configured and packaged using Poetry.
  • Includes asynchronous unit tests with pytest and pytest-asyncio.

Installation

Ensure you have Python >= 3.10 and Poetry installed.

poetry install

Configuration

Before running the server, you must set the FHIR_BASE_URL environment variable. This URL is used to construct the simulated request strings.

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

Usage

Once configured, run the server using the installed script:

fhir-mcp-server-medagentbench

The server will start listening for MCP requests over standard input/output.

Development

Setup

Clone the repository and install dependencies, including development tools:

git clone https://github.com/MikeHolcomb/mcp-fhir-python-medagentbench.git
cd mcp-fhir-python-medagentbench
poetry install --with dev

Linting and Formatting

This project uses pre-commit to enforce code style (black, isort) and check for issues (flake8, mypy).

# 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

Testing

Tests are located in the tests/ directory and use pytest.

poetry run pytest

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

Tests require pytest-asyncio due to the asynchronous nature of the MCP handlers.

License

This project is licensed under the MIT License - see the LICENSE file for details (though a LICENSE file might need to be created if not present).

Contributing

Contributions are welcome! Please open an issue or submit a pull request.

Quick Start

1

Clone the repository

git clone https://github.com/mike-holcomb/fhir-mcp-server-medagentbench
2

Install dependencies

cd fhir-mcp-server-medagentbench
npm install
3

Follow the documentation

Check the repository's README.md file for specific installation and usage instructions.

Repository Details

Ownermike-holcomb
Repofhir-mcp-server-medagentbench
LanguagePython
LicenseMIT License
Last fetched8/10/2025

Recommended MCP Servers

💬

Discord MCP

Enable AI assistants to seamlessly interact with Discord servers, channels, and messages.

integrationsdiscordchat
🔗

Knit MCP

Connect AI agents to 200+ SaaS applications and automate workflows.

integrationsautomationsaas
🕷️

Apify MCP Server

Deploy and interact with Apify actors for web scraping and data extraction.

apifycrawlerdata
🌐

BrowserStack MCP

BrowserStack MCP Server for automated testing across multiple browsers.

testingqabrowsers

Zapier MCP

A Zapier server that provides automation capabilities for various apps.

zapierautomation