Practical overview
When it fits
Use the SDK when building or adapting Python agent code, or the CLI when a supported local agent is already installed and should be made available through A2A without writing adapter code.
Who it is for
- Developers adding A2A support to a custom Python agent or framework.
- Teams exposing an existing local agent CLI or workflow engine through an A2A server.
Documented uses
- Expose a Python callable or custom agent as an A2A server.
- Wrap a supported local agent CLI so other A2A-compatible systems can reach it.
- Put an adapter around a workflow engine or supported agent framework.
- Publish an automatically generated Agent Card for the server.
Requirements & limits
The project is open source under the Apache-2.0 license. Both SDK and CLI require Python 3.11 or later.
- Choose between the SDK for custom code and the CLI for an existing supported local agent.
- The CLI does not install the underlying agent; it must already work independently.
- The CLI runs agents non-interactively and relies on their existing configuration.
- The documented default bind address is 127.0.0.1; the README notes 0.0.0.0 for accepting remote connections.
- Streaming support varies by listed adapter; the README marks some integrations as non-streaming.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Set up a local agent CLI as an A2A server
Install the adapter CLI and start a supported local agent as an A2A server.
Before you start
- Python 3.11 or later
- uv or pipx
- A supported agent installed and working independently, with its executable available on PATH or its path supplied to the adapter
Steps
Install the CLI with the command below or
pipx install a2a-adapter.uv tool install a2a-adapterFrom the project directory the agent should work in, run
a2a-adapter claude --port 9010, replacingclaudewith a supported agent command as needed.Use CLI options before
--for adapter server settings and options after--for arguments passed to the agent.
Expected outcome
The local agent is served through A2A, with an automatically generated Agent Card at `/.well-known/agent-card.json`.
Guide limitations
- The adapter wraps an existing agent and does not install it.
- The CLI runs the agent non-interactively; agent settings are managed through the agent's own configuration.
- The documented command example binds to the default host, 127.0.0.1.
Expose a Python agent through the SDK
Add A2A server support to a Python callable agent.
Before you start
- Python 3.11 or later
- A Python project virtual environment
Steps
Install
a2a-adapterin the project's virtual environment.Define an async Python function that accepts an inputs dictionary and returns a string.
Wrap the function with
CallableAdapterand pass the adapter toserve_agentwith a port.
Expected outcome
The callable is served as an A2A server with an automatically generated Agent Card.
Guide limitations
- The documented example uses a Python callable; framework integrations may require their corresponding extras.
- The example documents server setup, not a client workflow for sending tasks.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 14 October 2026
- Original website title
- hybroai/a2a-adapter · Official homepage title · retained in its source language

