Model Context Protocol (MCP) for interacting with dicom servers (PACS etc.)
Configuration
View docs{
"mcpServers": {
"christianhinge-dicom-mcp": {
"command": "uvx",
"args": [
"dicom-mcp",
"/path/to/your_config.yaml"
]
}
}
}You can use the DICOM MCP Server to query, read, and move data on DICOM servers (PACS, VNA, and similar). It enables an AI assistant to interact with medical imaging data through standardized MCP tools, making it practical to search metadata, read encapsulated PDF reports, and send DICOM data to AI endpoints or other destinations.
You connect an MCP client to the DICOM MCP Server using standard MCP configurations. Once connected, you can perform practical workflows such as searching for patients and studies, extracting text from PDFs embedded in DICOM reports, and moving series or studies to other DICOM destinations for processing or archiving.
Prerequisites: you need Python and a suitable runtime tool for your environment. You will install the MCP server tool and prepare a configuration file that describes your DICOM nodes.
uv tool install dicom-mcpIf you prefer to run from source, you can clone the project, create a virtual environment, and install development dependencies.
# Clone the project repository
git clone https://example.com/dicom-mcp
cd dicom-mcp
# Create and activate a virtual environment
uv venv
source .venv/bin/activate
# Install with development dependencies
uv pip install -e ".[dev]"Prepare a YAML configuration that defines your DICOM node(s) and the AE titles you will use. See the sample configuration and adapt it to your environment.
nodes:
main:
host: "localhost"
port: 4242
ae_title: "ORTHANC"
description: "Local Orthanc DICOM server"
current_node: "main"
calling_aet: "MCPSCU"Security note: DICOM-MCP is not intended for production clinical use and should not be connected to live hospital databases or systems containing patient-identifiable data. Use it with locally hosted data to maintain privacy and control.
Client configuration examples show how to wire the MCP server into your desktop client, so you can run the server locally and connect from your UI.
If you need a local test DICOM server, you can run a local Orthanc instance via container orchestration tools to simulate a DICOM environment for development and testing.
Search for patients using criteria such as name, ID, or birth date.
Find studies by patient ID, date, modality, description, accession number, or Study UID.
Locate series within a study by modality, series number/description, or Series UID.
Find individual instances within a series by instance number or SOP Instance UID.
Retrieve a DICOM instance containing an encapsulated PDF and extract its text.
Send a specific DICOM series to another configured DICOM node using C-MOVE.
Send an entire DICOM study to another configured DICOM node using C-MOVE.
Show the currently active DICOM node and list all configured nodes.
Change the active DICOM node for subsequent operations.
Test the DICOM network connection to the currently active node using C-ECHO.
List available levels of detail for metadata query results (minimal, standard, extended).