Best-in-class SDKs, Docs, and MCP for your API. Joining forces with @AnthropicAI - read more: stainless.com/blog/stainless…

New York City
We're thrilled to announce that Stainless is joining @AnthropicAI! Stainless was founded to make software better for everyone, and we're honored to continue that mission on the Anthropic team. Check out the announcement blog post for more: stainless.com/blog/stainless…
23
30
331
152,458
On April 2, we're teaming up with @KeycardLabs, @OpenAI, @vercel, and @Google for AX Night. Join us in SF for live demos and Q&A on everything your API needs for agents to integrate successfully. MCP (code mode), agent skills, CLIs, and more.
1
4
23
49,010
Big news… Stainless is expanding into rally racing! 🏎️ Just kidding. We recently worked with an old friend from Stripe, richö, on a security project. Instead of a typical payment, he asked if we’d sponsor his rally car (hard to say no to that). If you happen to see the Stainless logo flying down a gravel stage somewhere, now you know why.
2
12
2,360
🔍 Preview builds Every pull request to your docs repo generates a preview deployment. Review documentation changes in context before merging, just like code.
1
43
🎨 Styling improvements We rewrote the theming system during early access. Customize colors, typography, and UI styling using simple CSS variables. Update your accent color or fonts once, and the entire docs site updates.
1
48
🤖 Conversational AI chat Docs now include an AI assistant that can answer questions using your API reference and guides. - Streams markdown responses with syntax-highlighted code - Renders tables and structured docs content - Works alongside traditional search
1
43
🖼️ Automatically generated OG images Every page generates a branded OG image. - API endpoints render method signatures - Guides render titles + breadcrumbs - Light and dark variants supported
1
65
The Stainless Docs Platform is now in public beta! From the same OpenAPI spec that powers your SDKs, you can generate API reference, SDK examples, and prose guides. Start shipping docs that enable AI agents and delight developers.
2
2
16
2,364
The agent generates SDK code to generate the context it needs to respond to the prompt, which it then requests for the MCP server to execute. The results of the API request give the agent the information it needs.
1
595
An agent configured with an SDK code mode MCP server receives a prompt that can be satisfied by the MCP server. The agent starts with a docs_search tool call (or a few) to get information on the APIs it needs to operate.
1
234
"SDK code mode" enables operating an API via MCP with SotA accuracy and efficiency. It's how Stainless MCP servers already work today - learn more on the Stainless blog and in the thread 🧵
1
17
9,680
Headed to @HumanXCo? Join us at SFMOMA on April 8 for the biggest AI afterparty of the year. @browserbase | @resolveai | @WorkOS | @modal | @mintlify
1
1
10
850
MCP is approaching an inflection point, and the limiting factor is becoming obvious. Last week we held our first event in SF with @KeycardLabs, @Cloudflare, @temporalio, and @humanlayer_dev. We talked about what’s breaking in MCP right now, and what it will take to make agent-driven software robust. Some hard truths: - Many MCP servers work in demos but fail across real-world use cases. - “Giant agent skills” are becoming an anti-pattern with thousands of lines explaining things the model already knows, without clarity on the 5% it doesn’t. - Standard MCP approaches (one tool per endpoint or dynamic tools) scored ~50% correctness, but more advanced implementations reached ~70%. - The real kicker: when agents wrote code against production-grade SDKs, correctness jumped to 90–95%. But capability is only half the story. Control is the other half. An in-house Gmail MCP server was great for drafting emails… until it sent one unintentionally. The question isn’t just “can the agent do this?” but “what is it allowed to do?” OAuth scopes and coarse endpoint controls aren’t enough, and we’ll need fine-grained, programmable boundaries like: - Limit an agent to a single document - Cap refund amounts - Prevent broad, unintended actions If AI interfaces are going to replace dashboards, the underlying systems need to behave like an operating system kernel, not a shell script. Capability gets attention. Control earns trust. Trust is what scales.
2
9
950
Java SDK builds now come with a hosted Maven repo for early testing. When a build succeeds, Stainless automatically generates a shareable Maven repository so you can test and distribute pre-release versions before a formal release. The same pre-release testing workflow is supported for Python and TypeScript as well. stainless.com/changelog/stag…
6
871
You can now iterate on your SDKs locally with the Stainless Language Server ⚡ It brings all of the editing capabilities of the Stainless Studio directly into your local environment - VS Code, Cursor, Neovim, Zed, and more. The LSP supports: ✱ Real-time diagnostics with one-click autofixes ✱ Context-aware completions powered by your OpenAPI spec ✱ Go-to-definition + find references across config and spec ✱ Inline codelenses to see SDK coverage in your API ✱ Live Transforms updates as you edit Tighter feedback loops without ever leaving your editor.
1
6
1,225
What makes this different from raw HTTP extensions? * Type-safe composite types (not JSONB blobs) * Smart pagination with recursive CTEs that auto-short-circuit based on LIMIT for efficiency * Auto-generated from your OpenAPI spec * Easy configuration via DB params
1
1
321
Today we're releasing something experimental: a SQL SDK generator. It takes your OpenAPI spec and generates a PostgreSQL extension. Every endpoint becomes a native SQL function.
3
3
37
4,856
MCP, agentic systems, and auth 🤖 This Wednesday evening in SF with @KeycardLabs, @Cloudflare, @humanlayer_dev, and @temporalio. RSVP: luma.com/9koqr8fg
5
13
2,123
We recently announced general availability for C# SDK generation in @StainlessAPI. Here's a quick walkthrough of what makes these SDKs feel like they were built by an experienced .NET developer.
1
2
1,681
In just a couple of weeks, @Letta_AI migrated their Python + TypeScript SDKs and their docs site to Stainless. They were able to fix: - snake case to camel case bugs - collision types - broken docs snippets - manual pagination Learn more: stainless.com/customers/lett…
2
1,082
Mark Hahnenberg from @clay shares the origins of Claygent. Users were already chaining GPT-3 enrichments with Google search into what’s now called an agent loop, and by applying the ReAct pattern in a single interface, Clay was able to build their agent system.
1
1
195
We're thrilled to welcome @oerhoert to Stainless ✱ Kent William joins us from Meta, where he led the company-wide data table framework, rebooted ad blocker defense, and worked on VR UI systems. Before Meta, his experience spans products across web, mobile, and games.
1
2
154
We're excited to welcome @Google as a Stainless customer. Google DeepMind’s new Interactions API "introduces a native interface specifically designed to handle complex context management when building agentic applications with interleaved messages, thoughts, tool calls and their state." We partnered with them on the TypeScript and Python SDKs to support the launch.
2
3
7
839
SWE-bench is a useful starting point, but not a proxy for real agent performance. Kevin Yang from @warpdotdev shares his take on why production-derived evals matter more.
1
4
212
Branch selector is now available in the Stainless Studio 🪵 Easily create, reset, rebase, or delete branches using a familiar workflow. You can even share branch-specific URLs to easily collaborate with your colleagues. Check out our docs for more: stainless.com/docs/guides/br…
1
151
"Build systems that understand context, act on your behalf, and prove real utility through tight prototyping and daily use." @hursh from our recent agentic product engineering panel.
1
1
116
Define them in your stainless.yaml:
1
106
We're thrilled to welcome Bill Cauchois to Stainless ✱ Bill joins us from Notion, where he worked on the Automations team building features to help people streamline their workflows. Before that, he was at Fi, helping develop a GPS-tracking dog collar.
3
162
You can deploy remote MCP servers on Stainless with a single click. Here's a two-minute walkthrough that shows you how to generate your first server, host it on Stainless, and install it in Cursor directly from the README.
1
178
We're excited to welcome @brandur to Stainless ✱ Brandur joins us from Snowflake, where he worked on managed database offerings, specializing in Postgres. Before that, he worked at Stripe & Heroku, building API infrastructure to help product teams ship efficiently and safely.
1
1
13
13,156
Join us on Dec. 1 for an evening of Q&A on agentic product engineering, co-hosted with @browsercompany and @clay. ​​​We’ll dive into topics like ​where agents outperform deterministic code, managing latency and cost limits, and prototyping without over-architecting.
2
3
10
4,860
We're excited to welcome Pedro Belo to the Stainless team ✱ Pedro was one of the first engineers at Heroku, where he founded the API team and led development of the add-ons marketplace. He later became CTO at Lugg, setting the technical vision and delivering the Android app.
5
608
Teams at @Cloudflare, @DigitalOcean, @ValdotTown, @beeper, and @sendbluehq are already running their live developer docs on Stainless.
1
5
1,359
We're excited to welcome @cjav_dev to the Stainless team ✱ CJ spent several years at Stripe, where he launched and grew the original Stripe Developers YouTube channel, built the .NET SDK codegen pipeline, and helped make the Stripe API easier for developers to use.
3
359
You also have full control over your docs. Each site is an open-source @astrodotbuild project you can edit, theme, and extend. Host with @Cloudflare-backed reliability through Stainless, or self-host anywhere like @Vercel, @flydotio, or @deno_land.
7
4,228
Every Stainless Docs site ships with a clean, modern theme with minimal client JavaScript and ridiculously fast page load times. Docs are LLM-friendly (.md routes for every page) and have pre-baked integrations with AI tools like ChatGPT, Claude, and Cursor
1
7
497
Here is an early look at the platform from Docs product lead @alexarena. Check the rest of the thread for more details and how to sign up for early access.
1
6
529
Most API docs only show HTTP endpoints, but developers write code with SDKs. We're doing things differently with the Stainless Docs Platform, now available in early access. Stainless Docs are SDK-native. They update automatically when your API changes. Devs see your docs in the language of their choice with method signatures, types, and accurate code snippets.
7
15
83
25,828
We're excited to welcome @blakegentry to the Stainless team ✱ Blake was an early engineer at Heroku, Opendoor, and Mux. He is also the co-creator of River, an open source background job engine for Go.
1
4
405
We're excited to welcome Alex Lake as Account Executive ✱ Alex joins us from Pare AI, a company he founded that aimed to give every AE their own personalized AI deal strategist. Prior to Pare, he worked at Common Room where he helped lead the company's enterprise GTM motion.
1
5
298
📦 Cora spins up subagents to debug UI in real time with Puppeteer 🧠 Spiral uses design + review agents to autonomously iterate until the UI matches the Figma mockup @danshipper shares how @every is going deep on multi-agent workflows across their products.
1
1
13
2,171
After a conversation is created, you can add or remove items in it. Conversation items can be any valid Responses API item type (like assistant messages, input images, tool calls, and more). No need to juggle a large input array over multiple turns in your own code.
1
1
182
ICYMI: Support for the new Conversations API is now available in the @OpenAIDevs SDKs, generated with Stainless! Conversations provide a flexible primitive for managing model context over multiple API requests. Here's how it works in JavaScript. 🧵
1
3
8
866
Here, an image generation API exposes a single endpoint that accepts different model names and parameters. But as the API evolves, each model will require its own config. E.g. some ratios only work with certain models, and some models drop the seed parameter altogether. This requires a design choice in how you expose model-specific parameters. There are four concrete API shares to consider, plus a "default model" variant: 1️⃣ Common-denominator schema 2️⃣ Discriminated unions 3️⃣ Separate endpoints at /v2/generate_image/{model} 4️⃣ Separate endpoints at /v2/models/{model}/generate_image 5️⃣ Add a default model endpoint
1
1
206
We're excited to welcome @kevinwhinnery as Head of Marketing & DevRel ✱ Kevin joins us from @OpenAI, where he worked with Stainless on SDKs and docs. With 15+ yrs in marketing, DevRel & eng leadership, he'll lead our efforts to support the dev community building on Stainless.
1
1
27
6,198