Guides
Deploy to a live URL — from your agent or your browser
ship.page speaks MCP at one endpoint — nine tools, no account required. Pick your client below for the exact config block, verified against its current docs, or follow a manual workflow further down.
- ChatGPTPublish a website straight from ChatGPTAdd the plugin once and ChatGPT publishes the pages it writes, with your photos, to a live link you can update from the chat.The setup
- Claude CodeDeploy HTML straight from Claude CodeOne claude mcp add command and Claude Code can deploy pages, reports and previews to live URLs mid-task.The setup
- Cursorship.page in Cursor: one mcp.json entryOne url entry in mcp.json and Cursor's agent can publish pages, reports and previews to live URLs.The setup
- Claude Desktopship.page in Claude DesktopCustom connector on paid plans, mcp-remote bridge on any plan — either way Claude Desktop gets live deploy tools.The setup
- Windsurfship.page in Windsurf: mind the serverUrlOne serverUrl entry in mcp_config.json and Cascade can deploy pages and reports to live URLs mid-task.The setup
- VS Code Copilotship.page in VS Code: servers, not mcpServersOne http entry in .vscode/mcp.json and Copilot's agent mode can deploy pages and reports to live URLs.The setup
- Any MCP clientship.page from any MCP clientOne streamable-HTTP endpoint, nine tools. Direct connection where supported, mcp-remote everywhere else.The setup
Workflow guides
Manual flows, same one-minute deploy
- AI outputYour AI built the page — now send it as a linkThree paths from AI-generated HTML to a link anyone can open: upload it, curl it, or let the agent deploy it.The setup
- PasswordsLock your preview link behind a passwordSet, rotate, and strip a shared password on a preview link — plus a blunt look at what a password actually does and doesn't protect.The setup
- TroubleshootingPreview link broken? It's almost always the paths.Blank page, missing styles, 404 assets — the four culprits behind almost every broken upload, plus the exact fix for each.The setup
Tailwind guides
Move an existing page to Tailwind
- BootstrapConvert a Bootstrap page to Tailwind CSSPaste a Bootstrap page URL and get the same page back with Tailwind classes, breakpoints and hover states included.The setup
- HTML & CSSConvert HTML and CSS to Tailwind classesA live page or files on your laptop: get the same HTML back with Tailwind classes instead of a stylesheet.The setup
- CSSConvert CSS to Tailwind: what each rule turns intoHow stylesheet rules, breakpoints, and states map to Tailwind utilities, and how to convert a live page by URL.The setup
Tailwind to CSS guides
Turn a Tailwind page back into plain CSS
- ClassesConvert Tailwind to CSS: what each class turns intoConvert a public Tailwind page into a single HTML file with plain CSS and clean, readable class names.The setup
- Vanilla CSSRemove Tailwind and convert to vanilla CSSConvert Tailwind pages to plain HTML and vanilla CSS, then strip Tailwind from your project build.The setup
How-to articles
Put what you made online, by topic
Built with AI
Browser games
- Publish your Twine story online as a playable link
- How to share a Bitsy game as a playable link
- Put your PICO-8 game online as a playable link
- Host your Phaser game build online for free
- How to host a GDevelop HTML5 export online
- Share a p5.js sketch as a full-page link
- Host a three.js project online for free
- Host a Unity WebGL build for free in seconds
- Where to host an HTML5 browser game for free
- Share your HTML or JavaScript game as a live link
Personal pages
- How to make a free personal website in minutes
- Free portfolio website hosting compared
- Put a photography portfolio online in seconds
- Publish a free art portfolio website in seconds
- Share an architecture portfolio website and PDF on one link
- Host a UX or graphic design portfolio with a password
- How to make a free resume website with a short link
- Build a custom link-in-bio page from HTML
- Make a free digital business card with a QR code
- Turn HTML code for love into a link you can send
- Make a countdown website you can share as a link
- Share a travel itinerary as a free live link
- Make a quiz website and share it as a link
- Submit your HTML and CSS school project as a live link
- Publish a free class web page in seconds
Small business
Docs, reports and slides
- Share an R Markdown or Quarto HTML report as a link
- Share generated Javadoc as a live link in seconds
- Deploy an Eleventy (_site) folder to a live link
- Host Sphinx documentation and private builds in seconds
- Free documentation hosting compared for static docs
- Share an HTML slide deck as a live link in seconds
- Share your VS Code Live Server page with anyone
Web hosting basics
- How to make a website for free: three routes compared
- How to host a website for free in seconds
- How to publish a website from your files
- Cheapest website hosting in 2026: free hosts and a $4 plan
- Neocities alternatives for a free personal site
- Free HTML templates: licenses and how to publish one
- How to make a simple web page in HTML and put it online
- Surge.sh alternatives for free static hosting, compared
- Vercel alternatives for hosting a static site for free
- Free Netlify alternatives with no credit limits
- GitHub Pages alternatives for free static hosting
- Drag and drop website hosting for folders and HTML
- CodePen alternatives for HTML, CSS and JS
- HTML pastebin: paste HTML and get a working page
- HTML hosting API to publish from code or an AI agent
- Free web hosting with no ads on your site
- Free website hosting without buying a domain
Rather skip MCP and call the API directly? One curl does the same thing — see ship.page for AI agents and the OpenAPI spec.