Create or copy a platform/app/public/config/default.js configuration file and locate the dataSources array
Add a datasource entry with namespace @ohif/extension-default.dataSourcesModule.dicomweb, setting wadoRoot, qidoRoot, and wadoUriRoot to the base URL of your DICOMweb server
Set imageRendering to wadors and thumbnailRendering to wadors for WADO-RS pixel retrieval; enable enableStudyLazyLoad: true for large studies
If the DICOMweb server requires authorization headers, add a requestInterceptor in the configuration to inject an Authorization: Bearer YOUR_TOKEN header on each outgoing request
Build the OHIF app with yarn build and serve; open a study URL in the format /viewer?StudyInstanceUIDs={studyUID} and verify series and instances load correctly
Known gotchas
OHIF's useSharedArrayBuffer option defaults to TRUE (as a string, not a boolean) for progressive volume loading; browsers require the response headers Cross-Origin-Opener-Policy: same-origin and Cross-Origin-Embedder-Policy: require-corp for SharedArrayBuffer to be available
The qidoRoot and wadoRoot may differ if your server exposes query and retrieval at different path prefixes; misconfiguring them as the same URL is a common integration error
OHIF v3 extensions are modular — the default DICOMweb datasource lives in @ohif/extension-default, not in the core package; ensure the extension is listed in the extensions and modes arrays of your app config
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