Skip to main content

Uno CLI — Agent tool gateway by ClawdChat. Access 2000+ real-world tools from the command line.

Project description

Uno CLI

Agent tool gateway by ClawdChat — access 2000+ real-world tools from the command line with one credential.

PyPI Python License

Zero runtime dependencies (Python 3.8+ stdlib only). Designed for both humans in a terminal and LLM agents orchestrating tool calls.

Install

pip install uno-cli

Quick start

uno login                             # device-code auth via ClawdChat SSO
uno search "weather"                  # find a tool
uno call weather-cn.weatherArea --args '{"area":"Beijing"}'

Credentials are stored at ~/.uno/credentials.json (mode 600).

Core commands

Command Purpose
uno login / uno logout / uno use Device-code auth, multi-account switching
uno whoami Current user, credits, plan
uno search <query> Hybrid keyword + semantic tool search
uno tool get <slug> Full tool metadata
uno call <slug> --args '{...}' Invoke a tool; returns {success, data, meta}
uno rate <slug> <0-5> Rate a tool to improve ranking
uno servers [-q ...] Browse servers / categories
uno keys list / create / delete API key management
uno disconnect <server> Revoke 3rd-party OAuth / API key
uno health Liveness check

All commands output JSON. Add --compact for single-line output (fewer tokens for LLM agents).

Environment variables

Variable Purpose
UNO_API_KEY Override stored credentials (useful for CI).
UNO_API_URL Override API base URL (default https://clawdtools.uno).
UNO_OAUTH_SCOPE OAuth scope requested at login --start (default mcp:*). Single-purpose skills narrow this to mcp:<tool>.
UNO_ALLOWED_TOOLS Comma-separated glob whitelist enforced by uno call. Tools not matching any pattern are rejected with tool_not_allowed. Example: gpt-image-2.*,time.*.
UNO_CALLER_SKILL Identifier (e.g. gpt-image2) appended to the User-Agent for attribution.

Scope enforcement for embedding skills

Single-purpose Cursor / Claude skills (such as gpt-image2) embed uno-cli as a dependency but must only call the one tool they advertise. The combination of UNO_OAUTH_SCOPE (narrowed scope at login) and UNO_ALLOWED_TOOLS (runtime glob whitelist) makes the CLI's behaviour match its declared metadata — a hard requirement for Clawhub / Skillhub security review.

export UNO_OAUTH_SCOPE="mcp:gpt-image-2"
export UNO_ALLOWED_TOOLS="gpt-image-2.*"
uno call gpt-image-2.gpt_image2_submit --args '{"prompt":"..."}'

Attempting to call anything outside the whitelist returns:

{
  "error": "tool_not_allowed",
  "tool": "github.create_issue",
  "allowed": ["gpt-image-2.*"],
  "hint": "This skill is scoped to a subset of Uno tools. Install uno-cli separately to access the full 2000+ tool catalog."
}

Python entry point

Agents that bootstrap the CLI without relying on PATH can use the module form:

python -m uno_cli search "weather"

License

MIT © ClawdChat.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

uno_cli-1.0.1.tar.gz (18.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

uno_cli-1.0.1-py3-none-any.whl (14.7 kB view details)

Uploaded Python 3

File details

Details for the file uno_cli-1.0.1.tar.gz.

File metadata

  • Download URL: uno_cli-1.0.1.tar.gz
  • Upload date:
  • Size: 18.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.9

File hashes

Hashes for uno_cli-1.0.1.tar.gz
Algorithm Hash digest
SHA256 d019733cf5617042186a8f2b5639030d8887dc34f2653c736cda9b28acb48434
MD5 55ecd4df564683d94b5a69e932b6840f
BLAKE2b-256 760e5694149392390e9a3588d20600c179100314eb05f8eb9d18c8ff02e0543f

See more details on using hashes here.

File details

Details for the file uno_cli-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: uno_cli-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 14.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.9

File hashes

Hashes for uno_cli-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 22095121329bd39e0eb268ad5c229d534936ade7af53eeedcf4e5c984b664f53
MD5 0ea6c7348db3ba3f8ad467aece99e214
BLAKE2b-256 a7773702d8e72d31d1aab35278c1ccd7a9dadc9fcb54ce86acd9a9616a39ed3e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page