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
Create a subclass of MCPToolset to simplify connections to Google Managed MCP servers #3897
Base MCPToolset can be tricky to configure when connecting to the newly announced Google Managed MCP servers. The primary complexity is the need to dynamically refresh authentication token obtained using the default application credentials. While it can be done using header provider, this feature is not documented is not well known. Also, incapsulating the actual URLs of the MCP servers can improve usability of the toolset. For example,
would be all that's needed to access the default BigQuery toolset in production environment (deployed on a managed GKE/CloudRun/Agent Engine). Obviously, additional parameters might be needed to configure/filter the tools, but the complexity of authentication and access would be hidden from the developer. It should also simplify integration of with the UI-based Agent Builder (no need to configure complex auth providers).
out of scope for core. #5040 implemented this and was closed in march: a google-managed mcp subclass belongs in adk-python-community. @yugborana carried it over as adk-python-community#154.
the auth half works today — header_provider runs on every tool request, so a callable minting an adc token gives you the refresh, and contributing/samples/mcp/mcp_dynamic_header_agent shows it. url encapsulation isn't covered; open a new issue if that's the part you need in core.
I am a bit confused. Why does this functionality belong to the community project? It's core Google Cloud functionality and everybody who uses GCP managed MCP servers should use this. Are we also planning to move all GCP-related tools under https://github.com/google/adk-python/tree/main/src/google/adk/tools (bigquery, spanner, pubsub, etc.) under the community project? If not - how do we draw the line?
Activity
saifxyzyz commentedon Dec 12, 2025
Hey @slilichenko , can I work on this?
llalitkumarrr commentedon Mar 24, 2026
Hello @slilichenko ,
Thank you for raising this issue, we appreciate your inputs.
Hello @saifxyzyz ,
If you have the time, would you be open to submitting a pull request? We highly value community contributions.
yugborana commentedon Mar 27, 2026
@saifxyzyz i want to work on this issue. Have u started your work?
saifxyzyz commentedon Mar 27, 2026
Feel free!
yugborana commentedon Mar 27, 2026
thanks. then I will start implementing
feat(tools): Add GoogleManagedMcpToolset for simplified Google MCP auth
GWeale commentedon Sep 16, 2026
out of scope for core. #5040 implemented this and was closed in march: a google-managed mcp subclass belongs in adk-python-community. @yugborana carried it over as adk-python-community#154.
the auth half works today — header_provider runs on every tool request, so a callable minting an adc token gives you the refresh, and contributing/samples/mcp/mcp_dynamic_header_agent shows it. url encapsulation isn't covered; open a new issue if that's the part you need in core.
slilichenko commentedon Sep 16, 2026
I am a bit confused. Why does this functionality belong to the community project? It's core Google Cloud functionality and everybody who uses GCP managed MCP servers should use this. Are we also planning to move all GCP-related tools under https://github.com/google/adk-python/tree/main/src/google/adk/tools (bigquery, spanner, pubsub, etc.) under the community project? If not - how do we draw the line?