Metadata-Version: 2.4
Name: zambo-sdk
Version: 0.1.4
Summary: Zambo Python client: 153 tools behind one MCP endpoint (https://zambo.dev/mcp), a verifiable AER-1 receipt for every call, no API key
Author: Brennan Zambo
License: MIT
Project-URL: Homepage, https://zambo.dev
Project-URL: Documentation, https://zambo.dev/docs
Keywords: zambo,mcp,ai-tools,agents,receipts,execution-receipt,verifiable-receipt,ai-agent-receipt
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Intended Audience :: Developers
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Requires-Python: >=3.9
Description-Content-Type: text/markdown

# zambo-sdk

Thin Python client for [Zambo](https://zambo.dev), the verifiable work layer for AI. 153 tools behind one MCP endpoint, a verifiable AER-1 receipt for every call. Free tier included: up to 20 calls per metered tool per day, some tools unlimited. No account, no API key. Zero dependencies.

## Install

```bash
pip install zambo-sdk
```

## Quickstart

```python
from zambo_sdk import Client, verify_receipt

z = Client()

# 1. Call a tool: plain JSON-RPC, no API key
result = z.call("live_price", {"symbol": "BTC"})
print(result.text)
print("receipt:", result.receipt_id)
print("audit:  ", result.audit_url)

# 2. Route any goal through the universal entry point
job = z.universal("audit https://example.com for AI discoverability", session="demo-1")
print(job.text)

# 3. Search the full 153-tool catalog
found = z.search("generate QR code")
print(found.text)

# 4. Verify a receipt client-side (recomputes the sha256 locally)
v = verify_receipt(result.receipt_id)
print("verified:", v.verified, v.checks)
```

## API

- `Client().call(tool, arguments)` -> `CallResult` (`.text`, `.receipt_id`, `.audit_url`, `.receipt`)
- `Client().list_tools()` -> list of tool descriptors
- `Client().search(query)` -> search the full catalog via `capability_search`
- `Client().universal(goal, session=None)` -> multi-step jobs via `zambo_universal`
- `get_receipt(receipt_id)` -> full receipt JSON
- `verify_receipt(receipt_id)` -> `Verification` (`.verified`, `.checks`, `.audit_url`)

`verify_receipt` checks three things: the receipt exists, the server marks it `verified`, and, recomputed locally so the server can't fake it, `sha256(canonical_bytes) == output_hash`, plus the presence of the anchor record. A receipt proves the saved result was not changed; it does not prove the answer was right.

Receipts follow AER-1 (IETF Internet-Draft draft-zambo-aer1-24). Multi-step jobs can be packaged as a handover: one link a reviewer opens to walk the steps and record a decision.

## Notes

- Endpoint: `https://zambo.dev/mcp` (JSON-RPC 2.0 over HTTPS, `streamable_http`-compatible).
- Receipts: audit page `https://zambo.dev/run/<uuid>`; verify any receipt at https://zambo.dev/verify/.
- Need more than the free tier? The $0.99/24h Day Pass is at [zambo.dev/day-pass](https://zambo.dev/day-pass/).
