Skip to main content
Percher is still being built and account creation is paused — get notified when it opens.

Get started

Run Percher by talking to your assistant.

Percher puts your app on the internet and keeps it there: a real web address with HTTPS, and no server to set up or look after. An idle app sleeps and wakes on the next visit. Publish again and the live version updates in place; a recent version can be brought back. You do the rest by asking, in ordinary words.

Most people never touch a terminal. Percher is built for the assistant you already use, as long as it can see your project or reach Percher: Claude, ChatGPT, Codex, Cursor, Claude Code, Gemini CLI or another MCP client. You do not need to understand the commands it runs.

Say this to your assistant

Publish this project to Percher. Read https://percher.app/docs/quick-start first. If you cannot access the project files or run Percher tools, tell me how to connect you instead of guessing. Before the first deploy, confirm the public app name with me. Keep secrets out of source code and return the live URL when the deploy is healthy.

Paste this to Claude, Cursor, or any AI assistant.

Then just ask

Three things people say most.

Publish my latest changes

Percher updates the live version in place; the address stays the same.

Why did it stop working?

If a publish failed, Percher tells your assistant what went wrong and how to fix it. For an app that crashed after going live, the local MCP or the dashboard has the logs.

Go back to the version that worked

Percher puts a recent version's code back online; your data stays as it is.

Anything else you can say in plain words, your assistant can usually do.

Connect your assistant

Three ways in, depending on where you use your assistant.

Connector

A connector lets an AI service reach Percher over the internet. Percher's side is hosted, so there is no Percher server to install: you add one address in the assistant's settings and sign in once to authorize it. The connector publishes what the assistant writes or a repository you point it at; it cannot read files on your machine.

Percher’s address

https://mcp.percher.app/mcp
Choose your assistant
Step 1. In Claude (web or desktop), open Customize, then Connectors.
Step 2. Choose Add custom connector and paste the address.
Step 3. A Percher sign-in opens. Check that the browser's address bar shows percher.app before you approve; if it shows anything else, close it.

You sign in once. On a Team or Enterprise plan, an owner adds the connector under Organization settings first.

MCP server

The MCP server runs on your own machine next to your editor, so the assistant can see your project files and publish them directly. One small config entry; you sign in the first time it publishes.

Pick your tool.

Claude Code

Anthropic's CLI for Claude

  1. Run: claude mcp add percher -- npx -y @percher/mcp
  2. Or add the config to ~/.claude.json, or to .mcp.json in your project
  3. Say: "publish my app"
Command line (CLI)

The same tool without an assistant: you run it yourself in a terminal, from the folder that holds your app. Logging in opens a browser. For CI, create a token on your account page and set it as PERCHER_TOKEN.

  1. npx percher login
  2. npx percher publish

Nothing to publish yet?

Percher hosts your app; an AI assistant can build it. Open a starter, swap in your own details, and paste it into whichever AI you use. Each is written so the result publishes here without extra setup.

Prompt starters: a site, a blog, a small tool, an API

Ask for a static site (plain HTML or a framework that builds to files) or a simple Node or Bun app, and skip platform-specific features like edge functions. These starters already do.

Personal site / portfolio

A single page about you and your work. The simplest thing to build and host.

Build a one-page personal portfolio as plain HTML, CSS, and JavaScript with no framework. Include a hero with my name and what I do, a projects grid, and a contact section. Keep it a static site I can deploy as-is, no build step.

Link in bio

A tidy page of links for your social profiles.

Build a single-page 'link in bio' site as static HTML and CSS. A round avatar, my name, a one-line bio, and a vertical list of tappable link buttons. Mobile-first, no build step.

Blog

Posts you write in Markdown, rendered as a clean readable site.

Create a blog as an Astro site with three example posts in Markdown, a home page that lists them, and a clean readable layout. Produce static output that's ready to deploy.

Landing page for an idea

One page to explain a product and collect interest.

Build a landing page for [describe your idea] as a static Vite + React site: a headline, three benefit cards, and an email signup form wired to a hosted form service so it works without a backend. Use either a Formspree endpoint (a plain POST form) or an embedded Tally form; I'll paste mine. Keep it a static build with no server.

A small tool or web app

Something interactive that remembers data between visits.

Build a small [todo / expense tracker / habit tracker] web app as a Node app using Express. Keep the data in Percher's managed PocketBase rather than in a file: put a [data] section with mode = "pocketbase" in percher.toml, and use the official pocketbase npm package. Percher injects POCKETBASE_URL, POCKETBASE_ADMIN_EMAIL and POCKETBASE_ADMIN_PASSWORD, so on startup sign in as the superuser, create the collection you need if it does not exist yet, and read and write through the SDK after that. Include a package.json with a start script, and read the port from the PORT environment variable.

