The Azure AHDS FHIR MCP Server provides a Model Context Protocol (MCP) interface for interacting with Azure FHIR servers to perform healthcare data operations:
- Search FHIR Resources: Perform searches on FHIR resources using specific search parameters via the
search_fhir
tool - Access Resource Collections: Retrieve collections of standard FHIR resources (Patient, Observation, Medication) via MCP resource protocol (e.g.,
fhir://Patient/
) - Access Specific Resources: Retrieve specific FHIR resources by ID (e.g.,
fhir://Observation/{id}
) - Secure Authentication: Utilize OAuth2 for secure access with client ID, client secret, and tenant ID
- Developer-Friendly: Supports local development environments with customizable logging levels
Allows loading configuration from .env files for development environments, supporting variables like fhirUrl, clientId, clientSecret, and tenantId.
Enables contributions through GitHub's pull request workflow, with specific guidance on forking and submitting changes.
Supports development setup with Linux-specific virtual environment creation commands.
Provides specific installation paths and configuration guidance for running on macOS systems.
Built on Python 3.13+, offering a Pythonic implementation of the MCP server for Azure FHIR integration.
Azure AHDS FHIR MCP Server 🚀
A Model Context Protocol (MCP) server implementation for Azure Health Data Services FHIR (Fast Healthcare Interoperability Resources). This service provides a standardized interface for interacting with Azure FHIR servers, enabling healthcare data operations through MCP tools.
Setup 🛠️
Installation 📦
Requires Python 3.13 or higher and uv
.
Install uv first.
MCP Configuration ⚙️
Claude Desktop Configuration
1 - Edit Claude Desktop Configuration:
Open claude_desktop_config.json
and add the following configuration.
On MacOs, the file is located here: ~/Library/Application Support/Claude Desktop/claude_desktop_config.json
.
On Windows, the file is located here: %APPDATA%\Claude Desktop\claude_desktop_config.json
.
The following is a table of available environment configuration variables:
Variable | Description | Default |
---|---|---|
LOG_LEVEL | Logging level | INFO |
fhirUrl | Azure FHIR server URL | Required |
clientId | OAuth2 client ID | Required |
clientSecret | OAuth2 client secret | Required |
tenantId | Azure AD tenant ID | Required |
2 - Restart Claude Desktop.
Available Tools 🔧
FHIR Resource Operations
search_fhir
- Search for FHIR resources based on a dictionary of search parameters
Resource Access
The server provides access to all standard FHIR resources through the MCP resource protocol:
fhir://Patient/
- Access all Patient resourcesfhir://Patient/{id}
- Access a specific Patient resourcefhir://Observation/
- Access all Observation resourcesfhir://Observation/{id}
- Access a specific Observation resourcefhir://Medication/
- Access all Medication resourcesfhir://Medication/{id}
- Access a specific Medication resource- And many more...
Development 💻
Local Development Setup
1 - Clone the repository:
2 - Create and activate virtual environment:
Linux/macOS:
Windows:
3 - Install dependencies:
4 - Copy and configure environment variables:
Edit .env with your settings:
5 - Claude Desktop Configuration
Open claude_desktop_config.json
and add the following configuration.
On MacOs, the file is located here: ~/Library/Application Support/Claude Desktop/claude_desktop_config.json
.
On Windows, the file is located here: %APPDATA%\Claude Desktop\claude_desktop_config.json
.
6 - Restart Claude Desktop.
Contributions 🤝
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m '✨ Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
License ⚖️
Licensed under MIT - see LICENSE.md file.
This is not an official Microsoft or Azure product.
You must be authenticated.
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Tools
A Model Context Protocol server that enables standardized interaction with Azure Health Data Services FHIR servers, allowing healthcare data operations through MCP tools.
Related MCP Servers
- -securityAlicense-qualityA minimal server/client application implementation utilizing the Model Context Protocol (MCP) and Azure OpenAI.Last updated -15PythonMIT License
- -securityAlicense-qualityA Model Context Protocol server that provides health data from the Senechal API to LLM applications, enabling AI assistants to access, analyze, and respond to personal health information.Last updated -PythonGPL 3.0
- -securityAlicense-qualityA TypeScript-based MCP server that connects to FHIR servers, allowing access to healthcare data via fhir:// URIs and providing search capabilities for FHIR resources.Last updated -20JavaScriptMIT License
- -security-license-qualityA Model Context Protocol (MCP) server that interacts with system APIs, allowing users to check connections, search employees, register breakfast, and update chemical information by shifts.Last updated -2