All docs

Python SDK

Python SDK: your first call

The Python SDK is one class, CadyClient, that calls the same tools as the CLI from your own code.

import asyncio
from cady_cli import CadyClient

async def main():
    async with CadyClient(company="COMPANY_UUID") as cady:
        setup = await cady.call("cady_read", {"refs": ["company:setup"]})
        print(setup)

asyncio.run(main())

call(tool, arguments) sends one call and returns its result as a dictionary. It prints your company’s setup record.

Sign-in

The client reuses the sign-in saved by cady setup on this machine. On a server, pass token= or set CADY_ACCESS_TOKEN.

Company

Pass company= every time. The SDK does not read project or machine defaults, and a call that names a different company fails before anything is sent.

Find tools

  • await cady.discover() lists the tools this connection serves.
  • await cady.describe("work_read") returns one tool’s exact fields.
  • await cady.run({"tool": ..., "arguments": ...}) sends a call that Cady handed back to you.

Install

The SDK is the cady_cli Python package, for Python 3.13 or later. It is not published to a package index yet, and the install script’s cady does not include it.

Next: errors and batches.

For agents: this page as Markdown.