DICOM MCP Server

Integrations

  • Supports integration with Docker for running Orthanc server in development and testing environments.

  • Uses Pydantic for configuration management, providing type validation and settings management for the DICOM MCP server.

  • Provides test suite integration for validating DICOM MCP functionality.

DICOM MCP-Server für medizinische Bildgebungssysteme 🏥

Der dicom-mcp -Server ermöglicht KI-Assistenten, Daten auf DICOM-Servern (PACS, VNA usw.) abzufragen, zu lesen und zu verschieben.

🤝 Beitragen • 📝 Fehler melden • 📝 Blogbeitrag 1

--------------------------------------------------------------------- 🧑‍⚕️ User: "Any significant findings in John Doe's previous CT report?" 🧠 LLM → ⚙️ Tools: query_patients → query_studies → query_series → extract_pdf_text_from_dicom 💬 LLM Response: "The report from 2025-03-26 mentions a history of splenomegaly (enlarged spleen)" 🧑‍⚕️ User: "What's the volume of his spleen at the last scan and the scan today?" 🧠 LLM → ⚙️ Tools: (query_studies → query_series → move_series → query_series → extract_pdf_text_from_dicom) x2 (The move_series tool sends the latest CT to a DICOM segmentation node, which returns volume PDF report) 💬 LLM Response: "last year 2024-03-26: 412cm³, today 2025-04-10: 350cm³" ---------------------------------------------------------------------

✨ Kernkompetenzen

dicom-mcp bietet Tools für:

  • 🔍 Metadaten abfragen : Suchen Sie anhand verschiedener Kriterien nach Patienten, Studien, Serien und Fällen.
  • 📄 DICOM-Berichte lesen (PDF) : Rufen Sie DICOM-Instanzen ab, die gekapselte PDFs enthalten (z. B. klinische Berichte), und extrahieren Sie den Textinhalt.
  • ➡️ DICOM-Bilder senden : Senden Sie Serien oder Studien an andere DICOM-Ziele, z. B. KI-Endpunkte zur Bildsegmentierung, Klassifizierung usw.
  • ⚙️ Dienstprogramme : Verbindungen verwalten und Abfrageoptionen verstehen.

🚀 Schnellstart

📥 Installation

Installieren Sie mit UV oder Pip:

uv tool install dicom-mcp

Oder durch Klonen des Repository:

# Clone and set up development environment git clone https://github.com/ChristianHinge/dicom-mcp cd dicom mcp # Create and activate virtual environment uv venv source .venv/bin/activate # Install with test dependencies uv pip install -e ".[dev]"

⚙️ Konfiguration

dicom-mcp benötigt eine YAML-Konfigurationsdatei ( config.yaml oder ähnlich), die DICOM-Knoten definiert und AE-Titel aufruft. Passen Sie die Konfiguration an oder behalten Sie sie unverändert bei, um die Kompatibilität mit dem Beispiel-ORTHANC-Server zu gewährleisten.

nodes: main: host: "localhost" port: 4242 ae_title: "ORTHANC" description: "Local Orthanc DICOM server" current_node: "main" calling_aet: "MCPSCU"

[!WARNING] DICOM-MCP ist nicht für den klinischen Einsatz vorgesehen und sollte nicht mit aktiven Krankenhausdatenbanken oder Datenbanken mit patientenrelevanten Daten verknüpft werden. Dies könnte zum Verlust von Patientendaten und deren Weitergabe im Internet führen. DICOM-MCP kann mit lokal gehosteten Open-Weight-LLMs verwendet werden, um den Datenschutz zu gewährleisten.

(Optional) Beispiel-ORTHANC-Server

Wenn Ihnen kein DICOM-Server zur Verfügung steht, können Sie mit Docker einen lokalen ORTHANC-Server ausführen:

Klonen Sie das Repository und installieren Sie die Testabhängigkeiten pip install -e ".[dev]

cd tests docker ocmpose up -d cd .. pytest # uploads dummy pdf data to ORTHANC server

Benutzeroberfläche unter http://localhost:8042

🔌 MCP-Integration

Fügen Sie Ihrer Client-Konfiguration hinzu (z. B. claude_desktop_config.json ):

{ "mcpServers": { "dicom": { "command": "uv", "args": ["tool","dicom-mcp", "/path/to/your_config.yaml"] } } }

Für die Entwicklung:

{ "mcpServers": { "arxiv-mcp-server": { "command": "uv", "args": [ "--directory", "path/to/cloned/dicom-mcp", "run", "dicom-mcp", "/path/to/your_config.yaml" ] } } }

🛠️ Tools-Übersicht

dicom-mcp bietet vier Kategorien von Tools für die Interaktion mit DICOM-Servern und DICOM-Daten.

