Skip to main content
Glama
mrosata

MCP FHIR Server

by mrosata

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
FHIR_BASE_URLNoFHIR server base URLhttp://localhost:8080/fhir
FHIR_ALLOW_READNoEnable GET operationstrue
FHIR_AUTH_TOKENNoBearer token for authentication
FHIR_ALLOW_WRITENoEnable POST/PUT/PATCH/DELETE operationstrue
FHIR_ALLOWED_METHODSNoComma-separated HTTP methods (overrides READ/WRITE). Examples: GET, POST, GET,POST, GET,POST,PUT

Capabilities

Server capabilities have not been inspected yet.

Tools

Functions exposed to the LLM to take actions

NameDescription
write_fhir_resource

Write a FHIR resource to the FHIR server.

This tool:

  1. Validates the FHIR resource using fhir-validator

  2. Determines the appropriate endpoint based on resource type

  3. POSTs or PUTs the resource to the FHIR server

  4. Returns validation errors or server errors for correction

Args: resource: A FHIR resource as a JSON object (dict) custom_headers: Optional dictionary of custom HTTP headers to include in the request. For Zus servers, use {"Zus-Account": "builder-id"} for multi-tenant access.

Returns: A status message indicating success or detailed error information

read_fhir_resource

Read a FHIR resource by type and ID from the FHIR server.

Args: resource_type: The FHIR resource type (e.g., "Patient", "Observation") resource_id: The ID of the resource to read custom_headers: Optional dictionary of custom HTTP headers to include in the request. For Zus servers, use {"Zus-Account": "builder-id"} for multi-tenant access.

Returns: The FHIR resource as JSON or an error message

search_fhir_resources

Search for FHIR resources using query parameters.

Args: resource_type: The FHIR resource type to search (e.g., "Patient", "Observation") search_params: Optional dictionary of search parameters (e.g., {"name": "Smith", "gender": "female"}) custom_headers: Optional dictionary of custom HTTP headers to include in the request. For Zus servers, use {"Zus-Account": "builder-id"} for multi-tenant access.

Returns: A FHIR Bundle containing matching resources or an error message

get_patient_zus_upid

Get the Zus UPID (Universal Patient ID) for a Patient resource from Zus FHIR server.

This is a Zus-specific tool for working with Zus Health's FHIR API. Searches for a Patient by first and last name, optionally filtered by builderID, then extracts the Zus UPID from the Patient's identifiers.

Args: first_name: Patient's first name last_name: Patient's last name builder_id: Optional Zus builder ID (string) to filter the search

Returns: The Zus UPID value or an error message if not found

get_fhir_config

Get the current FHIR server configuration.

Returns: Current configuration settings

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/mrosata/mcp-fhir'

If you have feedback or need assistance with the MCP directory API, please join our Discord server