Sep 20264 min readMCPTypeScriptAI tooling

MCP servers: what I learned building one

A placeholder post I'll fill in with lessons from building ReviewLens MCP — transport choices, testing deterministic tools, and what makes a good MCP tool surface.

Draft — This post is a placeholder. The content below is a rough outline I'll expand into a full post.

Building an MCP server for the first time, I expected the hard part to be the protocol. It wasn't — the MCP SDK handles most of that. The hard parts were the ones that are hard in any server project: deciding what the API surface should be, keeping tools focused, and writing tests that actually catch real failures.

What I'll cover

  • Why I chose stdio transport first (and why the switch to Streamable HTTP was simpler than expected)
  • The case for deterministic tools: why ReviewLens never calls an LLM
  • Testing an MCP server without spinning up a full client
  • What I'd do differently

Content coming soon.