A simple API

A few JSON endpoints for another app to call.

Build a small JSON API in Node with Express: two or three endpoints plus a /health route. Read the port from the PORT environment variable and include a package.json with a start script.
What Percher does with what the AI built

You don't need to know which runtime your app is; Percher detects it from the files. These cover roughly what AI assistants generate:

  • A React + Vite single-page app. the most common Claude artifact shape. Served as a static build: a Bun stage compiles the bundle, a slim Caddy image serves it, with SPA routing and SSL baked in.
  • A Next.js app. detected from next.config.js and run on the Node runtime. Server Components, Server Actions, and ISR work unchanged. Edge Functions become regular API routes.
  • An Express, Hono, or Fastify API. detected from package.json and run as a long-running Node server. Add a /health route that returns 200 and the deploy health check passes.
  • A Bun server. a Bun.serve handler ships on the Bun runtime: fast cold builds, native HTTPS proxy, no Node compatibility shims.
  • A Python FastAPI, Flask, or Django app. built with Percher's own multi-stage Dockerfile, no Dockerfile of yours needed. Set [web].command to start the server, and ship requirements.txt or a supported lockfile with its project file.
  • Static HTML or a landing page. no build step, just files served by Caddy in a few-MB container. Instant cold start, automatic SSL.

If the guess is wrong, the runtime field in percher.toml is a one-line override.

Common questions

Do I need to know how to code?

No. You describe what you want in plain language and the AI writes the code. If your assistant is connected to Percher, it publishes for you too; otherwise you copy the files into a folder and run one publish command. If a step is unclear, paste the error back to your assistant and ask it to fix it.

Which AI should I use?

The one you already have. If you use Claude, ChatGPT, Codex, Cursor, Claude Code or Gemini CLI, ask it to build the app and publish it on Percher; once it is connected (see above), it does both. You only need a different tool if yours cannot reach Percher at all.

Can I move an app I built in Lovable, v0 or Bolt?

Yes. Download the project from the builder, put it in a folder, and ask your assistant to publish it, or run the CLI from that folder. A Lovable app that uses Supabase keeps working with its Supabase backend.

Migrating from Lovable

Can I publish straight from a claude.ai artifact?

Yes, once Percher is connected to Claude.ai as a connector: say "publish this" and Claude hands the files it wrote to Percher directly — no download, no terminal (inline source is capped at about 25 MB). Without the connector, copy the code into a local folder (or download the zip if Claude offers one) and run bunx percher publish from there.

Connect Claude.ai

What about Claude Code, Cursor, or another coding assistant?

Those edit files on your machine, so they use the local route: bunx percher mcp prints the config to paste into the assistant's settings, and it gets percher_publish, percher_logs, percher_doctor, and the rest as tools. You ask it to ship the project, the assistant follows the build, and the live URL comes back as a message.

Why do the prompts say 'static site' or 'read PORT'?

Those constraints make the result publish cleanly on Percher. A static site (plain HTML or a framework that builds to files) needs no server. A Node or Bun app needs to listen on the port Percher gives it via the PORT environment variable and have a start script. Ask for those and the first publish usually just works.

What if the AI used an Edge Function or a host-specific API?

Ask it to convert that to the standard-Node equivalent. Edge functions (runtime: 'edge' in Next.js) become regular API routes. Vercel KV, Postgres, and Blob storage have no direct equivalent here: opt into the managed PocketBase sidecar with [data] mode = "pocketbase" for SQLite + sign-in + file storage, or point DATABASE_URL at any external Postgres.

What's the CLAUDE.md file, and do I need it?

Optional, but it helps. bunx percher ai-files install writes CLAUDE.md and .cursor/rules/percher.mdc into your project. They teach the assistant exactly how to write a working percher.toml, add a health endpoint, set env vars, and recover if a deploy fails — so the deploy instructions are baked into every prompt. Run bunx percher ai-files update later to refresh them.

What can't I host here?

Percher is for small, self-contained sites and apps. It runs in one region, has no uptime SLA, and no compliance certifications. It isn't the right platform for a paid SaaS or anything a customer depends on. For a hobby site, a side project, an app for your family or a club, or a tool for a smaller business, it's a good fit.

What licence applies to the tools and the files they generate?

Percher's CLI, local MCP server and JavaScript libraries use FSL-1.1-MIT from version 1.0.0. Older versions keep MIT. Percher-authored app starters and AI instruction files use the permissive 0BSD licence, and your existing files keep their existing licences.

Versions, licences and upgrading

Hosted connectorMCP toolsTroubleshooting