Skip to content

auth/pre-registration: scenario context omits the issuer, so a client implementing the 2026-07-28 spec's Authorization Server Binding cannot pass #422

Description

@logiscapedev

Describe the bug
The auth/pre-registration scenario supplies its pre-registered credentials to the client under
test as context: { client_id, client_secret } with no indication of which authorization server issued
them, even though the mock AS URL is in scope when the context is built.

The 2026-07-28 specification's Client Registration page makes credential-to-issuer binding
mandatory (Authorization Server Binding):

MUST associate those credentials with the specific authorization server that issued them, keyed
by the authorization server's issuer identifier

A client that implements this rule cannot bind credentials it received without issuer context, so it
refuses to present them, and the scenario's pre-registration-auth check fails with "Client did not
make a token request".

To Reproduce
Run auth/pre-registration at 0.2.0-alpha.10 (re-verified 2026-07-28) with a client whose
draft-track default is mandatory issuer binding (observed with the PHP SDK, logiscape/mcp-sdk-php
v2 main): 2/3 checks pass; pre-registration-auth fails as "Client did not make a token request".

The official TypeScript SDK doesn't refuse the request, but it does emit a warning.

Expected behavior
If the context supplies the issuer, the client should proceed with making a token request, allowing the test
to continue. I have tested the change with my PHP SDK and the scenario passes, and it also still passes in
the TypeScript SDK.

Additional context
I have implemented a fix and verified against the official TypeScript SDK (no regression)
and will open a PR referencing this issue.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions