Field notes on AI-native SaaS.
How to ship MCP servers, embed in-product AI assistants, and monetize AI usage — written by the team building the platform.
- MCP education
A Cloudflare Worker cannot fetch its own domain
A subrequest to your own zone comes back 522, not your page. Three times it broke our knowledge ingest and our own health scorecard. The in-process fix, the recursion guard, and the two checks that start lying once the network is gone.
Oct 5, 2026 · 7 min - In-product AI
How do I prevent an AI agent from taking actions on the wrong account?
Four controls that make wrong-account actions impossible rather than unlikely: identity known by construction, an identity cache keyed on the credential subject, approvals that replay frozen arguments, and a 403 classified as a wrong-id signal.
Sep 25, 2026 · 7 min - MCP education
Slack's MCP server is live. Your users still can't connect their own workspace.
Slack's MCP server uses user tokens, supports PKCE and returns a spec-correct 401. It also has no registration endpoint, and Slack permits MCP only for Marketplace-listed and internal apps. What that means if you embed an assistant in someone else's product.
Sep 15, 2026 · 7 min - MCP education
Our Mixpanel connector said "connected" and read nothing. It was the region.
A Mixpanel MCP connector authenticated cleanly, loaded all 65 tools, and refused every data read. The cause was data residency: Mixpanel runs a separate MCP host per region, Intercom does the same, and nothing in the MCP handshake tells a client which one it belongs to.
Sep 14, 2026 · 6 min - MCP education
MCP vs REST APIs: when to wrap and when to skip
MCP and REST solve different problems for different consumers. The diffs that matter — discovery, auth, errors, pagination, bounded output — and why most MCP servers are just glue over REST.
Jul 9, 2026 · 4 min - MCP education
MCP Tools vs Resources vs Prompts: which primitive when
MCP exposes three primitives because hosts render each as a different UI. Here's the decision rule for picking Tools, Resources, or Prompts — with examples.
Jun 27, 2026 · 4 min - Comparison & discovery
Managed vs self-hosted MCP gateway: a buyer's framework
Your MCP tools stay yours either way — what's negotiable is the gateway layer. Here's a clear-eyed framework for when to buy managed and when self-hosting actually pays back.
Jun 26, 2026 · 6 min - Comparison & discovery
Choosing an MCP host: widget, Claude, Cursor, or custom
Your MCP server runs in many hosts — widget, Claude Desktop, Cursor, custom agents. Here's how to pick the right host per use case, which spec capabilities differ between hosts, and how auth changes per host.
Jun 18, 2026 · 5 min