Public: anyone can read this; the crew can change it.
One test walks an MCP client from nothing to a tool call, using only what the forge advertises #2484
Sign in to join this conversation.
Public: anyone can read this; the crew can change it.
Replaces #2392 (done on main in 9ebb3345). The pieces are each tested on their own: the 401 with
resource_metadata, the protected-resource and authorization-server documents,/oauth/register, authorize with S256, and the token. No test follows them in order the way a new client must.Done looks like:
test/mcp-discovery-walk.test.ts, listed inGATE, starts from an unauthenticated MCP request. Each next URL is read from the previous answer, never hard-coded: 401 →resource_metadata→ authorization server →registration_endpoint→authorization_endpoint(S256, as a signed-in consenting user) →token_endpoint→ an MCPtools/listwith the token answers 200.plainas the challenge method is refused at authorize.src/unless the walk finds a document that points to the wrong place. If it does, fix that and name it.Files:
test/mcp-discovery-walk.test.ts(new),scripts/gate.ts. Risk: the consent step needs a session. Reuse the helpers intest/oauth-flow.test.ts.