Installation - themanojdesai/python-a2a GitHub Wiki

Installation

Python A2A is designed with a modular architecture that allows you to install only the components you need. The core functionality has minimal dependencies, with optional extras for specific features.

Basic Installation

For the core library with minimal dependencies:

pip install python-a2a

This provides the base functionality for working with the A2A protocol, including models, client, server, and basic utilities.

Recommended Installation with UV

For improved performance and dependency management, we recommend using UV:

uv install python-a2a

Component-Specific Installation

Python A2A uses extras to provide optional components:

Server Components

pip install "python-a2a[server]"  # Flask-based server support

LLM Provider Integration

pip install "python-a2a[openai]"  # OpenAI integration
pip install "python-a2a[anthropic]"  # Anthropic Claude integration 
pip install "python-a2a[bedrock]"  # AWS Bedrock integration

Protocol and Framework Support

pip install "python-a2a[mcp]"  # Model Context Protocol support
pip install "python-a2a[langchain]"  # LangChain integration

Complete Installation

For all optional dependencies:

pip install "python-a2a[all]"

Development Installation

For contributors or those who want to modify the library:

git clone https://github.com/themanojdesai/python-a2a.git
cd python-a2a
uv venv
uv install -e ".[dev]"

System Requirements

  • Python 3.9+
  • Compatible with Windows, macOS, and Linux

Verification

To verify your installation:

import python_a2a

# Should print the current version
print(python_a2a.__version__)

You can also run the included test examples:

python -m examples.getting_started.hello_a2a

Troubleshooting

If you encounter any issues during installation:

  1. Ensure you have the latest pip version: pip install --upgrade pip
  2. Try using a virtual environment: python -m venv venv && source venv/bin/activate
  3. Check for conflicting dependencies with pip check
  4. See the Known Issues page for common problems

For further assistance, please open an issue on the GitHub repository.