Fix MCP list_authorized_properties tenant detection without context #578
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
Completes the fix for test-agent.adcontextprotocol.org by enabling MCP
list_authorized_propertiesto work without authentication.This is the second part of the fix - PR #577 fixed A2A, this fixes MCP.
Problem
When
list_authorized_propertiesis called via MCP without an auth token:contextparameter isNoneget_principal_from_context()had early return whencontext=None→ returned(None, None)Solution
Remove the early return in
get_principal_from_context()whencontext=None:get_http_headers()uses FastMCP context variables internally, works without context object(None, tenant_context)for unauthenticated public discovery callsChanges
src/core/main.py:
if not context: return (None, None)get_http_headers()works via context varsImpact
list_authorized_propertiesnow works without authenticationTest Results (Expected)
Before:
After (both PRs):
publisher_domains✅ VERIFIEDpublisher_domains⏳ PENDING DEPLOYMENTRelated
get_http_headers(), just needed to remove guard🤖 Generated with Claude Code