connect-python
Server and client runtime library for Connect RPC
What it is and what it does
connect-python is a Python implementation of Connect, a Protobuf RPC framework that runs over standard HTTP/1.1 and HTTP/2. It provides both client and server libraries, with a protoc plugin that generates typed stubs and interfaces from .proto definitions. The package supports synchronous and asynchronous clients, WSGI and ASGI server implementations, and all streaming patterns (unary, server streaming, client streaming, and bidirectional).
The library emphasizes type safety with full type annotations, includes built-in compression (gzip, brotli, zstd), and supports server-side and client-side interceptors for cross-cutting concerns. It is verified against the official Connect conformance test suite. Typical use involves generating code from protobuf definitions, then implementing service handlers or making client calls using the generated interfaces.
Use it for:
- Build typed RPC services using protobuf definitions with automatic client stub and server interface generation.
- Implement bidirectional streaming communication between services over HTTP/2 with full-duplex support.
- Integrate Connect RPC into existing Python web frameworks via WSGI or ASGI adapters.
- Create microservices with compression and interceptor support for authentication, logging, or metrics.
- Migrate from gRPC while maintaining protobuf-based service definitions and type safety.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides Python client and server libraries for Connect RPC, a Protobuf-based RPC framework that works over HTTP/1.1 and HTTP/2, with support for synchronous and asynchronous code, streaming, and compression.
Yes. The package is actively maintained, has no known vulnerabilities, low install friction, and fills a genuine need for a modern Protobuf RPC framework in Python. It is suitable for production use in microservices, though the Beta status suggests you should monitor releases. Choose it if you want typed RPC with HTTP/2 streaming and prefer Connect's simpler protocol over gRPC.
Install
connect-python on PyPI
pip
pip install connect-pythonuv
uv add connect-pythonpoetry
poetry add connect-pythonInstalling connect-python
Before you install
Low friction: pure Python wheel with only two runtime dependencies (protobuf and pyqwest). Actively maintained with recent commits and no known vulnerabilities.
License in practice
Apache-2.0 permissive license allows commercial and private use with minimal restrictions; suitable for most projects.
Quickstart
pip install connect-python
import connect_python
# Generated code from protoc plugin creates typed client stubs
# and server interfaces from .proto files
Requires Python 3.10 or later; generated client and server code requires running protoc with the connect-python plugin on your .proto files first.
Verify before relying
- Performance characteristics compared to gRPC or other RPC frameworks under typical workloads.
- Maturity level and production readiness beyond Beta classification.
- Whether gRPC-Web support is planned or available through an alternative package.
Package facts
| License | Apache-2.0 (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 2 — protobuf, pyqwest |
| Maintenance | actively maintained — 148 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 1,352,481/month — #4,011 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: connect_python-0.9.0-py3-none-any.whl
Keywords: rpc, grpc, connect, protobuf, http
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
connectrpcConnect is a runtime library for building and…
permissive · top 15,000 on PyPI
nexus-rpcNexus Python SDK provides a framework for…
permissive · top 1,000 on PyPI
protoc-gen-connect-pythonA protoc plugin that generates Python client…
permissive · top 15,000 on PyPI
twirpTwirp is a Python implementation of the Twirp…
unclear · top 5,000 on PyPI
pyqwestA Python HTTP client wrapping the Rust reqwest…
permissive · top 5,000 on PyPI
grpclibgrpclib is a pure-Python asyncio-based…
permissive · top 1,000 on PyPI
pyreqwestA Rust-based HTTP client for Python with both…
unclear · top 15,000 on PyPI
grpcio-toolsGenerates Python gRPC service stubs and message…
permissive · top 1,000 on PyPI
conjure-python-clientA lightweight HTTP client library built on…
permissive · top 15,000 on PyPI
grpc-interceptorProvides simplified server and client…
permissive · top 1,000 on PyPI