Skip to main content

Conduit

CI

Conduit is a deterministic, local-first MCP gateway that federates tools from multiple Streamable HTTP servers behind one policy-enforced and auditable endpoint.

It natively presents the MCP 2026-07-28 profile, adapts current standard session-based Streamable HTTP clients at ingress, publishes stable names such as github.search_code, and routes an authorised call only through its stored downstream route. It is deliberately not a general-purpose MCP proxy.

Install

The Python distribution name is conduit-gateway (the import and command remain conduit):

pipx install conduit-gateway
# or: python -m pip install conduit-gateway

For local development from a checkout:

python -m venv .venv
. .venv/bin/activate
python -m pip install -e '.[test]'

The Go v0.1.x releases remain available through their existing release tags and the go-v0.1-maintenance branch; this branch is the Python implementation.

Quick start

conduit --init --config conduit.yaml
# Edit the downstream URL, its owned credentials, and policy rules.
conduit --config conduit.yaml

--init writes the bundled template privately and never overwrites an existing configuration. Checkout users may also copy the root conduit.example.yaml.

Conduit binds loopback addresses only. Once its downstream catalog is ready:

curl http://127.0.0.1:8080/healthz
listener:
  address: 127.0.0.1:8080
  allowed_origins: []
audit:
  path: ./conduit-audit.jsonl
policy:
  allow: ["github.*"]
  deny: []
limits:
  max_pages_per_downstream: 32
  max_tools_per_downstream: 256
  max_downstream_catalog_bytes: 1048576
  max_aggregate_tools: 512
  max_aggregate_response_bytes: 4194304
  max_tool_response_bytes: 4194304
  catalog_refresh_interval: 60s
  request_timeout: 10s
  tool_call_timeout: 30s
downstreams:
  - id: github
    url: http://127.0.0.1:9000/mcp
    headers: {}

Scope and safety model

Conduit supports server/discover, deterministic policy-filtered tools/list, and terminal JSON tools/call over MCP 2026-07-28, plus a narrowly scoped ingress adapter for standard session-based clients using 2025-06-18 or 2025-11-25. Downstreams are Streamable HTTP only. It has no automatic tool-call retries, stdio, OAuth broker, identity system, database, dashboard, or downstream SSE/progress bridge. See the compatibility matrix for Claude Code, Codex, and Inspector setup.

Every public tool has an explicit immutable route. Policy is deny-wins, then allow, then default-deny. A durable tool_call_authorized audit entry is fsynced before downstream side effects. Caller headers, cookies, and credentials are never forwarded; configured downstream headers are isolated per server. Redirects are disabled, response bodies are bounded while streaming, and downstream sessions receive a single invocation-owned cleanup DELETE.

flowchart LR
  C[MCP client] --> I[Conduit ingress]
  I --> R[Immutable registry + policy]
  R --> A[Durable audit]
  A --> D[One-shot dispatcher]
  D --> S[Exact downstream MCP route]

Read the documentation for configuration, operations, protocol compatibility, security, and development.

Development

python -m pytest --cov
ruff check .
mypy src
python -m build

See CONTRIBUTING.md, SECURITY.md, and the Apache-2.0 license.

Metadata

Release files for conduit-gateway 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for conduit-gateway 0.3.0
File Size Uploaded Provenance Actions
conduit_gateway-0.3.0.tar.gz 30.8 kB With provenance Details for conduit_gateway-0.3.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for conduit-gateway 0.3.0
File Interpreter ABI Platform Actions
conduit_gateway-0.3.0-py3-none-any.whl Python 3 none any Details for conduit_gateway-0.3.0-py3-none-any.whl

Total release size: 65.9 kB

Release files / conduit_gateway-0.3.0.tar.gz

Download URL conduit_gateway-0.3.0.tar.gz
Size 30.8 kB
Tags Source
SHA-256 checksum
How to use checksums
f9fd33d8631c00edef81d1361f776dcc0ac7935722c620eb130fd92f217cb5a3
BLAKE2b-256 checksum
How to use checksums
5c0a4ef9f02e619568cfa7e340cbe28b77b0d9509283403906334c638ea26b5b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 2, 2026.

Transparency log

Release files / conduit_gateway-0.3.0-py3-none-any.whl

Download URL conduit_gateway-0.3.0-py3-none-any.whl
Size 35.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c37e2e0596fe8a9d9150cd3e00d0130196040ea5cd478810966861420172f8da
BLAKE2b-256 checksum
How to use checksums
6e6458011f069dca491a91c487a4a183899febafc46d47d7541c57b527129048
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 2, 2026.

Transparency log

Security for conduit-gateway 0.3.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

Both files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for conduit_gateway-0.3.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 2, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page