home / mcp / dicom mcp server

DICOM MCP Server

Model Context Protocol (MCP) for interacting with dicom servers (PACS etc.)

Installation
Add the following to your MCP client configuration file.

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.

How to use

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.

How to install

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-mcp

If 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"

Additional sections

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.

Available tools

query_patients

Search for patients using criteria such as name, ID, or birth date.

query_studies

Find studies by patient ID, date, modality, description, accession number, or Study UID.

query_series

Locate series within a study by modality, series number/description, or Series UID.

query_instances

Find individual instances within a series by instance number or SOP Instance UID.

extract_pdf_text_from_dicom

Retrieve a DICOM instance containing an encapsulated PDF and extract its text.

move_series

Send a specific DICOM series to another configured DICOM node using C-MOVE.

move_study

Send an entire DICOM study to another configured DICOM node using C-MOVE.

list_dicom_nodes

Show the currently active DICOM node and list all configured nodes.

switch_dicom_node

Change the active DICOM node for subsequent operations.

verify_connection

Test the DICOM network connection to the currently active node using C-ECHO.

get_attribute_presets

List available levels of detail for metadata query results (minimal, standard, extended).