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
✨ 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.
Related MCP server: DICOM-MCP
🚀 Schnellstart
📥 Installation
Installieren Sie mit UV oder Pip:
Oder durch Klonen des Repository:
⚙️ 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.
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]
Benutzeroberfläche unter http://localhost:8042
🔌 MCP-Integration
Fügen Sie Ihrer Client-Konfiguration hinzu (z. B. claude_desktop_config.json ):
Für die Entwicklung:
🛠️ 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:
Führen Sie Tests mit pytest aus:
Stoppen Sie den Orthanc-Container:
Debuggen
Verwenden Sie den MCP Inspector zum Debuggen der Serverkommunikation:
🙏 Danksagungen
Erstellt mit pynetdicom
Verwendet PyPDF2 zur PDF-Textextraktion