
Alex Rattray
772 posts

Alex Rattray
@RattrayAlex
Founder @StainlessAPI, previously developer platform & products @Stripe



Just seen my first example of a company providing a prompt for Claude Code to start using their API rather than a traditional code sample. I bet we’ll see this a lot more in 2026.


Anyone from the slack frontend team following me? Could you improve selecting a chat and copying via some liberal application of style="user-select: none;" please? Something like this in the screenshot leads to: ```today 9:32 AM Max :palm_tree: One of my favorite prompts for coding (saw it on X somewhere): .... (edited) 2 replies Last reply today at 10:37 AMView thread 10:10 AM Carl joined #test. ``` It's too messy to use without post processing. It would be lovely if it would just lead irc style: ```best 2025-04-25: [ 9:32am] Max: One of my favorite prompts for coding (saw it on X somewhere): .... (2 replies) [10:10am] Carl joined #test ``` skip emoji status, (edited) status, clearly formatted timestamps, day change written in full. For extra points, it would be amazing if Command-Shift-C could also include all the replies, that would be brilliant.


*gets up on soap box* With the announcement of this new "code mode" from Anthropic and Cloudflare, I've gotta rant about LLMs, MCP, and tool-calling for a second Let's all remember where this started LLMs were bad at writing JSON So OpenAI asked us to write good JSON schemas & OpenAPI specs But LLMs sucked at tool calling, so it didn't matter. OpenAPI specs were too long, so everyone wrote custom subsets Then LLMs got good at tool calling (yay!) but everyone had to integrate differently with every LLM Then MCP comes along and promises a write-once-integrate everywhere story. It's OpenAPI all over again. MCP is just a OpenAPI with slightly different formatting, and no real justification for doing the same work we did to make OpenAPI specs and but different MCP itself goes through a lot of iteration. Every company ships MCP servers. Hype is through the roof. Yet use of MCP use is super niche But now we hear MCP has problems. It uses way too many tokens. It's not composable. So now Cloudflare and Anthropic tell us it's better to use "code mode", where we have the model write code directly Now this next part sounds like a joke, but it's not. They generate a TypeScript SDK based on the MCP server, and then ask the LLM to write code using that SDK Are you kidding me? After all this, we want the LLM to use the SAME EXACT INTERFACE that human programmers use? I already had a good SDK at the beginning of all this, automatically generated from my OpenAPI spec (shout-out @StainlessAPI) Why did we do all this tool calling nonsense? Can LLMs effectively write JSON and use SDKs now? The central thesis of my rant is that OpenAI and Anthropic are platforms and they run "app stores" but they don't take this responsibility and opportunity seriously. And it's been this way for years. The quality bar is so much lower than the rest of the stuff they ship. They need to invest like Apple does in Swift and XCode. They think they're an API company like Stripe, but their a platform company like an OS. I, as a developer, don't want to build a custom chatgpt clone for my domain. I want to ship chatgpt and claude apps so folks can access my service from the AI they already use Thanks for coming to my TED talk


If your MCP server has dozens of tools, it’s probably built wrong. You need tools that are specific and clear for each use case—but you also can’t have too many. This creates an almost impossible tradeoff that most companies don’t know how to solve. That’s why I interviewed my friend Alex Rattray (@RattrayAlex), the founder and CEO of @StainlessAPI. Stainless builds APIs, SDKs, and MCP servers for companies like @OpenAI and @AnthropicAI. Alex has spent years mastering how to make software talk to software, and he came on the show to share what he knows. I had him on @every’s AI & I to talk about MCP and the future of the AI-native internet. We get into: • Design MCP servers to be lean and precise. Alex’s best practices for building reliable MCP servers start with keeping the toolset small, giving each tool a precise name and description, and minimizing the inputs and outputs the model has to handle. At Stainless, they also often add a JSON filter on top to strip out unnecessary data. • Make complex APIs manageable with dynamic mode. To solve the problem of how an AI figures out which tool to use in larger APIs, Stainless switches to “dynamic mode,” where the model gets only three tools: List the endpoints, pick one and learn about it, and then execute it. • MCP servers as business copilots. At Stainless, Alex uses MCP servers to connect tools like @NotionHQ and @HubSpot, so he can ask questions like, “Which customers signed up last week?” The system queries multiple databases and returns a summary that would’ve otherwise taken multiple logins and searches. • Create a “brain” for your company with Claude Code. Alex built a shared company brain at Stainless by keeping Claude Code running on his system and asking it to save useful inputs—like customer feedback and SQL queries—into GitHub. Over time, this creates a curated archive his team can query easily. • The future of MCP is code execution. Instead of giving models hundreds of tools, Alex believes the most powerful setup will be a simple code execution tool and a doc search tool. The AI writes code against an API’s SDK, runs it on a server, and checks the docs when it gets stuck. This is a must-watch for anyone who wants to understand MCP—and learn how to use them as a competitive edge. Watch below! Timestamps: Introduction: 00:01:14 Why Alex likes running barefoot: 00:02:54 APIs and MCP, the connectors of the new internet: 00:05:09 Why MCP servers are hard to get right: 00:10:53 Design principles for reliable MCP servers: 00:20:07 Scaling MCP servers for large APIs: 00:23:50 Using MCP for business ops at Stainless: 00:25:14 Building a company brain with Claude Code: 00:28:12 Where MCP goes from here: 00:33:59 Alex’s take on the security model for MCP: 00:41:10

@replicate lets you run AI models with a cloud API, without having to understand machine learning or manage your own infra. Their first client libraries were hand-written, but became a maintenance burden as their HTTP API grew and evolved. The team wanted to transition to using an SDK generator, so they ran a thorough bake-off of Stainless against another provider. @zeke, Replicate’s founding designer and the co-creator of Swagger (now known as @OpenApiSpec), led the evaluation. Here are his words on what made Stainless stand out.



Coming soon... snappier MCP interactions from @replicate's MCP server, thanks to dynamic `jq` filtering of API responses. 🤯 The team at @StainlessAPI really knows how to cook.



Last week, we hosted a panel discussion on "MCP and the future of AI x API" – and 150+ engineers, founders, and product leaders packed our space to explore the future of agents & APIs. A special thanks to all the panelists: @danshipper - @every @ilanbigio - @OpenAI @mc_anthropic - @AnthropicAI @shashankgoyal95 - @openrouter @TomHacohen - @SvixHQ @RattrayAlex - @StainlessAPI Full recording below ⤵︎
















