tai42-kit
Generic leaf helpers, settings primitives, pooled clients, and LLM/AI factories
for the TAI ecosystem. It provides the reusable building blocks the server is
composed from: data and text transforms, LangChain/FastMCP/MCP tool glue, the
pooled-client facade and concrete drivers (redis, curl, mcp, postgres,
http), the SSRF URL guard and safe download, MCP client transports over a UDS
socket, the settings machinery, LLM/embedding factories with checkpoint/store
backends, and logging setup. Heavier backends are gated behind extras and
imported lazily. Typed package (py.typed).
Position in the ecosystem
TAI is an open-source runtime for MCP tools, agents, and workflows — the server that hosts a capability and supplies the operational layer around it (manifest loading, access control, OAuth connectors, background execution, monitoring, storage, and human-in-the-loop steps).
Four packages; each depends only on the ones to its left:
tai42-kit <--.
/ (helpers) \
tai42-contract <-+ +-- tai42-skeleton
(interfaces) \ / (the server)
tai42-cli <--'
(the remote client)
tai42-kit obeys the leaf rule: its only tai-* dependency is tai42-contract. It
implements the contract's BaseClient Protocol and consumes its manifest types;
among tai-* packages it depends on nothing else.
Install
Requires Python 3.13+. Install from PyPI into the environment that runs the server:
uv add tai42-kit
Or from source — clone this repo and add it as an editable dependency; the
tai42-* dependencies resolve in-tree from the workspace.
git clone https://github.com/tai42ai/tai42 # next to your app checkout
cd /path/to/your/app
uv add --editable ../tai42/core/kit
Backends are gated behind extras, so install the ones you need — e.g. the
pooled-client drivers tai42-kit[redis], tai42-kit[postgres], tai42-kit[curl], the
checkpoint/store backends tai42-kit[langgraph-checkpoint-postgres],
tai42-kit[langgraph-checkpoint-sqlite], and LLM-provider backends like
tai42-kit[anthropic], tai42-kit[google], tai42-kit[mistral], tai42-kit[xai],
tai42-kit[ollama], tai42-kit[huggingface].
Development
uv venv --python 3.13
uv pip install --no-sources --editable ".[dev,llm,jq,uvicorn,redis,curl,postgres]"
uv run --no-sync ruff check .
uv run --no-sync ruff format --check .
uv run --no-sync pyright # 0 errors; missing optional ML backends report as warnings
uv run --no-sync pytest --cov --cov-report=term-missing # optional-extra tests skip if their extra is absent
See CONTRIBUTING.md for the rules.
Documentation
The whole platform — concepts, guides, and the generated reference — lives in the unified documentation site:
- Layering & the contract/kit/cli/skeleton split: https://tai42.ai/concepts/layering
- Python SDK reference (this package's public API): https://tai42.ai/reference/python-sdk
License
Apache-2.0. See LICENSE and NOTICE.
Release files for tai42-kit 5.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| tai42_kit-5.0.1.tar.gz | 166.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| tai42_kit-5.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 367.0 kB
Release files / tai42_kit-5.0.1.tar.gz
| Download URL | tai42_kit-5.0.1.tar.gz |
|---|---|
| Size | 166.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1a38bf51ad12e6562a3829b60c65c809af77d0f6b92df7793c21f2aa8314395b
|
|
BLAKE2b-256 checksum How to use checksums |
cbebdc91ed5bfad5eb5d35e06ad8e2d4d5c2aa9c961a52d9d1e574982c801817
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / tai42_kit-5.0.1-py3-none-any.whl
| Download URL | tai42_kit-5.0.1-py3-none-any.whl |
|---|---|
| Size | 200.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
8e6f3992e8a9c0a4b7ec59b65226cf5f93f234c0883ae30307aa0cbd3560c2c1
|
|
BLAKE2b-256 checksum How to use checksums |
20f3d58e7e03fa831d59f7ed4e0240e8c2cae5a5b31daaecd09a8470e01d8d5b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|