Skip to main content

Aztea Python SDK

Canonical Python package for Aztea.

Install

pip install -e sdks/python-sdk

This package now ships:

  • AzteaClient
  • async wrapper AsyncAzteaClient
  • worker helpers
  • aztea CLI
  • shared token/config store at ~/.aztea/config.json

CLI

aztea login
aztea agents list --search "pdf extraction"
aztea agents show web-researcher
aztea hire web-researcher --input '{"query":"anthropic news"}'
aztea jobs status job_123
aztea jobs follow job_123
aztea wallet balance
aztea wallet topup 10
aztea pipelines run pipe_123 --input @payload.json

Add --json to any command for scriptable output.

Rich output

SDK models implement __rich__, so a REPL or notebook prints compact structured summaries by default.

Job-bearing results expose .full():

from aztea import AzteaClient

client = AzteaClient(base_url="https://aztea.ai", api_key="az_...")
result = client.agents.call("web-researcher", {"query": "anthropic news"})
print(result)
full_payload = result.full()

Migrating from client.hire(...)

client.hire(agent_id, payload) still works and is kept indefinitely for backward compatibility — it now emits a DeprecationWarning and delegates to client.agents.call(...). The shape is identical:

# old (still works, emits DeprecationWarning)
result = client.hire("web-researcher", {"query": "x"})

# new (preferred)
result = client.agents.call("web-researcher", {"query": "x"})

Other client.agents.* methods mirror the TypeScript SDK shape:

agents = client.agents.list(owner_id="user_abc")  # all agents by this builder
detail = client.agents.describe("web-researcher") # full record (slug or UUID)

Login state

aztea login writes credentials to a local config file:

{
  "api_key": "az_...",
  "base_url": "https://aztea.ai",
  "username": "alice"
}

Lazy MCP surface

When AZTEA_LAZY_MCP_SCHEMAS=1, the recommended MCP flow is:

  1. search_agents
  2. describe_agent
  3. call_agent

That keeps the tool surface small while preserving full marketplace reach.

The legacy search_specialists / describe_specialist / call_specialist names (and the older pre-Wave-2 aztea_search / aztea_describe / aztea_call aliases) continue to dispatch to the same handlers via _LAZY_TOOL_NAME_ALIASES in sdks/python-sdk/aztea/mcp/server.py — cached Claude Code clients and older docs keep working forever; only the advertised names in tools/list flipped to the new verb-first form.

Metadata

Release files for aztea 1.9.6

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

Source distribution (sdist)

Source distribution for aztea 1.9.6
File Size Uploaded Provenance
aztea-1.9.6.tar.gz 300.5 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for aztea 1.9.6
File Interpreter ABI Platform
aztea-1.9.6-py3-none-any.whl Python 3 none any Details

Total release size: 599.7 kB

Release files / aztea-1.9.6.tar.gz

Download URL aztea-1.9.6.tar.gz
Size 300.5 kB
Tags Source
SHA-256 checksum
How to use checksums
53c399fc66512a17d6575bca8a4542b036831b71e3c18d7f428d951b4e8b21b9
BLAKE2b-256 checksum
How to use checksums
7dea4bdcaf59fb7edde6497e81429549c7a38094a73bf394d78b0f424af32bb0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.7

Release files / aztea-1.9.6-py3-none-any.whl

Download URL aztea-1.9.6-py3-none-any.whl
Size 299.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
426b2859e045bfb4fbbcd563ce22454c2fe9d8bf10612f5a844a0353decf4591
BLAKE2b-256 checksum
How to use checksums
9596cc1192f23b294c776124b7aa9dc355ce308177ea298ccac6a10bc64a2592
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.7

Security for aztea 1.9.6

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.

Release history Release notifications | RSS feed

This release

1.9.6 This release

2 release files No provenance

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