<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Willian Pinho — Blog</title>
    <link>https://willianpinho.com/blog</link>
    <description>Thoughts on software architecture, AI/ML systems, production engineering, and building products as a solo founder.</description>
    <language>en-us</language>
    <lastBuildDate>Fri, 19 Jun 2026 18:00:15 GMT</lastBuildDate>
    <atom:link href="https://willianpinho.com/rss.xml" rel="self" type="application/rss+xml" />
    
    <item>
      <title>I wrote a read-only scanner for MCP / agent-gateway production-readiness</title>
      <link>https://willianpinho.com/blog/mcp-gateway-scan-production-readiness</link>
      <guid isPermaLink="true">https://willianpinho.com/blog/mcp-gateway-scan-production-readiness</guid>
      <pubDate>Tue, 09 Jun 2026 12:00:00 GMT</pubDate>
      <description>A free MIT CLI that scans a repo for seven classes of AI-agent-gateway anti-patterns — tool-access/RBAC, fail-close, supply-chain pinning, observability, multi-LLM routing, secrets, production-readiness — runs as a CI gate, and exposes itself as an MCP server.</description>
      <category>mcp</category>
      <category>ai</category>
      <category>security</category>
      <category>devops</category>
      <category>agents</category>
    </item>

    <item>
      <title>The cross-origin observability tax</title>
      <link>https://willianpinho.com/blog/the-cross-origin-observability-tax</link>
      <guid isPermaLink="true">https://willianpinho.com/blog/the-cross-origin-observability-tax</guid>
      <pubDate>Fri, 05 Jun 2026 12:00:00 GMT</pubDate>
      <description>When one team adds a request header, the backend CORS allowlist becomes a coordination point. Here is what that tax actually costs, why it fails silently, and four patterns for handling it.</description>
      <category>observability</category>
      <category>cors</category>
      <category>otel</category>
      <category>reliability</category>
      <category>distributed-tracing</category>
    </item>

    <item>
      <title>The agent runtime event model</title>
      <link>https://willianpinho.com/blog/the-agent-runtime-event-model</link>
      <guid isPermaLink="true">https://willianpinho.com/blog/the-agent-runtime-event-model</guid>
      <pubDate>Sun, 24 May 2026 12:00:00 GMT</pubDate>
      <description>Four runtime events, four policy-attachment surfaces, and the hook coverage at each event is what separates a demo from something a regulated buyer will sign for. Framework selection is a distraction.</description>
      <category>ai</category>
      <category>agents</category>
      <category>security</category>
      <category>architecture</category>
      <category>mcp</category>
    </item>

    <item>
      <title>Large File MCP: Handle Massive Files in Claude with Intelligent Chunking</title>
      <link>https://willianpinho.com/blog/large-file-mcp-intelligent-chunking</link>
      <guid isPermaLink="true">https://willianpinho.com/blog/large-file-mcp-intelligent-chunking</guid>
      <pubDate>Wed, 15 Apr 2026 12:00:00 GMT</pubDate>
      <description>A production-ready MCP server that makes working with large files in Claude Desktop and AI assistants effortless — smart chunking by file type, line-level navigation, regex search, and streaming for files up to 10 GB.</description>
      <category>mcp</category>
      <category>ai</category>
      <category>claude</category>
      <category>typescript</category>
      <category>developer-tools</category>
    </item>
  </channel>
</rss>