a2a-sdk
A2A Python SDK
What it is and what it does
The A2A SDK is a Python library for building agentic applications that follow the Agent2Agent (A2A) Protocol specification. It provides a framework for agents to communicate asynchronously over multiple transports—JSON-RPC, HTTP+JSON/REST, and gRPC—with built-in support for modern async Python. The core library is lightweight, but the SDK includes optional integrations for HTTP servers (FastAPI, Starlette), distributed tracing (OpenTelemetry), and SQL persistence (PostgreSQL, MySQL, SQLite), allowing you to compose a deployment stack suited to your needs.
The SDK is maintained actively and supports Python 3.10 through 3.14. It implements the A2A Protocol specification version 1.0 with backward compatibility for 0.3, so agents built with this SDK can interoperate with other A2A-compliant implementations. The 8 core runtime dependencies are all established ecosystem packages, and the install is low-friction.
Use it for:
- Build a microservice-based agent system where agents communicate over HTTP or gRPC following a standardized protocol.
- Implement an agent that exposes itself as a JSON-RPC server for remote clients to invoke its capabilities.
- Create an agentic application with distributed tracing and observability using OpenTelemetry integration.
- Deploy agents with persistent state backed by PostgreSQL, MySQL, or SQLite without writing custom storage logic.
- Develop multi-agent workflows where agents coordinate via the A2A Protocol across different network transports.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
A Python SDK for building agentic applications that communicate via the Agent2Agent (A2A) Protocol, supporting JSON-RPC, HTTP+JSON/REST, and gRPC transports with optional integrations for FastAPI, OpenTelemetry, and SQL databases.
Yes. The SDK is actively maintained, has no known vulnerabilities, uses a permissive Apache 2.0 license, and requires only standard ecosystem dependencies. It is well-suited for anyone building agent-to-agent communication systems that need to follow a standardized protocol. The optional extras allow you to scale from simple local agents to distributed, observable, persistent deployments. Start with the core install and add extras as your use case demands.
Install
a2a-sdk on PyPI
pip
pip install a2a-sdkuv
uv add a2a-sdkpoetry
poetry add a2a-sdkInstalling a2a-sdk
Before you install
Low friction install with a pure-Python wheel. Active maintenance with a release 23 days old and recent commits. The 8 runtime dependencies are standard ecosystem packages (pydantic, protobuf, httpx, google-api-core), suggesting a stable, well-integrated foundation.
License in practice
Apache 2.0 permissive license allows commercial and private use with minimal restrictions, making it suitable for proprietary agent applications.
Quickstart
pip install a2a-sdk
from a2a_sdk import Agent
agent = Agent()
# Define agent capabilities and handlers
Requires Python 3.10 or later; the SDK is built on async Python and expects familiarity with asynchronous programming patterns.
Verify before relying
- Whether the optional integrations (FastAPI, gRPC, OpenTelemetry, SQL drivers) are included in the core install or require separate extras.
- Performance characteristics and throughput limits for typical agentic workloads.
- Maturity and stability of the A2A Protocol specification itself, given the SDK is at version 1.1.2 and the protocol at 1.0.
Package facts
| License | Apache-2.0 (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 8 — culsans, google-api-core, googleapis-common-protos, httpx, json-rpc, packaging, protobuf, pydantic |
| Maintenance | actively maintained — 23 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 12,367,877/month — #1,323 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: a2a_sdk-1.1.2-py3-none-any.whl
Keywords: A2A, A2A Protocol, A2A SDK, Agent 2 Agent, Agent2Agent
Tags
More Python Modules packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
PyYAMLPyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
annotated-typesProvides reusable metadata objects for use with…
permissive · top 100 on PyPI
typing-inspectionProvides runtime tools to inspect and…
permissive · top 100 on PyPI
agent-framework-a2aEnables communication with remote A2A-compliant…
permissive · top 15,000 on PyPI
fasta2aFastA2A converts an AI agent into an…
permissive · top 15,000 on PyPI
a2ui-agent-sdkProvides Python SDK components for building…
unclear · top 15,000 on PyPI
bedrock-agentcoreDeploy AI agents to AWS Bedrock AgentCore with…
permissive · top 5,000 on PyPI
agent-client-protocolProvides Python models, async transports, and…
unclear · top 1,000 on PyPI
a2aA2A is a CLI tool that maps service names…
permissive · top 15,000 on PyPI
daprDapr SDK for Python provides client libraries…
permissive · top 15,000 on PyPI
traia-iatpAdds HTTP 402 Payment Required protocol support…
unclear · top 15,000 on PyPI
ag2AG2 is a Python framework for building AI…
permissive · top 15,000 on PyPI
ag_ui_adkBridges Google ADK agents to the AG-UI…
permissive · top 15,000 on PyPI