ship.page in VS Code: servers, not mcpServers
VS Code has its own MCP config dialect: the root key is servers, every entry carries an explicit type, and secrets go in an inputs array instead of the file. Copy the block below and Copilot's agent mode gains nine deploy tools.
What this wires up
The ship.page MCP server exposes 9 tools: deploy_html, deploy_files, append_files, and drop management (list, claim, restore, delete). Anonymous use needs no key — deploys go live for 7 days on unguessable subdomains.
Tools are available in agent mode. Select Configure Tools in the chat input to toggle individual ship-page tools on or off.
Connect it
.vscode/mcp.json (workspace)
{
"servers": {
"ship-page": {
"type": "http",
"url": "https://ship.page/mcp"
}
}
}The root key is servers — a block copied from Cursor or Claude Desktop parses fine and is silently ignored. For a user-wide setup, run MCP: Open User Configuration from the command palette instead.
With an API key — keep it out of the file
{
"inputs": [
{
"type": "promptString",
"id": "ship-page-key",
"description": "ship.page API key (sp_...)",
"password": true
}
],
"servers": {
"ship-page": {
"type": "http",
"url": "https://ship.page/mcp",
"headers": {
"Authorization": "Bearer ${input:ship-page-key}"
}
}
}
}VS Code prompts for the key once and stores it outside the workspace file — safe to commit the config.
The optional API key
Everything above works with zero account — anonymous deploys go live for 7 days and that's all you need for quick shares. Mint a free sp_ key (sign in at ship.page, dashboard → Keys) and deploys land on your account instead: drops the agent can list, restore and delete, 30-day expiry on the free plan, and named drops — stable, readable URLs that redeploy in place — on paid plans.
Use the inputs pattern above, or inline it directly if the file isn't committed: "headers": { "Authorization": "Bearer sp_your_key" }.
Prompts to try
Prompt
Build a one-page HTML changelog for this release and deploy it to ship.page so I can link it in the announcement.Prompt
Generate the test report, then deploy the folder to ship.page and paste the URL in the PR body.Prompt
Use ship-page to list my drops and tell me which expire soonest.Questions
The config parses but nothing happens — why?
Check the root key: VS Code reads servers, not mcpServers. Then open the chat in agent mode — MCP tools don't fire in ask mode. The server also needs to be started: click it in the MCP list or run MCP: List Servers.
Workspace or user configuration?
Workspace (.vscode/mcp.json) when the team should share it — it commits cleanly if you use the inputs pattern for secrets. User configuration for personal tools across every folder you open.
Do I need an API key?
No — anonymous deploys work and live for 7 days. A free sp_ key ties drops to your account (dashboard, 30-day expiry); paid plans add named drops that redeploy to a stable URL.
Ship something in the next minute
Paste the config, restart your client, and ask it to deploy a page. No account, no key, no wait — the first URL is free.