inspector/test-servers/configs
Repository files (latest commit first)
Filename Latest commit message Latest commit date
cliffhall 18bda28ce1 feat(test-servers): a CIMD showcase fixture that serves its own client metadata document
In CIMD (SEP-991) the `client_id` *is* a URL the authorization server
dereferences to learn the client's metadata. Nothing in this repo served such a
document, so a fixture could advertise `client_id_metadata_document_supported`
and still be unusable — exercising CIMD meant standing up a second host by hand.

That is why #2242 shipped verified by its tests alone, and why the v2.6.0
release smoke recorded it as the one contribution with an observable UI surface
that could not be reached.

The composable server now hosts the document itself when `oauth.clientMetadata`
is set, gated on `supportCIMD` — advertising a client the server would then
refuse to honour is a worse fixture than serving nothing. The document's
`client_id` is derived from the **request** rather than from a configured
issuer, so it stays correct when the harness picks the port, as the integration
test does.

`supportDCR: false` in the fixture is load-bearing rather than incidental. With
DCR available a CIMD failure silently succeeds via dynamic registration and the
reproduction proves nothing — during development a misconfigured run connected
happily and reported `Dynamic (DCR)` with a `test_client_…` id, which reads as
success until you check the client id. With DCR off, CIMD is the only path that
can complete, so reaching a connected state is itself the assertion; the test
pins the absent `registration_endpoint` so it stays that way.

Verified end to end against the fixture: Connection Info read
`Client registration — Client ID Metadata (CIMD)` with the client id equal to
the metadata URL. That drive needed a self-signed HTTPS listener, because the
Inspector requires the CIMD metadata URL to be HTTPS with no loopback
exemption — filed separately as #2305, since it is a validation gap rather than
a fixture one.

