Blog

Thoughts, tutorials, and insights on web development

Inside MCP: What an MCP Server Is Made Of
2026-08-0521

Take away the vocabulary and an MCP server is a list of tools, a description of each written to be read by a machine, and two ways of delivering a message. Plus authorization, and three ways of failing — the third of which no specification can catch, and it cost me twelve published articles.

MCP
API
Architecture
Security
Authentication
Spec
AI
MCP vs REST: The Bill Comes in Tokens
2026-08-0515

GitHub's MCP server spends roughly 17,600 tokens on tool descriptions, with the full toolset on, before you ask anything. What that buys, when REST is still better, and the twelve of my own published articles that a "success" response hid from me for weeks.

MCP
REST
API
AI
LLM
Tokens
Comparison
MCP vs REST API: Fifty Years of the Same Question
2026-08-0519

In July 2026 MCP removed sessions and became stateless — the one constraint REST has been built on since 2000. MCP did not replace REST. This is how we got here.

MCP
REST
API
AI
History
Comparison
Architecture
Local Kubernetes Dev — Part 1: The inner dev loop and why run a cluster locally
2026-06-149

What the inner dev loop is, why Kubernetes makes it painfully slow, and why it's cheaper to close the 'works locally / breaks in the cluster' gap before you deploy.

Kubernetes
k3d
Tilt
Docker
DevOps
Local Development
Local Kubernetes Dev — Part 2: Production-like environments — what and why
2026-06-1312

What 'production-like' really means, where to draw the line between fidelity and convenience, and why docker-compose is an anti-pattern as a stand-in for prod.

Kubernetes
k3d
Tilt
Docker
DevOps
Local Development
Local Kubernetes Dev — Part 3: Tooling overview — who does what
2026-06-1212

A map of the 2025–2026 ecosystem: Docker, kubectl, local clusters (k3d/kind/minikube), Helm, Kustomize, loop accelerators (Tilt/Skaffold), k9s — and why we pick k3d + Tilt.

Kubernetes
k3d
Tilt
Docker
DevOps
Local Development