什么是 Shipstatic?
支持 AI agents 部署并管理静态网站,简化发布流程、资源更新与站点运维。
README
ShipStatic MCP
One URL. Your agent ships.
⚡ You probably don't need to install this. The same server is hosted at
https://mcp.shipstatic.com— drop that URL into any MCP client and your agent can publish a website in its next message. No install, no Node.js, no signup, no API key.This package is the local alternative. Install it when your agent needs to deploy a folder on your own machine, when you'd rather configure a token once than sign in, or when your client doesn't speak OAuth yet — the same fifteen tools, reached the other way. Local setup ↓
Deploy static websites, landing pages, and prototypes instantly from AI agents. Ask yours to put your site online and get back a real, shareable link in seconds.
Hosted: start here
Drop https://mcp.shipstatic.com into any MCP client. No install, no signup, no API key — your agent can publish a website in its next message.
https://mcp.shipstatic.com
Claude Code
claude mcp add --transport http shipstatic https://mcp.shipstatic.com
Claude Desktop and claude.ai
Settings → Connectors → Add custom connector, paste https://mcp.shipstatic.com, save.
Cursor, Antigravity, Windsurf, n8n, Zed — anywhere with mcp.json
{
"mcpServers": {
"shipstatic": {
"url": "https://mcp.shipstatic.com"
}
}
}
VS Code
Install ShipStatic for VS Code — the server is built in, with no config at all.
Then just ask
"Put my site online."
Your agent publishes the files and answers with two links:
- The live site — a real URL you can share right away.
- A claim link — the site stays live for 3 days; open the claim link to keep it forever. A free account is all it takes.
Want the site private? Ask for a password — visitors must enter it before they can see anything.
Then connect, if you want more
Everything above works with no account at all. Connect one when your client offers to sign you in, and the same URL answers with the rest: everything you've shipped, your own domains, and sites that stay up permanently. Nothing to install, no key to paste — your client starts the sign-in itself.
Local: the same tools, from your own machine
Install this package when your agent needs to deploy a folder on your own machine — the hosted endpoint takes files inline, so it has no path to read from — when you'd rather configure a token once than sign in, or when your MCP client doesn't speak OAuth yet.
The config asks for one thing: SHIP_TOKEN. Its value is your API key — one credential, two names. The console mints it as an API key (it starts with ship-), and the setting that carries it is called the token. Get yours free at my.shipstatic.com/api-key, paste it where the snippets below show ship-your-api-key, and every site you publish lands in your account and never expires, with a rate limit of your own instead of the shared anonymous pools.
The key is optional: leave it out and the local server behaves exactly like the hosted endpoint with no account connected — public sites, claim links, live for 3 days.
The server runs with npx, which ships with Node.js (20.19 or newer).
Claude Code
claude mcp add shipstatic -e SHIP_TOKEN=ship-your-api-key -- npx -y @shipstatic/mcp
Cursor
Add to ~/.cursor/mcp.json:
{
"mcpServers": {
"shipstatic": {
"command": "npx",
"args": ["-y", "@shipstatic/mcp"],
"env": { "SHIP_TOKEN": "ship-your-api-key" }
}
}
}
Antigravity
Add to ~/.gemini/antigravity/mcp_config.json:
{
"mcpServers": {
"shipstatic": {
"command": "npx",
"args": ["-y", "@shipstatic/mcp"],
"env": { "SHIP_TOKEN": "ship-your-api-key" }
}
}
}
Windsurf, Zed, and other MCP clients
Same config shape — npx -y @shipstatic/mcp, with SHIP_TOKEN in env. Works with any MCP-compatible client.
Tools
All fifteen tools are on both doors. What changes is not which tools exist, but which ones answer: deployments_upload is the one that needs no account, and the other fourteen answer once you have connected one (hosted) or set SHIP_TOKEN (local).
Publishing — no account needed
| Tool | Description |
|---|---|
deployments_upload | Publish files and get a live URL instantly, optionally protected by a password |
Deployments — with an account
| Tool | Description |
|---|---|
deployments_list | List all deployments with their URLs, status, labels, and password protection state. Pages with limit and cursor |
deployments_get | Get deployment details including URL, status, file count, size, labels, and password protection state |
deployments_set | Update the labels on a deployment for organization and filtering |
deployments_delete | Permanently delete a deployment and all its files |
Domains — with an account
| Tool | Description |
|---|---|
domains_set | Connect a custom domain to your site, switch deployments, or update labels |
domains_list | List all domains with their linked deployment and verification status. Pages with limit and cursor |
domains_get | Get domain details including linked deployment, verification status, and labels |
domains_records | Get the DNS records you need to configure at your DNS provider |
domains_dns | The DNS provider recorded for a domain, if known (e.g. Cloudflare, Namecheap) |
domains_share | Get a shareable link so someone else can see the required DNS records |
domains_validate | Check if a domain name is valid and available before connecting it |
domains_verify | Check if DNS is configured correctly after you set up the records |
domains_delete | Permanently disconnect and delete a custom domain |
Account — with an account
| Tool | Description |
|---|---|
whoami | Your email and name, and the account's plan, usage and caps |
Paging long lists
deployments_list and domains_list accept limit and cursor. Each response carries a cursor — pass it back to fetch the next page; null means you are on the last one.
Retrying a deploy safely
deployments_upload accepts an idempotencyKey. If a deploy times out you cannot tell "it never landed" from "it landed and the response was lost", and retrying without a key creates a second site. Send the same key on the retry and the original deployment is returned instead.
Key the attempt, not the try — a run id, a commit sha, or a uuid generated before the first call. A key that changes on every retry does nothing.
Deployments that clean themselves up
deployments_upload accepts a ttl in seconds. The deployment expires when the time is up and the platform reclaims it — handy for previews and throwaway iterations you would otherwise have to remember to delete.
{ "path": "/path/to/dist", "ttl": 3600 }
It needs an account — SHIP_TOKEN here, a connected account on the hosted endpoint: a deploy with no account already expires on the platform's schedule, so a ttl on one is refused rather than ignored. A deployment carrying a ttl cannot be linked to a custom domain — deploy without one when the site needs a domain.
Registry
Published to the MCP Registry as com.shipstatic/mcp. Registry-aware clients see both the hosted endpoint and the local install and pick whichever fits their environment.
Also available
| Surface | Reach it |
|---|---|
| CLI and SDK | npx @shipstatic/ship ./dist |
| VS Code | Search "ShipStatic" in the Marketplace |
| Gemini CLI | gemini extensions install https://github.com/shipstatic/plugin |
| n8n | Search "ShipStatic" in n8n's node panel |
| GitHub Action | shipstatic/action@v3 |
| Agent Skill | One file, for any skills-aware tool |
License
MIT
常见问题
Shipstatic 是什么?
支持 AI agents 部署并管理静态网站,简化发布流程、资源更新与站点运维。
相关 Skills
更新日志
by alirezarezvani
基于 Conventional Commits 自动解析提交记录、判断语义化版本升级并生成规范 changelog,适合在 CI、发版前检查提交格式并批量输出可审计发布说明。
✎ 自动生成和管理更新日志与发布说明,帮团队把版本变更说清楚;聚焦版本化与流程自动化,省时又更规范。
可观测性设计
by alirezarezvani
面向生产系统规划可落地的可观测性体系,串起指标、日志、链路追踪与 SLI/SLO、错误预算、告警和仪表盘设计,适合搭建监控平台与优化故障响应。
✎ 把监控、日志、链路追踪串起来,帮助团队从设计阶段构建可观测性,排障更快、系统演进更稳。
环境密钥管理
by alirezarezvani
统一梳理dev/staging/prod的.env和密钥流程,自动生成.env.example、校验必填变量、扫描Git历史泄漏,并联动Vault、AWS SSM、1Password、Doppler完成轮换。
✎ 统一管理环境变量、密钥与配置,减少泄露和部署混乱,安全治理与团队协作一起做好,DevOps 场景很省心。
相关 MCP Server
kubefwd
编辑精选by txn2
kubefwd 是让 AI 帮你批量转发 Kubernetes 服务到本地的开发神器。
✎ 微服务开发者最头疼的本地调试问题,它一键搞定——自动分配 IP 避免端口冲突,还能用自然语言查询状态。但依赖 AI 工作流,纯命令行爱好者可能觉得不够直接。
Cloudflare
编辑精选by Cloudflare
Cloudflare MCP Server 是让你用自然语言管理 Workers、KV 和 R2 等云资源的工具。
✎ 这个工具解决了开发者频繁切换控制台和文档的痛点,特别适合那些在 Cloudflare 上部署无服务器应用、需要快速调试或管理配置的团队。不过,由于它依赖多个子服务器,初次设置可能有点繁琐,建议先从 Workers Bindings 这类核心功能入手。
Terraform
编辑精选by hashicorp
Terraform MCP Server 是让 AI 助手直接操作 Terraform Registry 和 HCP Terraform 的桥梁。
✎ 如果你经常在 Terraform 里翻文档找模块配置,这个服务器能省不少时间——直接问 Claude 就能生成准确的代码片段。最适合管理多云基础设施的团队,但注意它目前只适合本地使用,别在生产环境里暴露 HTTP 端点。