It turns out we've all been using MCP wrong. Most agents today use MCP by directly exposing the "tools" to the LLM. We tried something different: Convert the MCP tools into a TypeScript API, and then ask an LLM to write code that calls that API. The results are striking: We found agents are able to handle many more tools, and more complex tools, when those tools are presented as a TypeScript API r

