agentclientprotocol/python-sdk
Python SDK for ACP clients and agents.
What it solves
This project provides a Python SDK for the Agent Client Protocol (ACP), allowing developers to build agents and clients that can communicate using a standardized protocol. It eliminates the need for developers to manually implement transport layers, schema validation, and event-stream ergonomics, which are often fragmented across different AI agent frameworks.
How it works
The SDK provides generated Pydantic models that ensure payloads remain valid according to the latest ACP schema. It uses asyncio transports and stdio JSON-RPC plumbing to handle the communication between agents and clients. It also includes base classes and lifecycle helpers to reduce the boilerplate code required to create custom agents.
Who it’s for
- Agent authors who want to create ACP-compatible assistants with typed models and event-stream support.
- Client integrators who are embedding ACP agents into Python applications or wrapping existing CLIs via stdio.
- Tooling teams experimenting with permission flows, streaming UX, or Gemini bridges.
Highlights
- Spec parity: Pydantic models are automatically generated from the upstream ACP schema to maintain consistency.
- Asyncio support: Built-in async base classes and JSON-RPC plumbing for efficient communication.
- Ready-to-use examples: Includes demos for streaming, permissions, and Gemini bridges.
- Contrib utilities: Provides session accumulators and tool call trackers to simplify real-world deployments.
Related
- Project
- Project
- Project
- Project
- Project