Skip to content

feat: CIMD support check for authorization-server metadata (supersedes #235)#365

Merged
pcarleton merged 4 commits into
mainfrom
paulc/pr235-superseding
Jun 24, 2026
Merged

feat: CIMD support check for authorization-server metadata (supersedes #235)#365
pcarleton merged 4 commits into
mainfrom
paulc/pr235-superseding

Conversation

@pcarleton

Copy link
Copy Markdown
Member

Supersedes #235 by @tnorimat. Original commit cherry-picked with authorship preserved (0c17d8f), rebased onto current main (post-#364), with the unrelated src/checks/client.ts change dropped and the version-gating reworked.

What this adds

A second check on the authorization-server-metadata-endpoint scenario that verifies the AS metadata advertises client_id_metadata_document_supported: true (Client ID Metadata Document support). Emits WARNING when absent or false — CIMD support is SHOULD in MCP 2025-11-25, not MUST.

Per-check spec-version gating

Rather than threading specVersion into run() and branching on === '2025-11-25', this introduces an optional ConformanceCheck.source field (same {introducedIn, removedIn} shape scenarios already use). The runner filters returned checks against --spec-version using the existing matchesSpecVersion comparator. Scenarios emit all their checks unconditionally; the runner decides which apply.

The CIMD check is tagged source: { introducedIn: '2025-11-25' }, so it's reported for --spec-version 2025-11-25 and draft, and dropped for earlier versions.

Changes vs #235

  • src/checks/client.ts / checks.test.ts hunks dropped — out of scope (downgraded MUST-level initialization checks to WARNING)
  • CIMD status FAILUREWARNING (SHOULD-level requirement)
  • Spec references use the existing SpecReferences.MCP_CLIENT_ID_METADATA_DOCUMENTS / IETF_CIMD constants
  • Version gate via declarative check.source instead of a runtime specVersion === '2025-11-25' branch and the associated run() signature change

Closes #235. Closes #234.

@pkg-pr-new

pkg-pr-new Bot commented Jun 24, 2026

Copy link
Copy Markdown

Open in StackBlitz

npx https://pkg.pr.new/@modelcontextprotocol/conformance@365

commit: c4323ae

@pcarleton pcarleton merged commit 32523cc into main Jun 24, 2026
8 checks passed
@pcarleton pcarleton deleted the paulc/pr235-superseding branch June 24, 2026 15:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add check for CIMD of authorization server metadata

2 participants