You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit c52f367
Browse filesBrowse the repository at this point in the historyBrowse files
Support V1/V2 per-audience token acquisition for MCP servers
V2 MCP servers require individual OAuth tokens scoped to their own
audience GUID rather than the shared ATG token used by V1 servers.
- Add audience, scope, publisher, headers fields to MCPServerConfig
- Add resolve_token_scope_for_server() to determine OAuth scope:
V2 servers (GUID audience) get <audience>/.default, V1 servers
fall back to the shared ATG scope
- Add _attach_per_audience_tokens() to McpToolServerConfigurationService:
acquires one token per unique audience (cached), attaches Authorization
header to each server config after discovery
- Extend list_tool_servers() to accept optional authorization context;
calls _attach_per_audience_tokens() when provided
- Preserve audience/scope/publisher fields in manifest and gateway parsers
- Update McpToolRegistrationService to pass auth context to
list_tool_servers() and use per-server headers instead of a single
shared token
- Update tests to reflect the new header flow
All V1 agents continue working unchanged (audience defaults to None,
falls back to ATG scope).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: libraries/microsoft-agents-a365-tooling-extensions-agentframework/microsoft_agents_a365/tooling/extensions/agentframework/services/mcp_tool_registration_service.py
Copy file name to clipboardExpand all lines: libraries/microsoft-agents-a365-tooling/microsoft_agents_a365/tooling/services/mcp_tool_server_configuration_service.py
0 commit comments