Skip to main content

Generic leaf helpers, settings primitives, pooled clients, and LLM/AI factories for the TAI ecosystem.

Project description

tai42-kit

CI License: Apache 2.0

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).

Three packages; each depends only on the ones to its left:

tai42-contract  <--  tai42-kit  <--  tai42-skeleton
(interfaces)      (helpers)     (the server)

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+. Nothing is on PyPI yet, so install from source. Clone this repo alongside tai42-contract — this repo's [tool.uv.sources] points at ../tai-contract — then add it as an editable dependency of the environment that runs the server:

git clone https://github.com/tai42ai/tai-contract
git clone https://github.com/tai42ai/tai-kit
cd tai-skeleton   # or your own app checkout
uv add --editable ../tai-kit   # once published: uv add tai42-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 sync --extra dev --extra llm --extra jq --extra uvicorn --extra redis --extra curl --extra postgres
uv run ruff check .
uv run pyright       # 0 errors; missing optional ML backends are warnings
uv run pytest        # 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:

License

Apache-2.0. See LICENSE and NOTICE.

Project details


Download files

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

Source Distribution

tai42_kit-0.1.0.post1.tar.gz (75.6 kB view details)

Uploaded Source

Built Distribution

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

tai42_kit-0.1.0.post1-py3-none-any.whl (91.9 kB view details)

Uploaded Python 3

File details

Details for the file tai42_kit-0.1.0.post1.tar.gz.

File metadata

  • Download URL: tai42_kit-0.1.0.post1.tar.gz
  • Upload date:
  • Size: 75.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.18 {"installer":{"name":"uv","version":"0.11.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for tai42_kit-0.1.0.post1.tar.gz
Algorithm Hash digest
SHA256 de2e3b178895ac061fcce9e2323f1067924b7e2749978030fa05c87f297d6850
MD5 dff79914079d72ae963af4ae2d48e02f
BLAKE2b-256 fadb5cef7706b595182ab8d6aef355748882f4a0d9d2cca23f14f3bfd232e1f7

See more details on using hashes here.

File details

Details for the file tai42_kit-0.1.0.post1-py3-none-any.whl.

File metadata

  • Download URL: tai42_kit-0.1.0.post1-py3-none-any.whl
  • Upload date:
  • Size: 91.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.18 {"installer":{"name":"uv","version":"0.11.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for tai42_kit-0.1.0.post1-py3-none-any.whl
Algorithm Hash digest
SHA256 9a2f6757364015f7131e63984b2980c7b52ac34e5b0f6f6a20f9d258e4045f21
MD5 1623c19a3f210de82cd28eae80b21f43
BLAKE2b-256 48a9892fbf5dd020e53e4e58c2cef2c463056651225a9ddd8729e8d99f72d479

See more details on using hashes here.

Supported by

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