When to use the SDK vs MCP vs CLI vs curl
The SDKs are not a Composio-style agent framework. For agent-side tool access, prefer MCP.
Install
TypeScript —@flowra/sdk on npm
pnpm --dir typescript install && pnpm --dir typescript build.
Python
PyPI name is flowra-sdk. Import stays flowra. Do not pip install flowra — that name is an unrelated package.
pip install -e "./python".
CLI — @flowra/cli on npm
Authenticate
Both clients send your project API key asx-api-key. Optionally set an external user with username / x-username for multi-tenancy.
Common examples
Copy tool slugs fromtools.list (or DISCOVER). Do not invent them. Catalog actions are typically UPPER_SNAKE (GMAIL_SEND_EMAIL, SLACK_SEND_MESSAGE).
List tools and execute one
Run a workflow and poll status
Act as an end user
Create a knowledge collection and ingest a URL
Chat stream (Python events)
One shot from a terminal
When MCP isn’t connected: discover → connect → execute. Never invent the slug.connect returns redirectUrl, open it, then run connect again.
Namespaces
High-level helpers cover the main product areas (camelCase in TypeScript, snake_case in Python):tools, toolkits, skills, workflows, connections, authConfigs / auth_configs, users, triggers, chat, files, knowledge, database, sandbox, mcp, llm, browser, usage
Full method map: SDK namespaces. Every method with examples: SDK method examples. Credits: Usage and credits.
Escape hatches:
- TypeScript:
flowra.raw(generated OpenAPI operations) - Python:
flowra.request(method, path, ...)
Tutorials
TypeScript SDK
Full examples: tools, workflows, chat, files, sandbox, usage, raw client.
Python SDK
Full examples: tools, workflows, chat stream, files, sandbox, errors.
Chat streaming
SSE runs and usage events.
Usage and credits
Balance, ledger, workflow usage.
All method examples
TypeScript and Python snippets for every facade method.
Related
- Quickstart — First request (curl + SDK)
- Run a workflow
- Connect an account
- Multi-tenant basics
- API reference
- MCP