Stainless is a company that generates SDKs and MCP servers from OpenAPI specs, and its blog covers API design and SDK engineering.
Commenters criticize the company's homepage as buzzword-heavy, while others defend its customer value. Its code is used in the OpenAI and Anthropic SDKs, and it posts hiring notices on HN.
I took an even simpler route:
I rebuilt the OneBusAway iOS app from scratch as a pair of Swift frameworks that will work anywhere, including tvOS[1].
Then, I started a new project to rebuild the OneBusAway server in Golang from scratch[2].
Then, I got an intern to build a suite of fantastic SDKs on top of Stainless[3].
Finally, I got Google to pay for an intern last summer to build a sign mode UI in SvelteKit that will work in any browser[4].
Easy!
But seriously though, if your transit agency isn't so cool that they provide GraphQL endpoints to query transit information, I think you'll find that the OneBusAway Maglev server is an incredibly easy way to consume your transit agency's scheduled and realtime data, and that our SDKs and apps are a fantastic way to visualize all of that information.
We're always looking for software developers to help out with our projects, as well as folks in disciplines ranging from user experience and product management, to biz dev and marketing, to volunteer some time to help our underfunded open source projects succeed. Feel free to reach out to me at aaron@onebusaway.org if that sounds interesting to you. Our software is used by millions of people every day in cities all around the world, including Seattle and New York City.
----
[1] https://github.com/oneBusAway/onebusaway-ios/
[2] https://github.com/OneBusAway/maglev
[3] https://developer.onebusaway.org/api/sdk and Stainless (which is a really terrific product) is at…
Stainless | Engineers, EMs, GTM, Former Founders | NYC & SF (onsite) | Full-time
When you npm install openai or pip install anthropic, you’re pulling code generated by Stainless.
We’re building the platform for high-quality, easy-to-use APIs — and companies like OpenAI, Anthropic, and Cloudflare already rely on us.
We’re ~3 years old, ~60 people, with strong revenue, several years of runway, and backing from Sequoia and a16z.
As one of our first 40 engineers, you’ll have real ownership, autonomy to build great products, and a direct hand in shaping the future of how developers consume APIs.
We’re looking for exceptionally productive, thoughtful, and kind people who want to make software development better for everyone.
Learn more & apply → https://stainless.com/jobs?utm_source=YlRQ8pvARO
Taking this question at face value, because you asked: Stainless generates MCP servers for REST APIs (a ~simple[0] translation of an OpenAPI to a suite of MCP tools).
We actually generate MCP for free (we charge for SDKs), so we're technically not selling, but I don't begrudge GP's comment/sentiment.
[0]https://www.stainless.com/blog/what-we-learned-converting-complex-openapi-specs-to-mcp-servers describes some ways in which this is less simple than you think. The "Handling large APIs dynamically" section near the bottom covers the most salient challenge related to converting large APIs to MCP tools, but there's more work to do.
Yes, you do hide behind buzzwords. Because your actual front page is this: https://www.stainless.com/ not the sdk subpage
--- start quote ---
Best-in-class interfaces for developers and agents
Great agent experience is built on great developer experience. Stainless helps you deliver both, with robust and idiomatic SDKs, documentation that keeps up with your API, and state-of-the-art MCP servers, all derived from your OpenAPI spec.
--- end quote ---
There would be no questions asked if you had the SDK's copy on your front page. Or whatever you wrote here: https://news.ycombinator.com/item?id=48191376
Via https://www.stainless.com/blog/stainless-is-joining-anthropic/ that's exactly what seems to have happened:
> As we focus on Claude Platform capabilities and connecting agents to APIs, we’ll be winding down all hosted Stainless products, including our SDK generator. Starting today, new signups, projects, and SDKs will not be available.
> If you’re a Stainless customer, visit app.stainless.com/transition for help transitioning from Stainless-managed products to other options. As always, you own the SDKs you’ve generated to date, and have full rights to modify and extend them however you wish.
The main problem SDKs solve is providing a way to interact with an API without having to worry about nitty gritty details like serialization and deserialization, authentication, error handling, retries, connection and thread pooling, etc.
When you have a good SDK, interacting with an API feels like working with regular functions and objects in your chosen programming languages, so it _greatly_ simplifies integrating with an API.
Stainless's Series A announcement post might be a good one to read to get the gist: https://www.stainless.com/blog/stainless-series-a