Metadata-Version: 2.1
Name: zambo
Version: 1.0.0
Summary: Zambo — the cross-AI execution layer on the command line. 100+ tools, verifiable receipts, no API key.
Author: Brennan Zambo
License: MIT
Project-URL: Homepage, https://zambo.dev
Project-URL: Documentation, https://zambo.dev/docs
Project-URL: Receipt Test, https://muse.ai/s/the-receipt-test-uxk6ljxzgxyxn1xo
Keywords: mcp,ai,agents,tools,receipts,automation,llm
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE

# zambo — the Zambo execution layer on your command line

**The problem:** AI models talk. Getting things *done* — checking a live price, auditing a site, running research, pulling data — means wiring up APIs, keys, and glue code for every single task.

**The fix:** one command. Describe the job, get it done, get a receipt.

```bash
pip install zambo
zambo "what's the price of BTC right now?"
```

```text
BTC · $81,235.00 USD ...

🔗 receipt 89ccbddc-0b3b-4dbd-b424-4ee75119ef80 · audit: https://zambo.dev/run/89ccbddc-0b3b-4dbd-b424-4ee75119ef80
   verify: zambo verify 89ccbddc-0b3b-4dbd-b424-4ee75119ef80
```

No account. No API key. No config. Free: 20 calls per tool per day.

## Quickstart

```bash
# One-command: describe any goal
zambo "audit example.com for AI discoverability"

# Call a specific tool directly
zambo call live_price '{"symbol":"BTC"}'
zambo call ghost_audit_site '{"url":"https://example.com"}'

# Search the 100+ tool catalog
zambo search 'generate QR code'

# List exposed tools
zambo list

# Verify any receipt
zambo verify 89ccbddc-0b3b-4dbd-b424-4ee75119ef80

# Teach your agents about Zambo (writes to AGENTS.md / CLAUDE.md / .muserules)
zambo init
```

Or use it from Python:

```python
import zambo

out = zambo.call_tool("live_price", {"symbol": "BTC"})
print(out["text"], out["receipt"]["id"])

v = zambo.verify_receipt(out["receipt"]["id"])
print(v["verified"], v["sha256"])
```

## What Zambo is

[Zambo](https://zambo.dev) — Trust Layer for AI work. Give your AI hands. It's a cross-AI execution layer: an MCP server with 100+ native tools — live crypto prices, site audits, web research, content tools, lead and data tools, multi-step agent jobs — behind one plain JSON-RPC endpoint (`https://zambo.dev/api/mcp`). This package is a thin Python client for that endpoint (stdlib + `requests` only).

Don't know which tool fits? Skip the catalog — `zambo "<goal>"` routes through `zambo_universal`, which picks the right tools for the job. Pass `--session <id>` to keep a trail across calls.

## Receipts: verifiable proof of execution

Every call returns a **verifiable receipt**: a UUID, a timestamp, and a **sha256 of the result**. It proves the call executed and binds the result bytes — so anyone can check that a claimed result is exactly what Zambo produced.

Honest scope: a receipt proves execution integrity, not correctness. It binds the result; it doesn't judge it.

Check any receipt in your browser or on the command line:

```bash
zambo verify <receipt-uuid>     # confirms zambo.dev serves the receipt,
                               # and shows sha256, source, timestamp, audit URL
```

Receipt pages are real web pages with Open Graph tags and canonical URLs — shareable, linkable, citable.

Try the [Receipt Test](https://muse.ai/s/the-receipt-test-uxk6ljxzgxyxn1xo): run a free call, get a receipt, verify it yourself.

## Free tier, honestly

- **Free:** 20 calls per tool per day. No account, no API key, no card.
- **Paid:** a $1.49 Day Pass for agents (24h via agent/x402) or card/PayPal for humans, via [zambo.dev](https://zambo.dev). Never required for a first call.

No fake limits, no "contact sales to see a price."

## Commands

| Command | What it does |
|---|---|
| `zambo "<goal>" [--session <id>]` | Do the thing. Routes via `zambo_universal`. |
| `zambo call <tool> '<json>'` | Call one tool directly. |
| `zambo search '<query>'` | Search the 100+ tool catalog. |
| `zambo list` | List exposed tools with one-line descriptions. |
| `zambo verify <receipt-uuid>` | Verify a receipt on zambo.dev. |
| `zambo init [--root <dir>] [--file <name>] [--force]` | Write the Zambo section into your project's agent instruction file. |

## Requirements & troubleshooting

- Python 3.8 or newer. Only dependency: `requests`.
- The upstream endpoint occasionally resets connections; the client retries transient transport failures automatically (up to 4 attempts). A received JSON-RPC error is never retried — it's shown to you as-is.
- Timeouts: 60s per attempt.

## License

MIT — see LICENSE (included in the package). Built by [Zambo](https://zambo.dev) (Brennan Zambo, solo founder).
