Skip to content

docs: static-header auth on claude.ai, and why there is no outputSchema - #64

Merged
marselsel merged 1 commit into
mainfrom
docs/static-headers-and-output-schema
Sep 22, 2026
Merged

marselsel merged 1 commit into
mainfrom
docs/static-headers-and-output-schema

Conversation

@marselsel

@marselsel marselsel commented Sep 22, 2026 •

Copy link
Copy Markdown
Owner

Part 6 of 8 in the MCP best-practices stack. Stacked on #63, so merge in order.

Changes

  • README: it no longer says a static bearer token can't work on claude.ai. Claude's authentication docs list static_headers: a "Fixed credential … entered by an organization administrator as a request header when adding the connector", in beta for a limited set of organizations, sent "exactly as you enter it" (so the admin types Bearer <token>). OAuth stays the recommendation wherever users sign in individually.

  • outputSchema: deliberately not added (the finding was low priority). The spec makes a declared schema binding ("Servers MUST provide structured results that conform to this schema"), and the SDK turns any mismatch into an error result, while Lexware's payloads are open-ended. Claude's clients also still fail on declared output schemas:

    The decision is recorded in src/tools/shared.ts, where someone adding a schema would look. A test pins it until those issues are fixed. The JSON text block from feat: include structuredContent as JSON text in every tool result #62 is what makes results readable to the model instead.

Verification

  • npm test passes all 480 tests, including the new "declares no outputSchema" check.

The README said a static bearer token cannot work on claude.ai; an org
admin can now add a connector with a static header (beta, limited orgs).

No tool declares an outputSchema, deliberately: the spec makes it
binding, Lexware payloads are open-ended, and Claude's clients still fail
on declared output schemas (anthropics/claude-ai-mcp #673, #485, #1016).
The decision is recorded in shared.ts and pinned by a test.
@marselsel
marselsel changed the base branch from feat/audience-resource-indicator to main September 22, 2026 21:57
@marselsel
marselsel merged commit 9d3cb11 into main Sep 22, 2026
2 checks passed
@marselsel
marselsel deleted the docs/static-headers-and-output-schema branch September 22, 2026 21:57
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.

1 participant