Skip to main content
Supertone offers several ways to call the Text-to-Speech API beyond raw REST. Pick the one that matches how you work: SDKs for application code, the CLI for terminals and scripts, and the MCP server for AI agents. They all wrap the same REST API and stay in sync with the OpenAPI specification.

Python SDK

pip install supertone — sync and async clients, parallel auto-chunking.

TypeScript SDK

npm add @supertone/supertone — promise-based, ESM/CJS, Node and Bun.

CLI

pip install supertone-cli — synthesize, stream, batch, and manage voices from the terminal.

MCP

uvx supertone-mcp — composable tools for Claude, Cursor, and other AI agents.

Which one should I use?

If you want to…UseAudience
Call Supertone from Python or Node codePython / TypeScript SDKApplication developers
Generate or batch audio from the shell, scripts, or CICLIDevOps, content/scripting
Let an AI agent discover voices and synthesize speechMCP serverClaude / Cursor / agent users
Use a language without an SDK, or control the wire formatREST APIAny runtime

What each tool gives you

SDKs (Python & TypeScript) — Idiomatic clients for application code. They handle authentication, expose type-safe models and enums, stream audio chunks, auto-chunk long text (split at 300 characters and merged transparently), raise typed errors keyed to HTTP status codes, and support configurable retries with backoff. Each SDK page has a full feature table. CLI — The API from your terminal and scripts. Synthesize from a string, file, or stdin; stream to your speakers; batch a whole directory; manage and clone voices; check usage and predict duration. --format json output is pipe-friendly for automation, and conventional exit codes let scripts branch on failures. MCP server — Composable tools that let an AI agent (Claude, Cursor, and other MCP clients) drive Supertone. The agent can discover and preview voices, estimate cost, clone voices, and synthesize speech — chaining these into multi-step voice workflows on its own.

When to use the REST API directly

The REST API is available for languages and runtimes where an SDK isn’t published — Go, Java, PHP, Rust, embedded systems — or when you want maximum control over the wire format. The endpoints are documented in the API Reference; examples in that section include curl, JavaScript, Go, Python, PHP, and Java. If you call REST directly, you’ll need to implement chunking, retries, and streaming consumption yourself.