DICOM MCP Server for Medical Imaging Systems 🏥
The dicom-mcp server enables AI assistants to query, read, and move data on DICOM servers (PACS, VNA, etc.).
🤝 Contribute • 📝 Report Bug • 📝 Blog Post 1
✨ Core Capabilities
dicom-mcp provides tools to:
🔍 Query Metadata: Search for patients, studies, series, and instances using various criteria.
📄 Read DICOM Reports (PDF): Retrieve DICOM instances containing encapsulated PDFs (e.g., clinical reports) and extract the text content.
➡️ Send DICOM Images: Send series or studies to other DICOM destinations, e.g. AI endpoints for image segmentation, classification, etc.
⚙️ Utilities: Manage connections and understand query options.
🚀 Quick Start
📥 Installation
Install using uv or pip:
Or by cloning the repository:
⚙️ Configuration
dicom-mcp requires a YAML configuration file (config.yaml or similar) defining DICOM nodes and calling AE titles. Adapt the configuration or keep as is for compatibility with the sample ORTHANC Server.
DICOM-MCP is not meant for clinical use, and should not be connected with live hospital databases or databases with patient-sensitive data. Doing so could lead to both loss of patient data, and leakage of patient data onto the internet. DICOM-MCP can be used with locally hosted open-weight LLMs for complete data privacy.
(Optional) Sample ORTHANC server
If you don't have a DICOM server available, you can run a local ORTHANC server using Docker:
Clone the repository and install test dependencies pip install -e ".[dev]
UI at http://localhost:8042
🔌 MCP Integration
Add to your client configuration (e.g. claude_desktop_config.json):
For development:
🛠️ Tools Overview
dicom-mcp provides four categories of tools for interaction with DICOM servers and DICOM data.
🔍 Query Metadata
query_patients: Search for patients based on criteria like name, ID, or birth date.query_studies: Find studies using patient ID, date, modality, description, accession number, or Study UID.query_series: Locate series within a specific study using modality, series number/description, or Series UID.query_instances: Find individual instances (images/objects) within a series using instance number or SOP Instance UID
📄 Read DICOM Reports (PDF)
extract_pdf_text_from_dicom: Retrieve a specific DICOM instance containing an encapsulated PDF and extract its text content.
➡️ Send DICOM Images
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.
⚙️ Utilities
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 the available levels of detail (minimal, standard, extended) for metadata query results.
Example interaction
The tools can be chained together to answer complex questions:
📈 Contributing
Running Tests
Tests require a running Orthanc DICOM server. You can use Docker:
Run tests using pytest:
Stop the Orthanc container:
Debugging
Use the MCP Inspector for debugging the server communication:
🙏 Acknowledgments
Built using pynetdicom
Uses PyPDF2 for PDF text extraction
This server cannot be installed
Related Resources
Related MCP Servers
- AsecurityAlicenseAqualityA Model Context Protocol server providing AI assistants with access to healthcare data tools, including FDA drug information, PubMed research, health topics, clinical trials, and medical terminology lookup.Last updated -71150MIT License
- AsecurityFlicenseAqualityA Model Context Protocol server that allows working with DICOM medical images through a simple note storage system.Last updated -6
- AsecurityFlicenseAqualityProvides tools for AI assistants to explore and interact with MariaDB databases, allowing them to list databases, view tables, inspect schema definitions, and query data.Last updated -42
- AsecurityAlicenseAqualityEnables multimodal AI capabilities through GLM-4.5V API for image processing, visual querying with OCR/QA/detection modes, and file content extraction from various formats including PDFs, documents, and images.Last updated -3Apache 2.0