Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Holon Python SDK

CI PyPI Python MIT License

This repository contains the Python runtime for holon.

Install

uv add --prerelease allow holon-sh
uv add --dev holon-types

holon-types is the holon CLI; it brings mypy, which holon types check runs from the project's environment.

Invoking MCP Servers

The Holon Python SDK allows generation of type-safe MCP clients. See Example for an explanation, or Dependencies to understand dependency resolution.

Type-checking MCP invocations

uv run holon types check

Call a tool

from holon.apps import apps

async def greet(name: str) -> str:
    greeting = await apps.bar.tools.greet({"timeout": 5.0}, name=name)
    return greeting["result"]

Arguments are keywords, validated before sending; the result is validated against the output schema and returned.

Handle errors

from holon.client import ToolCallError

try:
    await apps.bar.tools.greet(name="world")
except ToolCallError as error:
    error.code     # "tool_error" or "input_required"
    error.result   # the original MCP result

Read the whole result

call_tool returns the full MCP result instead of raising:

result = await apps.bar.call_tool("greet", name="world")
if result.result_type == "input_required":
    ...                          # call again with input_responses and request_state
elif result.is_error:
    ...                          # inspect result.content
else:
    result.structured_content    # typed as Outputs.bar.greet

The options dict also accepts input_responses, request_state and meta.

Serve an MCP App view

holon.view.app_view registers a built HTML file as an MCP App resource:

from holon.view import app_view

server.add_resource(app_view(
    "ui://foo/index.html", "Foo", "dist/index.html",
    connect_domains=["https://bar.example.com"],
))

The page itself uses holon-ui.

Metadata

Release files for holon-sh 0.0.1.dev3

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

Source distribution (sdist)

Source distribution for holon-sh 0.0.1.dev3
File Size Uploaded Provenance
holon_sh-0.0.1.dev3.tar.gz 11.8 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for holon-sh 0.0.1.dev3
File Interpreter ABI Platform
holon_sh-0.0.1.dev3-py3-none-any.whl Python 3 none any Details

Total release size: 19.7 kB

Release files / holon_sh-0.0.1.dev3.tar.gz

Download URL holon_sh-0.0.1.dev3.tar.gz
Size 11.8 kB
Tags Source
SHA-256 checksum
How to use checksums
88cd46d740f45369648f2704bcb3599f2b4970e4cba8582b9a0bbd9a26ca8f79
BLAKE2b-256 checksum
How to use checksums
99a65ba06f443f5a2c5762e9690db885ec34d13ba4338ebdcd47f7a457225d46
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.5 {"installer":{"name":"uv","version":"0.13.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"26.04","id":"resolute","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / holon_sh-0.0.1.dev3-py3-none-any.whl

Download URL holon_sh-0.0.1.dev3-py3-none-any.whl
Size 7.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6223c4d3d32907f0b4b6b6110aa4cd2440256e9562104bdaad39c3569152d612
BLAKE2b-256 checksum
How to use checksums
e774ae35ecbc1675cc429028564f66806ee69f591cf234648f12cadceefeefcd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.5 {"installer":{"name":"uv","version":"0.13.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"26.04","id":"resolute","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for holon-sh 0.0.1.dev3

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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

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