<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Mcp on Loop &amp; Retry</title>
    <link>https://loopandretry.github.io/tags/mcp/</link>
    <description>Recent content in Mcp on Loop &amp; Retry</description>
    <image>
      <title>Loop &amp; Retry</title>
      <url>https://loopandretry.github.io/images/og-default.png</url>
      <link>https://loopandretry.github.io/images/og-default.png</link>
    </image>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Sun, 30 Aug 2026 02:27:14 +0000</lastBuildDate>
    <atom:link href="https://loopandretry.github.io/tags/mcp/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>What an MCP server actually is, and the tool-design mistakes that break it</title>
      <link>https://loopandretry.github.io/posts/mcp-server-tool-design-mistakes/</link>
      <pubDate>Sun, 30 Aug 2026 02:27:14 +0000</pubDate>
      <guid>https://loopandretry.github.io/posts/mcp-server-tool-design-mistakes/</guid>
      <description>MCP gives you a standard wire format for connecting an agent to tools — it doesn&amp;rsquo;t make the tools on the other end safe to call. Most MCP servers are thin wrappers around an existing REST API, which quietly imports every assumption that API made about having a human developer as its client. Here&amp;rsquo;s what MCP actually is, how it differs from the API you already know, and the specific tool-design mistakes that turn a working MCP server into a flaky agent.</description>
    </item>
  </channel>
</rss>
