
Speakeasy
Generate idiomatic SDKs, Terraform providers, MCP servers, and CLIs from OpenAPI specs.
About
Speakeasy generates production-ready developer tooling from OpenAPI documents: type-safe SDKs in 12 languages (Python, TypeScript, Go, Java, C#, PHP, Ruby, and more), Terraform providers, MCP servers, Postman collections, and CLIs. In September 2026 the company partnered with Google to open-source its Go-based generator under AGPL-3.0 after Google's previous proprietary SDK vendor abruptly shut down — Google now uses it for its Gemini Interactions, Agents, and Webhooks APIs, and reports the pipeline needs roughly one engineer to maintain versus several for handcrafted generators.
The honest caveat: the open-source generator is AGPL-3.0 licensed, which is a non-starter for some companies without a commercial license from Speakeasy. Output quality depends heavily on the quality of your OpenAPI spec — garbage in, garbage out. The hosted platform's advanced governance features (the 'AI control plane' for agent access) are enterprise-tier, and smaller API teams may find Fern's simpler open-core model easier to adopt.
What it can do
- Idiomatic SDKs in 12 languages from one OpenAPI spec
- MCP server, CLI, and Terraform provider generation
- Streaming, retries, and pagination support in generated SDKs
- Custom code overlays that survive regeneration
- Speakeasy AI control plane for governing agent API access
Setup
Install the CLI or use the hosted platform at speakeasy.com. Point it at your OpenAPI 3.0/3.1 document and select target languages; the open-source generator is at github.com/speakeasy-api/openapi-generation.
Prerequisites
An OpenAPI 3.x specification for your API. Go toolchain if building the open-source generator from source.
Use cases
Works with
Trust score — 8/10
Scored 8/10 (verified tier, metrics-v1). Evidence: Verified via vendor site/docs/GitHub and reputable coverage, wave 46; Trending score 80/100 from researcher assessment.
Sources
Every fact above was checked against these sources. Where a claim comes from the provider and couldn't be independently verified, the text says so.