Ship your Claude Artifact to a real URL

Anything Claude builds as a single HTML page can live at your-name.myminiapp.dev in a few minutes. Pick the route that matches where you are, then follow the numbers.

The no-tools route. Connect once, then publish by asking Claude in plain words. Works in the browser and the desktop app.

  1. Add the connector. In Claude.ai open Settings → Connectors → Add custom connector. Name it My Mini App Hoster and paste this URL:

    https://myminiapp.dev/mcp

    You only do this once per Claude account.

  2. Click Connect and sign in with Google. A Google window opens; choose the account you want your sites tied to. That Google account is your hosting account, so there is nothing else to register.

  3. Open the chat with your artifact, or build one now. Any single-page artifact works: a game, a calculator, a dashboard, an interactive explainer.

  4. Ask Claude to publish it, naming the site. For example:

    Publish this artifact to myminiapp.dev as pocket-timer

    Names are 1 to 63 lowercase letters, digits or hyphens, and become the subdomain. Claude sends the page's HTML for you; you do not copy anything.

  5. Open the link Claude gives back. Your page is live at https://pocket-timer.myminiapp.dev over HTTPS on Cloudflare's network, straight away. Free sites carry a small ad strip and a "hosted on" badge; Premium sites carry neither.

  6. Change it later by asking again with the same name. Every publish is a new deployment, and the old ones stay available in the dashboard for one-click rollback.

Before you publish: what a site must look like

The checks are the same on every route. A site that passes them goes live immediately.

Entry file
index.html at the top level
Free plan
1 MB per site, 3 sites, 200 files, 2 MB upload
Premium plan
5 MB per site, 25 sites, 1,000 files, 10 MB upload

After it is live

If something goes wrong

index.html not found at the top level
The zip contains a folder. Re-zip the files themselves, not the folder that holds them.
script host "…" is not on the allowed CDN list
Move that script to cdnjs or jsDelivr, or paste its code inline. Anything else loads from unpkg or esm.sh too.
site exceeds 1 MB
Images are almost always the reason. Convert them to WebP, shrink them, or move to Premium for 5 MB.
slug is taken or reserved
Someone else has that name, or it is a system word like www or api. Pick another.
Claude says it cannot reach the connector
Open myminiapp.dev/status. If everything is Operational, remove and re-add the connector; the sign-in may have lapsed.

Still stuck? The dashboard's assistant can see your sites and their deployments. Ask it what happened.