Skip to main content

Writing

Notes on AI, agents, web technologies, and building with LLMs

Technical articles on AI integration, agents, agent harnesses, MCP, web technologies, and emerging tools. Working notes from a Google Developer Expert with 25+ years of building and teaching.

  1. Introduction to WebMCP

    WebMCP lets a page hand structured tools to an in-browser agent instead of making it guess at your UI. I wired 22 tools into Watch Anchor; here's how the API works and what I learned.

  2. Graph memory for AI agents

    How to give an agent a memory that stores the way facts connect and updates them when they change. A walk through extraction, entity resolution, time-ranged edges, and ranked recall, in about 150 lines of node:sqlite, sqlite-vec, and Gemini.

  3. MCP Apps

    For its first eighteen months MCP let a model call a tool and read the result back as text. That's a low ceiling the moment a user wants to sort, filter or drill into something. MCP Apps raise it: the server ships an actual interface into the chat. Here's how MCP got here, what the new proposal says, and a small app you can run in Claude Desktop, built on the official SDK and checked against the spec.

  4. Joining the Agentic AI Foundation as an ambassador

    I've been accepted into the Agentic AI Foundation's ambassador programme. Here's what the foundation is, why it matters that this work is happening in the open, and what I've actually signed up to do.

  5. Sparse vs Dense Retrieval: Why Your Search Doesn't Understand Synonyms

    If your retriever misses a relevant document because the user phrased their question differently than the document's author wrote the content, the LLM generates an answer with incomplete context. It doesn't hallucinate because it's confused, it hallucinates because it never saw the right information.

  6. AgentTool vs sub-agent delegation

    Two ways to give an agent help: a tool it calls and gets an answer back from, or a sub-agent it hands the whole turn to. Same data-agent, opposite control flow. When to reach for each, shown with a real NL2SQL-to-chart pipeline in Google ADK.

  7. What is Loop Engineering

    Everyone is quoting "design loops that prompt your agents" and few can say what a loop actually is. Here's the plain version, plus the part the hype skips: the loop is the easy bit. What's hard is that it makes your understanding optional, and nothing in it tells you when you've stopped understanding what ships.

  8. Kitsune: a local-first agent runtime

    I built a managed-agent runtime that runs entirely on one laptop. In this post I show you how you can set it up.

  9. Build Your Own Agent Harness

    What an agent harness is, how you build one, and why it is where the work now lives. I start from a bare loop, break it on real tasks, and walk the five places every harness ends up reaching for.

  10. Agent Experience (AX) and the Agent Experience Interface (AXI): a working demo

    A companion to my AX and AXI piece. I built one fictional CLI twice, once human-only and once agent-ready, pointed a small Google ADK agent at each, and watched what happened. With the interactive demo and the real numbers.