Skip to main content

Context Router Python SDK

Python client for the Context Router MCP server.

Full Cursor + Python usage guide: USING.md.

Requirements

  • Python 3.10+
  • Node.js 20+ with a resolvable @context-router/mcp-server package, or a built server in this monorepo

Install

From the monorepo:

cd packages/sdk-python
pip install -e ".[dev]"

Ensure the MCP server is built:

cd ../..
npm run build

Quickstart

import asyncio
from context_router import ContextRouter


async def main():
    async with await ContextRouter.local() as router:
        flow = await router.start("Research")
        await flow.set("findings", {"answer": 42})
        handoff = await flow.handoff(keys=["findings"])
        print(handoff.summary)
        await flow.complete()


asyncio.run(main())

Use an isolated SQLite directory in tests:

async with await ContextRouter.local(data_dir="/tmp/my-router-data") as router:
    ...

API surface

The Python SDK mirrors the TypeScript SDK:

  • High-level: ContextRouter.local(), router.start(), router.status(), router.discover_tools()
  • WorkflowSession: set, get, get_many, checkpoint, handoff, complete, fail
  • Explicit namespaces: router.workspace, router.schema, router.workflow, router.state, router.checkpoint, router.handoff, router.step, router.agent_role

Examples

Tests

pytest

Integration tests skip automatically when Node.js or the MCP server entry is unavailable.

Server resolution

ContextRouter.local() resolves the server in this order:

  1. CONTEXT_ROUTER_MCP_ENTRY environment variable
  2. Installed npm package @context-router/mcp-server/entry
  3. Monorepo fallback at packages/server/dist/index.js

License

Apache-2.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ctxrouter-0.6.0.tar.gz (8.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ctxrouter-0.6.0-py3-none-any.whl (9.9 kB view details)

Uploaded Python 3

File details

Details for the file ctxrouter-0.6.0.tar.gz.

File metadata

  • Download URL: ctxrouter-0.6.0.tar.gz
  • Upload date:
  • Size: 8.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for ctxrouter-0.6.0.tar.gz
Algorithm Hash digest
SHA256 09ffd297662b6fabfa2a22251516729ef7580fe5cab2d2a39c5e70021b13d988
MD5 ec127ffa0449fafa1d8104d208380f89
BLAKE2b-256 c0a144376fd6e0dc4a94970692e3db590f227e8daa06da733b32e45c260efd1d

See more details on using hashes here.

Provenance

The following attestation bundles were made for ctxrouter-0.6.0.tar.gz:

Publisher: release-python.yml on mindlever-strategy/context-router

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ctxrouter-0.6.0-py3-none-any.whl.

File metadata

  • Download URL: ctxrouter-0.6.0-py3-none-any.whl
  • Upload date:
  • Size: 9.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for ctxrouter-0.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3978795da938a1cd43abc830a076f409a3cff9b2fd73e55fb63a19e338be2e07
MD5 9b6979c34734dafe43f0084ff62925f8
BLAKE2b-256 559cc069aed89e5665138b4bcb2a61bc88e6bee290823c731cac37f992d4dd27

See more details on using hashes here.

Provenance

The following attestation bundles were made for ctxrouter-0.6.0-py3-none-any.whl:

Publisher: release-python.yml on mindlever-strategy/context-router

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.6.0 This release

2 files

0.5.0

2 files

0.4.0

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page