# A2A Python SDK
[](LICENSE)
[](https://pypi.org/project/a2a-sdk/)

[](https://pypistats.org/packages/a2a-sdk)
<!-- markdownlint-disable no-inline-html -->
<html>
<h2 align="center">
<img src="https://raw.githubusercontent.com/a2aproject/A2A/refs/heads/main/docs/assets/a2a-logo-black.svg" width="256" alt="A2A Logo"/>
</h2>
<h3 align="center">A Python library that helps run agentic applications as A2AServers following the <a href="https://a2a-protocol.org">Agent2Agent (A2A) Protocol</a>.</h3>
</html>
<!-- markdownlint-enable no-inline-html -->
## Installation
You can install the A2A SDK using either `uv` or `pip`.
## Prerequisites
- Python 3.10+
- `uv` (optional, but recommended) or `pip`
### Using `uv`
When you're working within a uv project or a virtual environment managed by uv, the preferred way to add packages is using uv add.
```bash
uv add a2a-sdk
```
To install with database support:
```bash
# PostgreSQL support
uv add "a2a-sdk[postgresql]"
# MySQL support
uv add "a2a-sdk[mysql]"
# SQLite support
uv add "a2a-sdk[sqlite]"
# All database drivers
uv add "a2a-sdk[sql]"
```
### Using `pip`
If you prefer to use pip, the standard Python package installer, you can install `a2a-sdk` as follows
```bash
pip install a2a-sdk
```
To install with database support:
```bash
# PostgreSQL support
pip install "a2a-sdk[postgresql]"
# MySQL support
pip install "a2a-sdk[mysql]"
# SQLite support
pip install "a2a-sdk[sqlite]"
# All database drivers
pip install "a2a-sdk[sql]"
```
## Examples
### [Helloworld Example](https://github.com/a2aproject/a2a-samples/tree/main/samples/python/agents/helloworld)
1. Run Remote Agent
```bash
git clone https://github.com/a2aproject/a2a-samples.git
cd a2a-samples/samples/python/agents/helloworld
uv run .
```
2. In another terminal, run the client
```bash
cd a2a-samples/samples/python/agents/helloworld
uv run test_client.py
```
3. You can validate your agent using the agent inspector. Follow the instructions at the [a2a-inspector](https://github.com/a2aproject/a2a-inspector) repo.
You can also find more Python samples [here](https://github.com/a2aproject/a2a-samples/tree/main/samples/python) and JavaScript samples [here](https://github.com/a2aproject/a2a-samples/tree/main/samples/js).
## License
This project is licensed under the terms of the [Apache 2.0 License](https://raw.githubusercontent.com/a2aproject/a2a-python/refs/heads/main/LICENSE).
## Contributing
See [CONTRIBUTING.md](https://github.com/a2aproject/a2a-python/blob/main/CONTRIBUTING.md) for contribution guidelines.
Raw data
{
"_id": null,
"home_page": null,
"name": "a2a-sdk",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": null,
"keywords": "A2A, A2A Protocol, A2A SDK, Agent 2 Agent, Agent2Agent",
"author": null,
"author_email": "Google LLC <googleapis-packages@google.com>",
"download_url": "https://files.pythonhosted.org/packages/ae/df/81525bb1cac60be69a4ac9697df0621d7ca2a66e2d955b7d279727ee0610/a2a_sdk-0.2.14.tar.gz",
"platform": null,
"description": "# A2A Python SDK\n\n[](LICENSE)\n[](https://pypi.org/project/a2a-sdk/)\n\n[](https://pypistats.org/packages/a2a-sdk)\n\n<!-- markdownlint-disable no-inline-html -->\n\n<html>\n <h2 align=\"center\">\n <img src=\"https://raw.githubusercontent.com/a2aproject/A2A/refs/heads/main/docs/assets/a2a-logo-black.svg\" width=\"256\" alt=\"A2A Logo\"/>\n </h2>\n <h3 align=\"center\">A Python library that helps run agentic applications as A2AServers following the <a href=\"https://a2a-protocol.org\">Agent2Agent (A2A) Protocol</a>.</h3>\n</html>\n\n<!-- markdownlint-enable no-inline-html -->\n\n## Installation\n\nYou can install the A2A SDK using either `uv` or `pip`.\n\n## Prerequisites\n\n- Python 3.10+\n- `uv` (optional, but recommended) or `pip`\n\n### Using `uv`\n\nWhen you're working within a uv project or a virtual environment managed by uv, the preferred way to add packages is using uv add.\n\n```bash\nuv add a2a-sdk\n```\n\nTo install with database support:\n\n```bash\n# PostgreSQL support\nuv add \"a2a-sdk[postgresql]\"\n\n# MySQL support\nuv add \"a2a-sdk[mysql]\"\n\n# SQLite support\nuv add \"a2a-sdk[sqlite]\"\n\n# All database drivers\nuv add \"a2a-sdk[sql]\"\n```\n\n### Using `pip`\n\nIf you prefer to use pip, the standard Python package installer, you can install `a2a-sdk` as follows\n\n```bash\npip install a2a-sdk\n```\n\nTo install with database support:\n\n```bash\n# PostgreSQL support\npip install \"a2a-sdk[postgresql]\"\n\n# MySQL support\npip install \"a2a-sdk[mysql]\"\n\n# SQLite support\npip install \"a2a-sdk[sqlite]\"\n\n# All database drivers\npip install \"a2a-sdk[sql]\"\n```\n\n## Examples\n\n### [Helloworld Example](https://github.com/a2aproject/a2a-samples/tree/main/samples/python/agents/helloworld)\n\n1. Run Remote Agent\n\n ```bash\n git clone https://github.com/a2aproject/a2a-samples.git\n cd a2a-samples/samples/python/agents/helloworld\n uv run .\n ```\n\n2. In another terminal, run the client\n\n ```bash\n cd a2a-samples/samples/python/agents/helloworld\n uv run test_client.py\n ```\n\n3. You can validate your agent using the agent inspector. Follow the instructions at the [a2a-inspector](https://github.com/a2aproject/a2a-inspector) repo.\n\nYou can also find more Python samples [here](https://github.com/a2aproject/a2a-samples/tree/main/samples/python) and JavaScript samples [here](https://github.com/a2aproject/a2a-samples/tree/main/samples/js).\n\n## License\n\nThis project is licensed under the terms of the [Apache 2.0 License](https://raw.githubusercontent.com/a2aproject/a2a-python/refs/heads/main/LICENSE).\n\n## Contributing\n\nSee [CONTRIBUTING.md](https://github.com/a2aproject/a2a-python/blob/main/CONTRIBUTING.md) for contribution guidelines.\n",
"bugtrack_url": null,
"license": null,
"summary": "A2A Python SDK",
"version": "0.2.14",
"project_urls": {
"changelog": "https://github.com/a2aproject/a2a-python/blob/main/CHANGELOG.md",
"documentation": "https://a2a-protocol.org/latest/sdk/python/",
"homepage": "https://a2a-protocol.org/",
"repository": "https://github.com/a2aproject/a2a-python"
},
"split_keywords": [
"a2a",
" a2a protocol",
" a2a sdk",
" agent 2 agent",
" agent2agent"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "12ae573a3c49739665967f7dc6cfaf9d54614c118a67a81b53c5ee27afdf87db",
"md5": "8a231dd1aef2264c57054dbc7b4d85b4",
"sha256": "c97c9be483575e495721399daf5f2ba403913fe96710205301aae490efefb502"
},
"downloads": -1,
"filename": "a2a_sdk-0.2.14-py3-none-any.whl",
"has_sig": false,
"md5_digest": "8a231dd1aef2264c57054dbc7b4d85b4",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 101831,
"upload_time": "2025-07-18T18:20:49",
"upload_time_iso_8601": "2025-07-18T18:20:49.073831Z",
"url": "https://files.pythonhosted.org/packages/12/ae/573a3c49739665967f7dc6cfaf9d54614c118a67a81b53c5ee27afdf87db/a2a_sdk-0.2.14-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "aedf81525bb1cac60be69a4ac9697df0621d7ca2a66e2d955b7d279727ee0610",
"md5": "b2fdf08e26d7be0bc239fd29c6d906fa",
"sha256": "9d41d145b4c00e755b0f455d4646e30793a7a66ae6030290439c8729a7366c82"
},
"downloads": -1,
"filename": "a2a_sdk-0.2.14.tar.gz",
"has_sig": false,
"md5_digest": "b2fdf08e26d7be0bc239fd29c6d906fa",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10",
"size": 178211,
"upload_time": "2025-07-18T18:20:50",
"upload_time_iso_8601": "2025-07-18T18:20:50.821126Z",
"url": "https://files.pythonhosted.org/packages/ae/df/81525bb1cac60be69a4ac9697df0621d7ca2a66e2d955b7d279727ee0610/a2a_sdk-0.2.14.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-18 18:20:50",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "a2aproject",
"github_project": "a2a-python",
"travis_ci": false,
"coveralls": true,
"github_actions": true,
"lcname": "a2a-sdk"
}