# Claude DICOM-MCP Capabilities List

| #   | What I can do                                                                                                                                                                                  | Module                        | Possible without the MCP?                                                                         |
| --- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------- |---------------------------------------------------------------------------------------------------|
| 1   | **Find DICOM files** in a folder, including subfolders, and tell you what's in them (series, sequence type, manufacturer). Can also just give a count.                                         | `dicom_list_files`            | ❌ No — I could list files with bash, but I couldn't read DICOM headers to identify what they are. |
| 2   | **Find Dixon sequences** in a folder and identify which images are water, fat, in-phase, and out-phase.                                                                                        | `dicom_find_dixon_series`     | ❌ No — requires both DICOM parsing and domain-specific sequence identification logic.             |
| 3   | **Read the metadata** (headers) from a single DICOM file — patient info, study details, scanner settings, geometry, etc. Can also resolve Philips private tags.                                | `dicom_get_metadata`          | ❌ No — DICOM is a binary format. I can't read it with standard text tools.                        |
| 4   | **Compare headers side-by-side** across 2–10 DICOM files, highlighting what's different.                                                                                                       | `dicom_compare_headers`       | ❌ No — same reason; I can't parse the binary headers.                                             |
| 5   | **Query any DICOM tag** across all files in a directory, optionally grouped by another tag (e.g. "show me all echo times, grouped by series").                                                 | `dicom_query`                 | ❌ No.                                                                                             |
| 6   | **Summarise a whole directory** — give a high-level overview of what vendors, scanners, sequences, and series are present, with file counts.                                                   | `dicom_summarize_directory`   | ❌ No.                                                                                             |
| 7   | **Validate scan parameters** (TR, TE, flip angle, etc.) against expected values for a given sequence.                                                                                          | `dicom_validate_sequence`     | ❌ No — can't extract the parameters to validate.                                                  |
| 8   | **Analyse a full series** for consistency — check that all files in a series have matching parameters and that the series is complete.                                                         | `dicom_analyze_series`        | ❌ No.                                                                                             |
| 9   | **Search for files** matching specific criteria using a filter language — text matching, numeric comparisons, or presence checks on any tag.                                                   | `dicom_search`                | ❌ No.                                                                                             |
| 10  | **Read Philips private tags** by DD number and element offset, or list all private creator blocks in a file.                                                                                   | `dicom_query_philips_private` | ❌ No — these are vendor-specific proprietary tags buried in private DICOM groups.                 |
| 11  | **Extract pixel statistics** from an image — min, max, mean, standard deviation, percentiles, and optionally a histogram. Can focus on a specific rectangular region.                          | `dicom_read_pixels`           | ❌ No — pixel data is encoded in the DICOM binary.                                                 |
| 12  | **Compute signal-to-noise ratio** by placing two regions of interest (signal and noise) on an image.                                                                                           | `dicom_compute_snr`           | ❌ No.                                                                                             |
| 13  | **Render a DICOM image to PNG** with adjustable windowing and optional ROI overlays — this is how I showed you those three images.                                                             | `dicom_render_image`          | ❌ No — I have no way to decode DICOM pixel data and produce a viewable image.                     |
| 14  | **Dump the full DICOM tree** — show the entire hierarchical structure of a file including nested sequences, with configurable depth.                                                           | `dicom_dump_tree`             | ❌ No.                                                                                             |
| 15  | **Compare UID sets** between two directories — find which series/studies/instances are shared, missing, or extra.                                                                              | `dicom_compare_uids`          | ❌ No.                                                                                             |
| 16  | **Verify segmentation references** — check that segmentation DICOM files correctly point back to their source images.                                                                          | `dicom_verify_segmentations`  | ❌ No.                                                                                             |
| 17  | **Analyse inversion times** from MOLLI/NOLLI T1 mapping sequences — extract TI values across vendors (handling Philips private tags automatically), flag gaps, and show the acquisition order. | `dicom_analyze_ti`            | ❌ No.                                                                                             |

All 17 modules live under `dicom_mcp/tools/` and are registered via the `@mcp.tool()` decorator at server startup. **In short: none of these capabilities exist without the MCP.** DICOM is a complex binary medical imaging format. Without the MCP, I can see that `.dcm` files exist, but I can't open, read, interpret, or visualise any of them. The MCP turns me from "completely DICOM-blind" into something that can meaningfully inspect, compare, and analyse medical imaging data across vendors.