🔍 Metadaten abfragen

  • query_patients : Suche nach Patienten anhand von Kriterien wie Name, ID oder Geburtsdatum.
  • query_studies : Suchen Sie Studien anhand der Patienten-ID, des Datums, der Modalität, der Beschreibung, der Zugangsnummer oder der Studien-UID.
  • query_series : Suchen Sie Serien innerhalb einer bestimmten Studie anhand der Modalität, der Seriennummer/Beschreibung oder der Serien-UID.
  • query_instances : Finden Sie einzelne Instanzen (Bilder/Objekte) innerhalb einer Serie anhand der Instanznummer oder der SOP-Instanz-UID

📄 DICOM-Berichte lesen (PDF)

  • extract_pdf_text_from_dicom : Ruft eine bestimmte DICOM-Instanz ab, die ein gekapseltes PDF enthält, und extrahiert deren Textinhalt.

➡️ DICOM-Bilder senden

  • move_series : Senden Sie eine bestimmte DICOM-Serie mit C-MOVE an einen anderen konfigurierten DICOM-Knoten.
  • move_study : Senden Sie eine vollständige DICOM-Studie mit C-MOVE an einen anderen konfigurierten DICOM-Knoten.

⚙️ Dienstprogramme

  • list_dicom_nodes : Zeigt den aktuell aktiven DICOM-Knoten an und listet alle konfigurierten Knoten auf.
  • switch_dicom_node : Ändern Sie den aktiven DICOM-Knoten für nachfolgende Vorgänge.
  • verify_connection : Testen Sie die DICOM-Netzwerkverbindung zum aktuell aktiven Knoten mit C-ECHO.
  • get_attribute_presets : Listet die verfügbaren Detailebenen (minimal, Standard, erweitert) für Metadatenabfrageergebnisse auf.

Beispielinteraktion

Die Tools können miteinander verknüpft werden, um komplexe Fragen zu beantworten:

📈 Beitragen

Ausführen von Tests

Für Tests ist ein laufender Orthanc DICOM-Server erforderlich. Sie können Docker verwenden:

# Navigate to the directory containing docker-compose.yml (e.g., tests/) cd tests docker-compose up -d

Führen Sie Tests mit pytest aus:

# From the project root directory pytest

Stoppen Sie den Orthanc-Container:

cd tests docker-compose down

Debuggen

Verwenden Sie den MCP Inspector zum Debuggen der Serverkommunikation:

npx @modelcontextprotocol/inspector uv run dicom-mcp /path/to/your_config.yaml --transport stdio

🙏 Danksagungen

-
security - not tested
A
license - permissive license
-
quality - not tested

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Ermöglicht KI-Assistenten, medizinische Bildmetadaten von DICOM-Servern abzufragen und zu analysieren, einschließlich Patienteninformationen, Studien, Serien und Instanzen, sowie Text aus gekapselten PDF-Dokumenten zu extrahieren.

  1. ✨ Kernkompetenzen
    1. 🚀 Schnellstart
      1. 📥 Installation
      2. ⚙️ Konfiguration
      3. (Optional) Beispiel-ORTHANC-Server
      4. 🔌 MCP-Integration
    2. 🛠️ Tools-Übersicht
      1. 🔍 Metadaten abfragen
      2. 📄 DICOM-Berichte lesen (PDF)
      3. ➡️ DICOM-Bilder senden
      4. ⚙️ Dienstprogramme
      5. Beispielinteraktion
    3. 📈 Beitragen
      1. Ausführen von Tests
      2. Debuggen
    4. 🙏 Danksagungen

      Related MCP Servers

      • -
        security
        F
        license
        -
        quality
        🔍 Enable AI assistants to search and access medRxiv papers through a simple MCP interface. The medRxiv MCP Server provides a bridge between AI assistants and medRxiv's preprint repository through the Model Context Protocol (MCP). It allows AI models to search for health sciences preprints and acce
        Last updated -
        1
        Python
        • Linux
        • Apple
      • -
        security
        A
        license
        -
        quality
        A specialized Model Context Protocol server that enhances AI-assisted medical learning by connecting Claude Desktop to PubMed, NCBI Bookshelf, and user documents for searching, retrieving, and analyzing medical education content.
        Last updated -
        Python
        MIT License
        • Apple
      • -
        security
        F
        license
        -
        quality
        A 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 -
        1
        Python
        • Linux
        • Apple
      • -
        security
        A
        license
        -
        quality
        A FastMCP server implementation for the Dixa API, enabling AI assistants to search, retrieve, and manage customer conversation data and tags.
        Last updated -
        TypeScript
        MIT License

      View all related MCP servers

      ID: h5p8xkjx92