<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: smallhandsome</title>
    <description>The latest articles on DEV Community by smallhandsome (@smallhandsome).</description>
    <link>https://dev.to/smallhandsome</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3970171%2F3d37d811-320e-4d17-a61d-d4f3f551d89c.png</url>
      <title>DEV Community: smallhandsome</title>
      <link>https://dev.to/smallhandsome</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/smallhandsome"/>
    <language>en</language>
    <item>
      <title>ShotAPI - Let AI Agents See the Web: Screenshot and Render MCP Server</title>
      <dc:creator>smallhandsome</dc:creator>
      <pubDate>Fri, 05 Jun 2026 16:27:40 +0000</pubDate>
      <link>https://dev.to/smallhandsome/shotapi-let-ai-agents-see-the-web-screenshot-and-render-mcp-server-4ebp</link>
      <guid>https://dev.to/smallhandsome/shotapi-let-ai-agents-see-the-web-screenshot-and-render-mcp-server-4ebp</guid>
      <description>&lt;p&gt;The web is visual — but most AI agents can only read text. What if your AI assistant could actually &lt;strong&gt;see&lt;/strong&gt; a webpage, capture a screenshot, or render HTML to an image?&lt;/p&gt;

&lt;p&gt;That's exactly what &lt;strong&gt;ShotAPI&lt;/strong&gt; does. It's an MCP (Model Context Protocol) server that gives AI agents like Claude, Cursor, and Copilot the ability to take screenshots of any URL and render HTML/CSS to images.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is ShotAPI?
&lt;/h2&gt;

&lt;p&gt;ShotAPI is a screenshot and render API built as an MCP Server. It runs on &lt;strong&gt;FastAPI + Playwright&lt;/strong&gt;, offering two core tools:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;screenshot&lt;/strong&gt; — Capture any webpage as a PNG/JPEG image&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;render&lt;/strong&gt; — Convert HTML/CSS markup into a rendered image&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  How AI Agents Use ShotAPI
&lt;/h2&gt;

&lt;p&gt;Via the MCP protocol, any MCP-compatible AI client can connect to ShotAPI and use these tools natively:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Claude Desktop&lt;/strong&gt; — Add ShotAPI as an MCP server, and Claude can see any webpage you mention&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cursor/Windsurf&lt;/strong&gt; — AI coding assistants can screenshot sites for design reference&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Custom agents&lt;/strong&gt; — Any agent using the MCP SDK can integrate visual web capabilities&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Two Transport Modes
&lt;/h2&gt;

&lt;p&gt;ShotAPI supports both MCP transport modes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;stdio&lt;/strong&gt; — For local Claude Desktop integration (JSON-RPC over stdin/stdout)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;streamable-http&lt;/strong&gt; — For remote/Cursor integration (HTTP at &lt;code&gt;/mcp&lt;/code&gt; endpoint)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The streamable-http mode means you can host ShotAPI remotely and let multiple agents connect — no local installation needed.&lt;/p&gt;

&lt;h2&gt;
  
  
  Quick Start: Connect as MCP Server
&lt;/h2&gt;

&lt;p&gt;For Claude Desktop, add this to your MCP config:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"mcpServers"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"shotapi"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"url"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"https://aiphotoshop.mynatapp.cc/mcp"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"transport"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"streamable-http"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;For Cursor/Windsurf, the same config works in their MCP settings.&lt;/p&gt;

&lt;h2&gt;
  
  
  Free Tier + Paid Plans
&lt;/h2&gt;

&lt;p&gt;ShotAPI offers a generous free tier:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;30 screenshots + 30 renders per month (IP-based, no signup needed)&lt;/li&gt;
&lt;li&gt;No API key required for free usage&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Paid plans for heavier usage:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Starter&lt;/strong&gt; — 5,000 calls/month&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Pro&lt;/strong&gt; — 20,000 calls/month&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  API Endpoints
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight http"&gt;&lt;code&gt;&lt;span class="err"&gt;GET /v1/screenshot?url=https://example.com&amp;amp;width=1280&amp;amp;height=720&amp;amp;format=png
GET /v1/render?html=&amp;lt;h1&amp;gt;Hello&amp;lt;/h1&amp;gt;&amp;amp;width=800&amp;amp;height=600&amp;amp;format=png
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Both endpoints return image data directly.&lt;/p&gt;

&lt;h2&gt;
  
  
  Get Started
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Visit &lt;a href="https://aiphotoshop.mynatapp.cc" rel="noopener noreferrer"&gt;ShotAPI website&lt;/a&gt; to try it free&lt;/li&gt;
&lt;li&gt;Check the &lt;a href="https://aiphotoshop.mynatapp.cc/docs" rel="noopener noreferrer"&gt;API docs&lt;/a&gt; for integration details&lt;/li&gt;
&lt;li&gt;Connect as MCP server in your AI client config&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;ShotAPI is open and ready — give your AI agent eyes on the web!&lt;/p&gt;

</description>
      <category>ai</category>
      <category>python</category>
      <category>mcp</category>
    </item>
  </channel>
</rss>
