diff --git a/src/google/adk/a2a/utils/agent_card_builder.py b/src/google/adk/a2a/utils/agent_card_builder.py index 4c00b22a457..8d5131c7438 100644 --- a/src/google/adk/a2a/utils/agent_card_builder.py +++ b/src/google/adk/a2a/utils/agent_card_builder.py @@ -69,7 +69,7 @@ def __init__( self._agent = agent self._rpc_url = rpc_url or 'http://localhost:80/a2a' - self._capabilities = capabilities or AgentCapabilities() + self._capabilities = capabilities or AgentCapabilities(streaming=True) self._doc_url = doc_url self._provider = provider self._security_schemes = security_schemes diff --git a/tests/unittests/a2a/utils/test_agent_card_builder.py b/tests/unittests/a2a/utils/test_agent_card_builder.py index 76c107d3f15..aa4f436dc4b 100644 --- a/tests/unittests/a2a/utils/test_agent_card_builder.py +++ b/tests/unittests/a2a/utils/test_agent_card_builder.py @@ -65,6 +65,10 @@ def test_init_with_valid_agent(self): assert builder._agent == mock_agent assert builder._rpc_url == "http://localhost:80/a2a" assert isinstance(builder._capabilities, AgentCapabilities) + # The card is served alongside a DefaultRequestHandler that always + # implements message/stream, so the default capabilities must advertise + # streaming support rather than leaving peers to assume it is missing. + assert builder._capabilities.streaming is True assert builder._doc_url is None assert builder._provider is None assert builder._security_schemes is None