Closes #2306

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RsmR1iQstcrEzJFmgZXGLi
Signed-off-by: cliffhall <cliff@futurescale.com>
2026-09-09 01:21:15 -04:00
..
advertised-extensions-http.json Extensions: advertised-extensions toggle in Server Settings (Phase 2 of #1633) (#1743) 2026-07-22 16:23:43 -04:00
app-elicitation-http.json feat(apps): negotiated app-rendered form elicitations 2026-08-22 19:05:33 -04:00
app-elicitation-native-http.json feat(apps): negotiated app-rendered form elicitations 2026-08-22 19:05:33 -04:00
cancellation-modern-http.json fix: cancel a Streamable HTTP call by closing its stream (#2140) 2026-08-28 00:55:29 -04:00
demo.json feat(core): port v1.5 InspectorClient + transports + auth subsystem (#1302) (#1306) 2026-05-15 15:36:17 -04:00
duplicate-resource-uris-http.json fix: key resource list rows by position so duplicate URIs cannot collide 2026-09-06 19:43:47 -04:00
duplicate-tool-names-http.json test: add a duplicate-tool-names test server for the #1957 repro 2026-08-10 20:22:47 -04:00
empty-cursor-http.json fix: send an empty-string pagination cursor verbatim on every list adapter (#2220) 2026-09-06 13:28:44 -04:00
logging-legacy-http.json Logging: per-request log level on modern servers (era fork) (#1629) (#1724) 2026-07-19 17:08:22 -04:00
logging-modern-http.json Logging: per-request log level on modern servers (era fork) (#1629) (#1724) 2026-07-19 17:08:22 -04:00
mcp-app-domain-http.json test(web): prove the dedicated app origin end to end 2026-08-24 08:45:40 -04:00
mcp-app-http.json test: add an MCP App showcase config to reproduce and verify #1859 2026-08-05 17:59:09 -04:00
modern-http.json Add modern-era (2026-07-28) test-server preset (#1700) (#1703) 2026-07-17 11:12:40 -04:00
modern-mrtr-http.json History: MRTR conversation grouping + modern message vocabulary (#1705) 2026-07-17 20:02:11 -04:00
modern-network-http.json Network: modern Mcp-* headers, new error codes, cancellation-as-abort (#1628) (#1722) 2026-07-18 17:32:05 -04:00
mrtr-showcase-http.json fix(web): name an empty tool result instead of "No results yet" (#1860) 2026-08-16 18:31:01 -04:00
nullable-fields-http.json fix: render nullable enum fields as a Select instead of a raw JSON textarea 2026-08-15 16:10:17 -04:00
oauth-cimd-http.json feat(test-servers): a CIMD showcase fixture that serves its own client metadata document 2026-09-09 01:21:15 -04:00
oauth-custom-resource-metadata-http.json fix(auth): pass the challenge's resource_metadata URL to SDK auth() 2026-08-24 19:48:40 -04:00
oauth-insecure-token-endpoint-http.json test: drop strictPort and document the port collision instead 2026-09-07 09:23:02 -04:00
oauth-no-revocation-http.json feat(auth): revoke OAuth tokens at the authorization server on clear (#2144) 2026-08-28 00:48:57 -04:00
oauth-revocation-http.json feat(auth): revoke OAuth tokens at the authorization server on clear (#2144) 2026-08-28 00:48:57 -04:00
oauth-rfc8414-at-oidc-path-http.json fix(auth): accept RFC 8414 metadata served at the OIDC well-known path 2026-08-28 00:40:11 -04:00
oauth-step-up-demo.json All of the mid-session and step-up auth work 2026-07-02 16:35:31 -07:00
pagination-http.json Thread cacheMode through managed list refresh via SDK cache-aware verbs (#1721) (#1723) 2026-07-19 01:06:31 -04:00
rfc6570-templates-http.json fix(core): share URI-template expansion and correct the SDK's multi-name branch 2026-08-16 18:51:12 -04:00
root-union-schemas-http.json fix: decline a union branch requiring a name it never declares (#2224) 2026-09-06 12:59:52 -04:00
skills-http.json fix: address Copilot review round 5 on #2251 2026-09-04 23:11:46 -04:00
structured-output-http.json fix: render a tool result's structuredContent in the Tools screen (#1908) 2026-08-11 09:23:43 -04:00
subscriptions-legacy-http.json Resources: subscriptions/listen model on modern servers (era fork) (#1630) (#1730) 2026-07-20 19:33:40 -04:00
subscriptions-modern-http.json Resources: subscriptions/listen model on modern servers (era fork) (#1630) (#1730) 2026-07-20 19:33:40 -04:00
subscriptions-never-acknowledged-http.json fix(core): say why a never-acknowledged subscriptions/listen ended 2026-08-27 20:49:55 -04:00
tasks-legacy-http.json Tasks: io.modelcontextprotocol/tasks extension on modern servers (era fork) (#1731) 2026-07-21 19:17:04 -04:00
tasks-modern-http.json Tasks: io.modelcontextprotocol/tasks extension on modern servers (era fork) (#1731) 2026-07-21 19:17:04 -04:00
unportable-schemas-http.json fix: map the new exit code, keep add runnable, distinguish severity by shape 2026-08-25 02:37:10 -04:00
unportable-schemas-many-http.json feat(web): collapse the schema-portability section by default (#2205) 2026-09-06 23:52:34 -04:00
url-elicitation-form.json feat(core): port v1.5 InspectorClient + transports + auth subsystem (#1302) (#1306) 2026-05-15 15:36:17 -04:00
web-tabs-http.json chore(web): connected-flow smoke for the Tools, Resources and Prompts tabs 2026-08-26 23:09:44 -04:00
xaa-ema-http.json Auth hardening CI gaps + SDK consolidation: EMA leg 2 / scopes (#1527) (#1725) 2026-07-19 22:36:21 -04:00
xmcpheader-modern-http.json Tools: x-mcp-header annotation tooling + -32602 unknown-tool rendering (#1632) (#1735) 2026-07-22 11:42:54 -04:00