Everything a site needs. Nothing an agent doesn't.

Every feature available via REST API, MCP, and CLI.

Deploy in one command

Sign up once to get an API key. Deploy by uploading a tar.gz archive with HTML/CSS/JS and a sitestakk.toml config file. SiteStakk runs the full pipeline — image optimisation, favicon generation, sitemaps — and publishes globally with TLS. A preview URL is returned immediately.

sitestakk
$ sitestakk deploy

✓ Archive created       47 files, 1.2 MB
✓ Images optimised      12 files → WebP
✓ Favicon variants      generated
✓ Sitemap               generated
✓ TLS certificate       provisioned
✓ Site live

  site_id:     site_7qp31r
  version:     1
  preview_url: https://app.sitestakk.com/?_host=acme.com
One command. The full pipeline. A live URL.

One account. Thousands of sites.

SiteStakk was built for the many-site pattern. List sites, inspect deployments, push updates, roll back to any previous version — all programmatically. Per-site pricing, no per-seat tax, no rate limits on API calls.

sitestakk
$ sitestakk sites list

  SITE ID       HOSTNAME                  VERSION  STATUS
  site_7qp31r   acme.com                  v4       live
  site_3mp88k   beta.example.com          v1       live
  site_9xw21n   campaign-q2.acme.com      v2       live
  site_4kl55p   franchise-bristol.com     v7       live
  ... 243 more

  247 sites total

$ sitestakk sites rollback site_4kl55p --to v6
✓ site_4kl55p rolled back to v6
Full fleet visibility and control. One API key.

Native MCP integration

Add SiteStakk to any MCP-compatible agent framework with one config entry. The MCP server exposes the full platform as typed tools — deploy, manage sites, query analytics, retrieve submissions — callable directly from your agent. Compatible with LangChain, CrewAI, AutoGen, OpenAI Agents SDK, Google ADK, Vercel AI SDK, and more.

sitestakk
{
  "mcpServers": {
    "sitestakk": {
      "url": "https://app.sitestakk.com/mcp/sse?api_key=sk_live_..."
    }
  }
}

deploy_site    list_sites         get_site          delete_site
rollback_site  list_forms         get_submissions   get_analytics
get_site_analytics                check_status      get_docs
One config entry. All tools available immediately.

Analytics your agent can query

Every site gets server-side pageview tracking automatically — no JavaScript injected, no cookies, no consent banner needed. IP addresses never stored. Visitor identity resets daily. Query per site or fleet-wide. Clean JSON returned.

sitestakk
$ sitestakk analytics get site_7qp31r --range 7d

{
  "site_id":   "site_7qp31r",
  "period":    "7d",
  "pageviews": 14832,
  "visitors":  6201,
  "top_pages": [
    { "path": "/",        "views": 8441 },
    { "path": "/contact", "views": 2193 }
  ],
  "referrers": [
    { "source": "google.com", "visits": 3102 }
  ]
}
No JS. No cookies. No consent banner. Clean JSON.

Form submissions without a backend

Write a standard HTML form and add one attribute. SiteStakk detects it at deploy time, wires up submission handling, adds spam protection, stores submissions server-side. Retrieve via API or CLI. Export to CSV or JSON. Webhook notifications to Slack, CRMs, or any URL.

sitestakk
<form data-sitestakk-form="contact">
  <input name="email" type="email" />
  <textarea name="message"></textarea>
  <button type="submit">Send</button>
</form>

$ sitestakk forms submissions get form_contact --limit 3
{
  "form_id": "form_contact",
  "total":   142,
  "submissions": [
    {
      "id":        "sub_9x1k2m",
      "timestamp": "2026-03-04T14:22:31Z",
      "fields":    { "email": "sarah@example.com", "message": "..." }
    }
  ]
}
One attribute. Submissions stored, queryable, webhook-ready.

GDPR/CCPA compliance at deploy time

Tag third-party scripts with a data attribute specifying the category (analytics or marketing). SiteStakk injects a fully compliant consent UI — scripts blocked by default, equal-prominence Accept/Reject buttons, no external dependencies. If no scripts are tagged, nothing is injected.

sitestakk
<!-- tag scripts with a consent category -->
<script src="https://analytics.example.com/track.js"
        data-consent-category="analytics"></script>

<!-- SiteStakk injects the consent UI at deploy time -->
<!-- no external service, customisable via CSS variables -->
Compliance at deploy time. No third-party service. No configuration.

Automatic WebP conversion

JPEG and PNG images are converted to WebP and resized at deploy time. HTML references rewritten automatically. No build tools to configure, no source file changes required. Opt out per image or site-wide in sitestakk.toml.

sitestakk
$ sitestakk deploy

  ✓ Images optimised

    hero.jpg        → hero.webp        1.4 MB → 312 KB  (78% smaller)
    team-photo.png  → team-photo.webp  890 KB → 201 KB  (77% smaller)
    logo.png        → logo.webp         48 KB →  11 KB  (77% smaller)
WebP conversion. Automatic HTML rewriting. No build step required.

Run the full pipeline locally

The CLI includes a local dev server that runs the complete pipeline — image optimisation, favicon generation, forms, cookie consent, sitemaps — with live reload on file changes. No API key. No network. What you see locally is exactly what deploys.

sitestakk
$ sitestakk dev

  ✓ Pipeline active: images, favicons, forms, consent, sitemaps
  ✓ Serving at http://localhost:4000
  ✓ Watching for changes...

  GET /           200  12ms
  GET /contact    200   8ms
  [image] logo.png → logo.webp (cached)
Full fidelity local preview. No surprises at deploy time.

Feature matrix

Feature Free Starter Fleet Scale Studio
Active sites 1 10 100 1,000 10,000
REST API
MCP server
CLI
Local dev server
Custom domains*
Automatic TLS
Image optimisation
Favicon generation
Forms + webhooks
Cookie consent
Cookieless analytics
Sitemaps
Preview URLs
Instant rollback

*Custom domains require email verification once per account.

Ready to deploy?