{"$schema":"https://ejfox.com/schema/page-twin@1.json","kind":"project","url":"https://ejfox.com/projects/smallbot-mcp","json_url":"https://ejfox.com/projects/smallbot-mcp.json","generator":"ejfox.com/json-twin@1","data":{"cacheVersion":"2026-10-05-source-hash","sourceHash":"ee32e458868a8c245c99545b23123f50252e07fdc28bba2c4cabeab3d6aeeb3b","html":"<p class=\"\"><a href=\"https://www.smallweb.run\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"external-link group inline-flex items-center text-blue-600 dark:text-blue-400\" data-preview-url=\"https://www.smallweb.run\">Smallweb</a> is a unique tool to create a filesystem based system for rapidly-deployed deno apps, and it pairs really well with a robot companion.</p>\n<p class=\"\">Nowadays when I have an idea for a website I just want it to exist, without spending three hours setting up a build pipeline and configuring DNS. Smallbot is an incredible tool to defeat that particular form of procrastination—a robot that takes \"make me a site about <a href=\"https://youtube.com/shorts/i6IZSkmqNSo\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"external-link group inline-flex items-center text-blue-600 dark:text-blue-400\" data-preview-url=\"https://youtube.com/shorts/i6IZSkmqNSo\">northeastern trees<svg class=\"inline-block w-4 h-4 ml-1 opacity-50 dark:opacity-75 group-hover:opacity-100 transition-opacity align-text-bottom\" xmlns=\"http://www.w3.org/2000/svg\" width=\"1em\" height=\"1em\" viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M23.498 6.186a3.02 3.02 0 0 0-2.122-2.136C19.505 3.545 12 3.545 12 3.545s-7.505 0-9.377.505A3.02 3.02 0 0 0 .502 6.186C0 8.07 0 12 0 12s0 3.93.502 5.814a3.02 3.02 0 0 0 2.122 2.136c1.871.505 9.376.505 9.376.505s7.505 0 9.377-.505a3.02 3.02 0 0 0 2.122-2.136C24 15.93 24 12 24 12s0-3.93-.502-5.814M9.545 15.568V8.432L15.818 12z\" class=\"\"></path></svg></a>\" and actually builds the thing.</p>\n<p class=\"\">I made a <a href=\"https://www.youtube.com/watch?v=thIt-JXYbco\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"external-link group inline-flex items-center text-blue-600 dark:text-blue-400\" data-preview-url=\"https://www.youtube.com/watch?v=thIt-JXYbco\">video with the creator of Smallweb<svg class=\"inline-block w-4 h-4 ml-1 opacity-50 dark:opacity-75 group-hover:opacity-100 transition-opacity align-text-bottom\" xmlns=\"http://www.w3.org/2000/svg\" width=\"1em\" height=\"1em\" viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M23.498 6.186a3.02 3.02 0 0 0-2.122-2.136C19.505 3.545 12 3.545 12 3.545s-7.505 0-9.377.505A3.02 3.02 0 0 0 .502 6.186C0 8.07 0 12 0 12s0 3.93.502 5.814a3.02 3.02 0 0 0 2.122 2.136c1.871.505 9.376.505 9.376.505s7.505 0 9.377-.505a3.02 3.02 0 0 0 2.122-2.136C24 15.93 24 12 24 12s0-3.93-.502-5.814M9.545 15.568V8.432L15.818 12z\" class=\"\"></path></svg></a> about how easy it is to get set up, and I love how much the project embodies <a href=\"https://www.are.na/ej-fox/neo-internet-philosophy\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"external-link group inline-flex items-center text-blue-600 dark:text-blue-400\" data-preview-url=\"https://www.are.na/ej-fox/neo-internet-philosophy\">indieweb philosophies</a></p>\n<p class=\"\">This is a tool built on the MCP (Model Context Protocol) so it can talk to Claude and other AI assistants and give them the tools and documentation to make little Smallweb sites easily, on-the-fly.</p>\n<figure role=\"figure\" aria-label=\"Smallbot — a helpful assistant for creating Smallweb applications\" class=\"\">\n<img src=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1741706866/Screenshot_2025-03-11_at_11.27.32_AM.png\" alt=\"Smallbot — a helpful assistant for creating Smallweb applications\" loading=\"lazy\" decoding=\"async\" srcset=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_640/v1741706866/Screenshot_2025-03-11_at_11.27.32_AM.png 640w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_960/v1741706866/Screenshot_2025-03-11_at_11.27.32_AM.png 960w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1741706866/Screenshot_2025-03-11_at_11.27.32_AM.png 1280w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1920/v1741706866/Screenshot_2025-03-11_at_11.27.32_AM.png 1920w\" sizes=\"(max-width: 430px) 92vw, (max-width: 768px) 85vw, 900px\" title=\"Smallbot — a helpful assistant for creating Smallweb applications\" width=\"3348\" height=\"2486\" style=\"--splay-rot:0.6deg;\" data-dimensions=\"3348×2486\" class=\"img-full my-8 rounded-sm img-splay w-full mx-auto py-4\" crossorigin=\"anonymous\">\n<figcaption class=\"\">Smallbot — a helpful assistant for creating Smallweb applications</figcaption>\n</figure>\n<figure role=\"figure\" aria-label=\"Smallbot generating a Smallweb app\" class=\"\">\n<img src=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1746294443/Screenshot_2025-05-03_at_1.47.10_PM.png\" alt=\"Smallbot generating a Smallweb app\" loading=\"lazy\" decoding=\"async\" srcset=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_640/v1746294443/Screenshot_2025-05-03_at_1.47.10_PM.png 640w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_960/v1746294443/Screenshot_2025-05-03_at_1.47.10_PM.png 960w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1746294443/Screenshot_2025-05-03_at_1.47.10_PM.png 1280w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1920/v1746294443/Screenshot_2025-05-03_at_1.47.10_PM.png 1920w\" sizes=\"(max-width: 430px) 92vw, (max-width: 768px) 85vw, 900px\" title=\"Smallbot generating a Smallweb app\" width=\"2620\" height=\"2486\" style=\"--splay-rot:1.59deg;\" data-dimensions=\"2620×2486\" class=\"img-full my-8 rounded-sm img-splay aspect-square w-full mx-auto py-4\" crossorigin=\"anonymous\">\n<figcaption class=\"\">Smallbot generating a Smallweb app</figcaption>\n</figure>\n<h2 class=\"\" id=\"smallweb-starter\">smallweb-starter</h2>\n<figure role=\"figure\" aria-label=\"The starter running locally — a live HTTP request returning JSON, with rate-limiting and cache-control headers from the Hono middleware\" class=\"\">\n<img src=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1789191272/projects/smallweb-starter/landing.png\" alt=\"The starter running locally — a live HTTP request returning JSON, with rate-limiting and cache-control headers from the Hono middleware\" loading=\"lazy\" decoding=\"async\" srcset=\"https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_640/v1789191272/projects/smallweb-starter/landing.png 640w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_960/v1789191272/projects/smallweb-starter/landing.png 960w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1280/v1789191272/projects/smallweb-starter/landing.png 1280w, https://res.cloudinary.com/ejf/image/upload/c_scale,f_auto,q_auto:good,w_1920/v1789191272/projects/smallweb-starter/landing.png 1920w\" sizes=\"(max-width: 430px) 92vw, (max-width: 768px) 85vw, 900px\" title=\"The starter running locally — a live HTTP request returning JSON, with rate-limiting and cache-control headers from the Hono middleware\" width=\"1200\" height=\"800\" style=\"--splay-rot:-1.21deg;\" data-dimensions=\"1200×800\" class=\"img-full my-8 rounded-sm img-splay w-full mx-auto py-4\" crossorigin=\"anonymous\">\n<figcaption class=\"\">The starter running locally — a live HTTP request returning JSON, with rate-limiting and cache-control headers from the Hono middleware</figcaption>\n</figure>\n<p class=\"\"><a href=\"https://github.com/ejfox/smallweb-starter\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"external-link group inline-flex items-center text-blue-600 dark:text-blue-400\" data-preview-url=\"https://github.com/ejfox/smallweb-starter\">smallweb-starter<svg class=\"inline-block w-4 h-4 ml-1 opacity-50 dark:opacity-75 group-hover:opacity-100 transition-opacity align-text-bottom\" xmlns=\"http://www.w3.org/2000/svg\" width=\"1em\" height=\"1em\" viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M12 .297c-6.63 0-12 5.373-12 12c0 5.303 3.438 9.8 8.205 11.385c.6.113.82-.258.82-.577c0-.285-.01-1.04-.015-2.04c-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729c1.205.084 1.838 1.236 1.838 1.236c1.07 1.835 2.809 1.305 3.495.998c.108-.776.417-1.305.76-1.605c-2.665-.3-5.466-1.332-5.466-5.93c0-1.31.465-2.38 1.235-3.22c-.135-.303-.54-1.523.105-3.176c0 0 1.005-.322 3.3 1.23c.96-.267 1.98-.399 3-.405c1.02.006 2.04.138 3 .405c2.28-1.552 3.285-1.23 3.285-1.23c.645 1.653.24 2.873.12 3.176c.765.84 1.23 1.91 1.23 3.22c0 4.61-2.805 5.625-5.475 5.92c.42.36.81 1.096.81 2.22c0 1.606-.015 2.896-.015 3.286c0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12\" class=\"\"></path></svg></a> is a lightweight application starter for Smallweb, in TypeScript on Deno. It ships Hono middleware for rate-limiting and cache-control headers.</p>","title":"Smallbot MCP","metadata":{"title":"Smallbot MCP","date":"2025-08-02T04:00:00.000Z","category":"Tools","featured":false,"modified":"2025-08-13T17:17:13.000Z","url":"https://github.com/ejfox/smallbot-mcp","tech":["MCP","AI","Web Generation","Node.js"],"state":"deployed","ai-involvement":"ai-enhanced","tags":["ai","web"],"words":198,"images":3,"imageDetails":{"total":3,"cloudinary":3,"withDimensions":0},"links":5,"codeBlocks":0,"headers":{"h2":1},"toc":[{"text":"smallweb-starter","slug":"smallweb-starter","level":"h2","children":[]}],"type":"post"}},"_links":{"self":"https://ejfox.com/projects/smallbot-mcp.json","html":"https://ejfox.com/projects/smallbot-mcp","index":"/projects.json"}}