---
title: "Voice agent API and SDKs"
description: "Build and run voice agents through the Speko REST API and the TypeScript and Python SDKs. Speko also has an OpenAPI spec, signed webhooks, custom HTTP tools and a hosted MCP server."
canonical: "https://speko.ai/voice-agent-api"
last-updated: "2026-11-11"
---

> ## Speko page index
> The complete index of every page on this site is at: https://speko.ai/llms.txt
> Read it before exploring further. It lists the exact Markdown URL for every canonical HTML page.

# Voice agent API and SDKs

Speko Agents

Do everything the console does from your code or your AI assistant.

Speko is a voice agent platform with an API for everything the console does. It has official SDKs for TypeScript and Python, a public OpenAPI spec, signed webhooks, and a hosted MCP server.

[Get started free](https://platform.speko.ai/sign-in) [Book a demo](https://speko.ai/book)

<a id="panel-ts"></a>

```javascript
import { Speko } from '@spekoai/sdk';

const speko = new Speko({ apiKey: process.env.SPEKO_API_KEY! });

// Call a number with a saved agent
const call = await speko.voice.dial({
  to: '+12015551234',
  agentId: 'agent_123',
});

console.log(call.sessionId, call.status);
```

npm install @spekoai/sdk. From the phone agents guide in the Speko docs.

<a id="panel-rest"></a>

```bash
# Create an agent
curl -X POST https://api.speko.dev/v1/agents \
  -H "Authorization: Bearer $SPEKO_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{"name": "Front desk", "systemPrompt": "You are the front-desk receptionist.", "intent": {"language": "en-US", "optimizeFor": "latency"}}'

# Call a number with it
curl -X POST https://api.speko.dev/v1/sessions/phone \
  -H "Authorization: Bearer $SPEKO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"to": "+12015551234", "agentId": "agent_123"}'
```

The OpenAPI spec for every endpoint is at docs.speko.ai/openapi.json.

<a id="panel-py"></a>

```python
import os
from pathlib import Path

from spekoai import Speko

speko = Speko(api_key=os.environ["SPEKO_API_KEY"])

audio = Path("call.wav").read_bytes()
result = speko.transcribe(audio, language="es-MX")
print(result.text, result.provider, result.confidence)
```

pip install spekoai. The Python SDK covers speech-to-text, LLM and text-to-speech calls; agents and calls use the REST API.

<a id="panel-mcp"></a>

```bash
claude mcp add --transport http speko https://mcp.speko.ai/mcp
```

Lets Claude create agents, place calls and read transcripts on your account. ChatGPT and Cursor connect to the same server.

## SDKs and packages

[TypeScript SDK](https://docs.speko.ai/sdk)

- @spekoai/sdk and spekoai are the official TypeScript and Python SDKs. The CLI signs in, builds and operates agents from a terminal.

npm

- @spekoai/sdk
- @spekoai/client
- @spekoai/cli
- @spekoai/ai-sdk-provider
- @spekoai/adapter-livekit

PyPI

- spekoai

## API, spec and events

[Webhooks](https://docs.speko.ai/guides/webhooks)

- A REST API covers agents, phone numbers, sessions, calls and SMS. The OpenAPI spec is published at docs.speko.ai/openapi.json.
- Speko signs workspace webhooks and keeps a delivery log.

## Tools and MCP

[MCP quickstart](https://docs.speko.ai/quickstart/mcp)

- Custom tools are signed HTTP calls the agent makes to your systems during a call.
- The hosted MCP server at mcp.speko.ai lets an AI assistant create agents, place calls and read transcripts on your account.

## Limits

- Speko is in public preview, with no contractual uptime SLA.
- You can buy US Speko numbers only, after business verification. You can bring a number from any carrier over SIP.

## Notes

- Every fact is from the Speko docs page linked beside its section, checked November 10, 2026.

## Questions

**Does Speko have SDKs for Node.js and Python?**

Yes. @spekoai/sdk is the official TypeScript SDK on npm, and spekoai is the official Python SDK on PyPI. The REST API and its OpenAPI spec cover the same operations.

**Can an AI assistant operate Speko?**

Yes. Speko runs a hosted MCP server at mcp.speko.ai, so Claude, ChatGPT, Cursor and other MCP clients can create agents, place calls and read transcripts.

**What does it cost?**

$0.09 per minute for speech-to-text, LLM and text-to-speech, billed from answer to hang-up, with $10 in credit on signup. Calls on Speko numbers add the carrier's charge.

[Get started free](https://platform.speko.ai/sign-in) [Book a demo](https://speko.ai/book)

You get $10 in credit when you sign up. Calls then cost $0.09 per minute.

Related

- [Voice agent testing with simulated callers](https://speko.ai/voice-agent-testing)
- [Voice agent monitoring for every real call](https://speko.ai/voice-agent-monitoring)
- [Voice agent workflow builder](https://speko.ai/voice-agent-workflow-builder)
- [Multilingual voice agents](https://speko.ai/multilingual-voice-agents)
- [Voice agent platforms compared](https://speko.ai/voice-agent-platforms)
- [Vapi alternatives](https://speko.ai/vapi-alternatives)
- [Voice agents by business](https://speko.ai/solutions)
- [Speko pricing](https://speko.ai/pricing)
