| name | blink-deploy |
| description | Build and deploy Blink apps to production. Preview vs production deploys, deploy pipeline, static site hosting. |
MCP Tools
blink_rollback — Restore a project to a previously saved version snapshot (use blink_versions_list to find version IDs).
Frontend deployment is done via CLI — blink deploy ./dist --prod. The MCP has no deploy tool because agents deploy using the CLI after building.
Getting Started
npm run build
blink deploy <project_id> ./dist --prod
blink link <project_id>
blink deploy ./dist --prod
blink hosting activate <project_id>
blink deploy <project_id> ./dist
blink versions list
blink versions restore <version_id>
Two hosting systems — do NOT mix them
Blink has two separate hosting paths. Never call blink_hosting_activate after blink deploy.
Path A — CLI deploy (for externally-built apps)
blink deploy <project_id> ./dist --prod
The URL is printed by the CLI after deploy. blink_hosting_status may still show inactive — this is a display lag, the site IS live.
Path B — Blink sandbox activation (for projects built in the Blink AI editor)
blink_hosting_activate
Why you must not mix them:
blink_hosting_activate rebuilds from the Blink sandbox and overwrites the S3 files that blink deploy uploaded. Calling activate after a CLI deploy replaces your app with the Blink AI template.
Summary
| Scenario | Command | URL |
|---|
| App built externally (Vite/Next/React) | blink deploy <id> ./dist --prod | {slug}.blinkpowered.com |
| App built in Blink AI editor | blink_hosting_activate | {slug}.blinkpowered.com |
| Preview / test URL | blink deploy <id> ./dist (no --prod) | {id}.sites.blink.new |
Deploy Pipeline
1. npm run build → generates ./dist (or .next, out/, build/)
2. blink deploy ./dist → uploads to Blink hosting
3. URL printed → {projectId}.sites.blink.new (or custom domain)
Preview vs Production
| Flag | Behavior | URL |
|---|
| (none) | Preview deploy | Temporary preview URL |
--prod | Production deploy | {projectId}.sites.blink.new + custom domains |
blink deploy ./dist
blink deploy ./dist --prod
Framework Build Outputs
| Framework | Build Command | Output Dir |
|---|
| React (Vite) | vite build | ./dist |
Next.js (output: 'export') | next build | ./out |
| Vue | vite build | ./dist |
| Svelte | vite build | ./build |
| Astro | astro build | ./dist |
| Plain HTML/CSS/JS | — | ./ |
For Next.js static export, ensure next.config.ts has output: 'export'.
Backend Deploy
Backend (Hono on CF Workers) has its own deploy command — see blink-backend skill.
blink backend deploy
Full Production Checklist
npm run build
blink deploy ./dist --prod
blink backend deploy
blink domains add myapp.com
Common Issues
| Issue | Fix |
|---|
| Empty deploy | Check build output directory exists and has files |
| 404 after deploy | Verify correct output dir (dist/, out/, build/) |
| Env vars missing | Set secrets in project settings before build |
| Stale deploy | Ensure --prod flag for production updates |