Nippy provides AI-powered static website hosting, allowing agents to publish HTML files, images, and downloadable assets to live URLs, update existing websites without changing their links, manage site files, and create temporary preview deployments.
ChatGPT is OpenAI's assistant. It can add custom MCP servers as plugins, which lets it call your tools from a conversation.
This guide connects Nippy MCP to ChatGPT through MewCP, so ChatGPT can use Nippy MCP's 21 tools, like publish_site, update_site and start_upload, without your Nippy MCP credentials ever reaching the app.
Nippy MCP signs in through managed OAuth. MewCP stores the token encrypted, refreshes it before it expires and injects it only at call time. Your agent never holds it, so it can never leak it.
More apps
Search for available domain names and check domain availability using GoDaddy's MCP server. Discover domain ideas for businesses, products, and projects through AI assistants
Connect AI agents to databases, data warehouses, cloud storage, and SaaS apps to query, analyze, join, validate, and transform data across multiple sources.
Railway enables AI agents to manage cloud infrastructure by deploying applications, configuring services and environment variables, monitoring deployment logs, managing databases and domains, and controlling projects and environments on Railway.
Grafana Cloud enables AI agents to investigate application and infrastructure health by querying metrics, logs, and traces, exploring dashboards, analyzing alerts, and troubleshooting incidents across monitored systems.
Other clients
Nippy MCP works the same way in every client below. Pick yours for its own guide.
Free to start.
Scope access to the exact Nippy MCP tools and accounts you allow, work and personal side by side. Anything outside that scope is refused at call time, even when the model asks for it.
Each call is logged: what ran, on which account, and whether it worked. Failures come back structured, so the agent knows whether to retry instead of guessing.
Every app sits behind one secure MCP URL, and there is no server for you to deploy or keep running. Add an integration in the dashboard and it is live on the next call, with no config to change and no new credentials to wire up. Tools load only when a task needs them, so your agent stays fast and focused however many apps you connect.
In ChatGPT, open Plugins and choose Add custom MCP.
Name it "mewcp" and paste the server URL.
Click Connect. A sign-in window opens; sign in to MewCP and approve access. No API key needed.
Start a new chat and ask: "List the tools you can use from MewCP." You should see your connected apps.
Publish files as a new PERMANENT website on nippy.site — returns the live URL, no expiry. Use only when the user clearly wants a lasting result; for drafts, iterations, or unclear intent, publish_preview is the right verb (cheap to discard, easy to keep). For a single-page artifact, pass one file named index.html. Small binaries (images, PDFs) go inline with encoding="base64"; anything bigger via start_upload. The free plan hosts 1 live site (25 MB); errors state limits honestly — relay them.
Update files on an existing site in place — the URL stays the same. Only the listed files change; pass deletePaths to remove files. Small binaries go inline with encoding="base64"; bigger ones via start_revision.
Start publishing a NEW site with files of any type and size (binaries included): declares the files and returns presigned PUT URLs to upload the bytes directly. The PUT URLs point at Cloudflare R2 storage (hosts under r2.cloudflarestorage.com) — sandboxed environments must allow egress to that domain. For small text or base64 files, publish_site is simpler. Complete with finalize_upload, or abandon with abort_upload.
Start updating an EXISTING site with files of any type and size: returns presigned PUT URLs for the declared files; deletePaths removes files in the same revision. Complete with finalize_upload, passing the same siteId there.
Finish a start_upload or start_revision batch after every file has been PUT. Verifies each declared file landed at its exact size; failures list what is missing or mismatched, and a rejected batch must be started again.
Abort a pending batch from start_upload or start_revision — nothing is published and the staged bytes are cleaned up. Use when an upload went wrong instead of leaving the batch to time out (15 minutes). Pass previewId for a preview batch.
Combined OVERVIEW of everything published from this Nippy account, in two groups: permanent sites (no expiry) and temporary previews (expiry times shown). Each group is truncated to the first 10, with totals — for a complete list of one kind, use list_permanent_sites or list_previews.
COMPLETE list of the permanent sites on this Nippy account (no expiry) — previews are not included. For a combined overview of sites and previews, use list_sites.
COMPLETE list of the temporary previews on this Nippy account, with expiry times — permanent sites are not included. For a combined overview of sites and previews, use list_sites.
List the files currently on a site (siteId) or a preview (previewId) — pass exactly one.
Read a text file (≤1 MB) from a site (siteId) or a preview (previewId) — pass exactly one. Useful before editing with update_site / update_preview.
Publish files as a TEMPORARY preview at a random <slug>.preview.nippy.site address. It serves for 24 hours; every update_preview resets the clock and keeps the same URL — prefer updating an existing preview over minting a new one, unless the user asks for a fresh address. Use this for drafts, iterations, and unclear intent: when unsure between site and preview, a preview is the cheap mistake — tell the user how to make it permanent, or ask. Free accounts hold up to 5 active previews; paid plans have no cap.
Update files on an existing preview — same URL, and its 24-hour clock resets. Only the listed files change; pass deletePaths to remove files. Prefer this over publishing a new preview when iterating.
Make a preview permanent. Pass name to mint a NEW site from its files (slot-gated), or siteId to replace an EXISTING site’s content wholesale (address and settings unchanged) — exactly one of the two. The preview URL keeps working as a permanent redirect to the site. Works on live previews and on expired ones still in their grace window.
Discard a preview immediately — its URL stops serving and its files are deleted. Previews also expire on their own after 24 hours, so this is only needed to free a cap slot early or retire a shared link.
Check whether a site name (subdomain of nippy.site) is available.
Set the SEO title/description of a site (paid plans).
Password-protect a site (paid plans). Visitors need the password to view it.
Remove a site's password protection.
Allow or disallow search engines indexing a site (opt-out is a paid feature).
Visitor analytics for a site over an ISO date range (paid plans).