Skip to content

docs(a2a): correct A2A auth header — Authorization: Bearer only, drop x-adcp-auth on A2A surface#4224

Draft
bokelley wants to merge 1 commit intomainfrom
claude/issue-4223-a2a-bearer-auth-docs
Draft

docs(a2a): correct A2A auth header — Authorization: Bearer only, drop x-adcp-auth on A2A surface#4224
bokelley wants to merge 1 commit intomainfrom
claude/issue-4223-a2a-bearer-auth-docs

Conversation

@bokelley
Copy link
Copy Markdown
Contributor

@bokelley bokelley commented May 8, 2026

Closes #4223

adcp 4.5.0 ships per-leg BearerTokenAuth config that makes the A2A leg RFC 6750-only (Authorization: Bearer <token>); x-adcp-auth is now a back-compat alias accepted only on the MCP leg. Three doc errors were causing HTTP 401 for developers copy-pasting against 4.5.0 sellers. This PR corrects all three in two files.

Changes:

  • docs/building/by-layer/L2/authentication.mdx — replaces the false "both legs use the same authentication header" claim with a per-leg alias policy; adds a <Warning> for sellers migrating the a2a_header_name knob.
  • docs/building/by-layer/L0/a2a-guide.mdx — updates the A2AClient init snippet from the legacy apiKey: field to auth: { type: 'bearer', token: ... }; adds securitySchemes / security to the sample agent card so the card correctly declares a bearerAuth HTTPAuthSecurityScheme.

Non-breaking justification: docs-only update correcting examples to match already-shipped wire behavior (adcp 4.5.0). No schema, enum, task, or endpoint changes. Changeset is --empty.

Pre-PR review:

  • code-reviewer: approved — auth: { type, token } shape confirmed consistent with existing authentication.mdx lines 334–342; --empty changeset correct for docs-only fix of shipped behavior; build-a-caller.mdx:83 auth_token: is MCP-specific and out of scope. One nit: "HTTPAuthSecurityScheme" term is non-standard prose — acceptable for now.
  • docs-expert: approved — anchor /docs/building/by-layer/L0/a2a-guide#agent-cards valid; <Warning> severity correct for production-401 migration callout; build-a-caller.mdx:83 auth_token: is MCP (protocol: 'mcp') not A2A — not a gap for this PR. Per-leg distinction clear to a first-time reader.

Triage-managed PR. This bot does not currently iterate on
review comments or PR conversation threads (only on the source
issue). To unblock:

  • Push fixup commits directly: gh pr checkout <num>
    fix → push.
  • Or re-trigger: comment /triage execute on the source
    issue.

See #3121
for context.

Session: https://claude.ai/code/session_019Syf6X1uxPcLgV9ggxixXB


Generated by Claude Code

…-auth on A2A surface

Fixes issue #4223. adcp 4.5.0's per-leg BearerTokenAuth config makes A2A
RFC 6750-only; x-adcp-auth is now a MCP-only back-compat alias. Correct
three documentation errors that cause HTTP 401 for developers on 4.5.0:

- authentication.mdx: split the false "both legs same header" claim into a
  per-leg alias policy table; add a Warning for sellers migrating the
  a2a_header_name knob.
- a2a-guide.mdx: replace legacy apiKey: field with auth: {type,token} in
  the A2AClient init snippet.
- a2a-guide.mdx: add securitySchemes/security to the sample agent card so
  sellers declare the correct bearerAuth HTTPAuthSecurityScheme.

https://claude.ai/code/session_019Syf6X1uxPcLgV9ggxixXB
@bokelley bokelley added the claude-triaged Issue has been triaged by the Claude Code triage routine. Remove to re-triage. label May 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

claude-triaged Issue has been triaged by the Claude Code triage routine. Remove to re-triage.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Update A2A docs/snippets to use Authorization: Bearer (drop x-adcp-auth references on the A2A surface)

2 participants