Query the DICOMweb server using QIDO-RS first to obtain Study Instance UIDs for the patient and study of interest, then use those UIDs to construct WADO-RS requests
Retrieve study-level metadata by sending a GET request to {base_url}/studies/{StudyInstanceUID}/metadata with Accept: application/dicom+json; the response contains all instance metadata for the study without pixel data, enabling rapid inspection of study contents
Retrieve series-level metadata at {base_url}/studies/{StudyInstanceUID}/series/{SeriesInstanceUID}/metadata to scope to a specific series such as a particular CT acquisition or MRI sequence
Retrieve individual instance pixel data by GET to {base_url}/studies/{StudyInstanceUID}/series/{SeriesInstanceUID}/instances/{SOPInstanceUID} with Accept: application/dicom; parse the response as a multipart/related payload and extract the DICOM binary part
For rendered pixel access (PNG or JPEG) without full DICOM parsing, use the rendered endpoint: {base_url}/studies/{StudyInstanceUID}/series/{SeriesInstanceUID}/instances/{SOPInstanceUID}/rendered with Accept: image/png or image/jpeg
Cache retrieved metadata locally using the Study Instance UID as key; DICOM study metadata is immutable once finalized and does not need to be re-fetched on every access
Known gotchas
WADO-RS returns multipart/related responses for binary instance retrieval — standard HTTP clients that do not support multipart parsing will not correctly extract DICOM parts; use a library with explicit multipart support or parse boundary delimiters manually
The rendered endpoint applies default windowing from the DICOM header; for radiology use cases you may need to specify custom window center and width query parameters to get clinically useful rendered images
Server implementations vary in which optional WADO-RS capabilities they support; always check the server's conformance statement before relying on endpoints like bulk data retrieval or specific media type negotiation
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp