Repository navigation
Conversation
Add invocation-scoped caller-token authentication for Go and Python MCP clients and integrate origin-based egress policy. Rename the ModelConfig field to tokenPassthrough for a consistent public API. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Signed-off-by: Eitan Yarmush <eitan.yarmush@solo.io>
Scope ordinary ADK toolsets and tracked transports to each operation instead of duplicating tool result parsing. Preserve credential isolation, visibility checks, and cleanup across reconnects. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Signed-off-by: Eitan Yarmush <eitan.yarmush@solo.io>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
This adds
RemoteMCPServer.spec.tokenPassthroughso Go and Python agents can authenticate MCP requests with the caller's incoming A2A bearer token. The token stays invocation-scoped, and passthrough destinations use the origin-based egress policies from #3177.Controller discovery has no caller token, so passthrough servers need either discovery disabled or a static
Authorizationheader for discovery only. Runtime calls never use that static header. Claude and Codex explicitly reject the option for now.This also renames
ModelConfig.spec.apiKeyPassthroughtospec.tokenPassthrough, so both resources use the same field name. This is a breaking field rename without a compatibility alias.Focused Go tests and race checks, related Python suites, UI tests/typecheck, and scoped lint passed. Affected CRD and protobuf outputs are regenerated; the full protobuf generation target hit BSR rate limits on unrelated outputs.