# About Stacktree · who built the agent-publish primitive

Source: https://stacktr.ee/about

[Skip to content](#main) [Stacktree](/)[Developers](/developers)[Agents](/agents)[Docs](/docs)[Use cases](/use-cases)[Pricing](/pricing)[Blog](/blog)[Dashboard](https://app.stacktr.ee)[Sign in →](https://app.stacktr.ee)      By [ Steve Smith ](/about) · Founder, Stacktree  ·  Last updated July 2, 2026          about

#  Stacktree, in one paragraph.

   Stacktree is the publish primitive for HTML emitted by AI agents. Agents call publish_html, get an unguessable URL, and replace it in place across iterations. It is built on Cloudflare Workers, R2, and D1, and runs as a single-binary worker — no per-seat fees, no builder, no DNS dance.

  [ Get started free ](https://app.stacktr.ee/?join=1&from=seo_about)   install npx stacktree-install
Copy
     No card · 3 pages free · about a minute

       Steve Smith Founder, Stacktree · building the publish primitive for AI-emitted HTML

## Why this exists

Agents emit a surprising amount of HTML. Spec writeups. PR summaries. Status reports. Tiny custom editors. Architecture diagrams rendered with `<svg>`. The default destination for all of it today is "paste into Slack" or "screenshot into a doc," which loses the rendering — or "push to a private repo," which is twelve commits of overhead per artifact.

Stacktree exists because that gap deserved a primitive, not a workflow. The agent calls one MCP verb — `publish_html` — and the artifact has a private URL. When the agent revises it, `update_site` replaces the content in place. The URL stays. The viewer's bookmark survives. That's the entire product, and it's intentionally small.

## Who built it

  [Steve Smith](https://stacktr.ee/about) — founder of Stacktree. Background spans static-site hosting, AI agent infrastructure, and Cloudflare Workers. Stacktree is built and operated as a small focused product, not a venture-funded platform play; the goal is to keep the surface tiny enough that the agent never has to ask "which way do I publish."

## How it's built

  - Cloudflare Workers for the apex, the API, the dashboard, and the per-site serving — one binary, global edge, no per-region complexity.
 - R2 for the HTML bytes themselves. Cheap, durable, S3-compatible.
 - D1 for site metadata, ownership, expiries, and gating rules.
 - Cloudflare for SaaS for paid-plan custom domains. DNS-only CNAME; we handle TLS.
 - MCP over stdio + streamable HTTP, packaged on npm as stacktree-mcp.

## What's in scope, and what isn't

  In scope: the publish primitive for agent-emitted HTML; private-by-default URLs; replace-in-place; password and email-domain gates; CSP defaults; end-to-end encryption; custom domains; an MCP surface that stays small.

  Not in scope: a CMS, a page builder, a marketing-site host, A/B testing, analytics dashboards, SAML SSO for the marketing-site case (per-link gates cover the common cases instead), a paid-tier paywall on the basic primitive.

## How to reach us

The fastest way is to publish something. Install the MCP server in your agent, ask it to publish anything, then reply to the welcome email if you have questions — it lands directly with the founder.

##  Try the primitive.

 Install the MCP server. The first publish is anonymous and lives 24 h.

 [ Sign up free → ](https://app.stacktr.ee/?join=1&from=cta_about)   install npx stacktree-install
Copy
       Private hosting for the HTML your agents make.

[](https://betalist.com/startups/stacktree?utm_campaign=badge-stacktree&utm_medium=badge&utm_source=badge-featured)[Featured on](https://devhunt.org/tool/stacktree)[](https://buildlist.io)[Get started free](https://app.stacktr.ee/?join=1)

## Product

- [Page video](/page-video)
- [Ask this page](/ask-this-page)
- [Client spaces](/client-spaces)
- [Templates](/templates)
- [Example deliverables](/examples)
- [Custom domains](/custom-domains)
- [Client feedback](/client-feedback-loop)
- [One-time links](/one-time-view-links)
- [See how pages get read](/page-engagement)
- [Made with Stacktree](/made-with)
- [Security](/security)
- [Watch the demo](/demo)

## Agents

- [All integrations](/agents)
- [Claude Code](/claude-code)
- [OpenAI Codex](/codex)
- [Cursor](/cursor)
- [Claude.ai connector](/claude-ai-connector)
- [Claude Cowork](/what-is-claude-cowork)
- [Meta Muse](/muse)
- [MCP server](/mcp-publish-html)
- [Deploy from Claude Code](/deploy-html-from-claude-code)
- [Skills](/skills)
- [Slack app](/slack)
- [n8n node](/n8n)
- [Agent payments (x402)](/x402)

## Alternatives

- [All comparisons](/alternatives)
- [Head-to-head comparisons](/compare)
- [Tiiny Host](/tiiny-host-alternative)
- [GitHub Pages (private)](/github-pages-private-alternative)
- [Vercel](/vercel-alternative-for-agents)
- [ngrok](/ngrok-alternative-for-html)
- [Display.dev](/display-dev-alternative)
- [Static.app](/static-app-alternative)
- [OpenAI Codex Sites](/openai-codex-sites-alternative)
- [here.now](/here-now-alternative)
- [Shippage](/shippage-ai-alternative)
- [Best private hosting](/best-private-html-hosting)

## Use cases

- [All use cases](/use-cases)
- [Share with clients](/share-with-clients)
- [Send a file to a client](/share-html-file-with-client)
- [Share Claude artifacts](/share-claude-artifacts)
- [Share Jupyter notebooks](/share-jupyter-notebook-html)
- [Host Storybook privately](/host-storybook-privately)
- [Architecture diagrams](/share-architecture-diagrams)
- [AI-generated reports](/host-ai-reports)
- [Internal HTML tools](/internal-tool-hosting)
- [Private HTML hosting](/private-html-hosting)
- [Vibe-coded page hosting](/vibe-coding-hosting)
- [Leave a website builder](/website-builder-migration)

## Learn

- [Blog](/blog)
- [Glossary](/glossary)
- [FAQ](/faq)
- [Where AI output should live](/where-ai-output-lives)
- [Agent-loop hosting](/agent-loop-hosting)
- [Why agents need a publish primitive](/blog/why-agents-need-a-publish-primitive)
- [MCP servers explained](/blog/mcp-servers-explained-for-developers)
- [What changed in the 2026-07 MCP spec](/blog/mcp-2026-spec-changes)
- [Sites in Codex explained](/blog/sites-in-codex-explained)
- [Private-by-default hosting](/blog/private-by-default-html-hosting)
- [An agent paid us $1 (x402)](/blog/agent-paid-to-provision-itself)
- [When a loop hits a paywall](/blog/loop-engineering-paywall)
- [Pricing](/pricing)
- [Self-host (new)](/self-host)
- [Changelog](/changelog)
- [Docs](https://stacktr.ee/docs)
- [About](/about)
© 2026 Stacktree · stacktr.ee

[Privacy](/privacy)[Terms](/terms)[Security](/security)[Dashboard](https://app.stacktr.ee)[npm](https://www.npmjs.com/package/stacktree-mcp)[Sitemap](/sitemap.xml)[llms.txt](/llms.txt)[API spec](/openapi.json)

---
Full markdown summary of the Stacktree marketing surface: https://stacktr.ee/llms-full.txt
