DICOM MCP Server
Сервер DICOM MCP для систем медицинской визуализации 🏥
Сервер dicom-mcp позволяет помощникам на базе искусственного интеллекта запрашивать, считывать и перемещать данные на серверах DICOM (PACS, VNA и т. д.).
🤝 Внести свой вклад • 📝 Сообщить об ошибке • 📝 Запись в блоге 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³"
---------------------------------------------------------------------✨ Основные возможности
dicom-mcp предоставляет инструменты для:
🔍 Запрос метаданных : поиск пациентов, исследований, серий и случаев с использованием различных критериев.
📄 Чтение отчетов DICOM (PDF) : извлечение экземпляров DICOM, содержащих инкапсулированные PDF-файлы (например, клинические отчеты), и извлечение текстового содержимого.
➡️ Отправка изображений DICOM : отправка серий или исследований в другие пункты назначения DICOM, например, в конечные точки ИИ для сегментации изображений, классификации и т. д.
⚙️ Утилиты : управление подключениями и понимание параметров запросов.
Related MCP server: DICOM API MCP Server
🚀 Быстрый старт
📥 Установка
Установка с помощью uv или pip:
uv tool install dicom-mcpИли клонировав репозиторий:
# 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]"⚙️ Конфигурация
dicom-mcp требует файл конфигурации YAML ( config.yaml или аналогичный), определяющий узлы DICOM и вызывающий заголовки AE. Адаптируйте конфигурацию или оставьте как есть для совместимости с образцом сервера ORTHANC.
nodes:
main:
host: "localhost"
port: 4242
ae_title: "ORTHANC"
description: "Local Orthanc DICOM server"
current_node: "main"
calling_aet: "MCPSCU" [!ВНИМАНИЕ] DICOM-MCP не предназначен для клинического использования и не должен быть связан с реальными больничными базами данных или базами данных с конфиденциальными данными пациентов. Это может привести как к потере данных пациентов, так и к утечке данных пациентов в Интернет. DICOM-MCP можно использовать с локально размещенными LLM с открытым весом для полной конфиденциальности данных.
(Необязательно) Пример сервера ORTHANC
Если у вас нет сервера DICOM, вы можете запустить локальный сервер ORTHANC с помощью Docker:
Клонируйте репозиторий и установите тестовые зависимости pip install -e ".[dev]
cd tests
docker ocmpose up -d
cd ..
pytest # uploads dummy pdf data to ORTHANC serverПользовательский интерфейс по адресу http://localhost:8042
🔌 Интеграция MCP
Добавьте в конфигурацию вашего клиента (например, claude_desktop_config.json ):
{
"mcpServers": {
"dicom": {
"command": "uv",
"args": ["tool","dicom-mcp", "/path/to/your_config.yaml"]
}
}
}Для разработки:
{
"mcpServers": {
"arxiv-mcp-server": {
"command": "uv",
"args": [
"--directory",
"path/to/cloned/dicom-mcp",
"run",
"dicom-mcp",
"/path/to/your_config.yaml"
]
}
}
}🛠️ Обзор инструментов
dicom-mcp предоставляет четыре категории инструментов для взаимодействия с серверами DICOM и данными DICOM.
🔍 Запрос метаданных
query_patients: Поиск пациентов по таким критериям, как имя, идентификатор или дата рождения.query_studies: поиск исследований по идентификатору пациента, дате, модальности, описанию, номеру доступа или уникальному идентификатору исследования.query_series: поиск серий в рамках определенного исследования с использованием модальности, номера/описания серии или уникального идентификатора серии.query_instances: поиск отдельных экземпляров (изображений/объектов) в серии с использованием номера экземпляра или UID экземпляра SOP
📄 Читать отчеты DICOM (PDF)
extract_pdf_text_from_dicom: извлечение определенного экземпляра DICOM, содержащего инкапсулированный PDF-файл, и извлечение его текстового содержимого.
➡️ Отправка изображений DICOM
move_series: отправка определенной серии DICOM на другой настроенный узел DICOM с помощью C-MOVE.move_study: отправка всего исследования DICOM на другой настроенный узел DICOM с помощью C-MOVE.
⚙️ Коммунальные услуги
list_dicom_nodes: Отображение текущего активного узла DICOM и списка всех настроенных узлов.switch_dicom_node: изменение активного узла DICOM для последующих операций.verify_connection: проверка сетевого подключения DICOM к текущему активному узлу с помощью C-ECHO.get_attribute_presets: список доступных уровней детализации (минимальный, стандартный, расширенный) для результатов запроса метаданных.
Пример взаимодействия
Инструменты можно объединять в цепочку для ответа на сложные вопросы:
📈 Вклад
Проведение тестов
Для тестов требуется работающий сервер Orthanc DICOM. Вы можете использовать Docker:
# Navigate to the directory containing docker-compose.yml (e.g., tests/)
cd tests
docker-compose up -dЗапустите тесты с помощью pytest:
# From the project root directory
pytestОстановите контейнер Orthanc:
cd tests
docker-compose downОтладка
Используйте MCP Inspector для отладки связи с сервером:
npx @modelcontextprotocol/inspector uv run dicom-mcp /path/to/your_config.yaml --transport stdio🙏 Благодарности
Создано с использованием pynetdicom
Использует PyPDF2 для извлечения текста из PDF-файлов
This server cannot be deployed
Maintenance
Related MCP Connectors
Provides metadata information to AI agents through the search API.
Hosted MCP server exposing US hospital procedure cost data to AI assistants
- mednodeOAuthin.mednode
Your MedNode health vault in your AI assistant — records, summaries, labs, appointments.
OCR, transcription, file extraction, and image generation for AI agents via MCP.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to query, read, download, and move medical imaging data on DICOM servers (PACS, VNA) including patient searches, study retrieval, PDF report extraction, and image transfer to AI endpoints for analysis.MIT
- FlicenseNot gradedqualityDmaintenanceExposes DICOM operations as tools for AI agents to interact with medical imaging systems and PACS. It enables searching for studies and series, querying instance metadata, and retrieving pixel data from DICOM entities.-
- AlicenseAqualityCmaintenanceAn MCP server that exposes a DICOMweb-compliant DICOM archive to AI assistants. It lets any MCP-capable client search studies, series and instances, inspect metadata, read Structured and Encapsulated PDF Reports, and render image frames — all through natural language.923 npm4MIT
- AlicenseAqualityDmaintenanceEnables AI assistants to query and read data on DICOM servers (PACS, VNA, etc.).91MIT