Skip to content
flypod
Guides

Deploy from a chat app

Add flypod as an MCP connector in Claude, ChatGPT, Cursor or any MCP client and publish a page to a live URL without a terminal.

flypod is also a remote MCP server. Add it to an AI app as a connector and the app can publish what it just made to a live URL, with no terminal and no account.

https://flypod.dev/mcp

Add the connector

AppHow
Claude (web, desktop, mobile)Customize, then Connectors, then Add custom connector. Paste the URL and choose "No sign in".
ChatGPTDeveloper mode, then add an MCP server with the URL and "No Authentication".
Claude Codeclaude mcp add --transport http flypod https://flypod.dev/mcp
CursorIn .cursor/mcp.json: {"mcpServers":{"flypod":{"url":"https://flypod.dev/mcp"}}}
VS CodeIn .vscode/mcp.json: {"servers":{"flypod":{"type":"http","url":"https://flypod.dev/mcp"}}}
Gemini CLIgemini mcp add --transport http flypod https://flypod.dev/mcp
Codex CLIcodex mcp add flypod --url https://flypod.dev/mcp

Then ask for what you want: "publish this page", "put this report online and give me the link".

Tools

ToolWhat it doesNeeds sign-in
deploy_sitePublishes files as a new site and returns its URL.No
update_sitePublishes a new version of a site at the same URL.No
rollback_siteMakes an earlier version live again.No
get_siteReturns a site's URL, name, expiry, and version history.No
compare_versionsLists the files added, removed and modified between two versions.No
duplicate_siteCopies a temporary site to a new URL.No
configure_timelineShows or hides the History chip on a site's pages, and returns the link that compares two versions.No
list_sitesLists the sites on your account.Yes
keep_siteAttaches a temporary site to your account so it no longer expires.Yes
rename_siteSets a site's display name.Yes
delete_sitePermanently deletes a site.Yes
configure_commentsTurns comments on or off for a site and sets who may comment.Yes
list_commentsLists comment threads, including the moderation queue.No
get_comment_threadReads one thread with its replies.No
post_commentStarts a thread attached to a passage on a page.Yes
reply_to_commentReplies to a thread.Yes
update_comment_threadResolves, reopens, approves or rejects a thread.Yes
delete_comment_threadDeletes a thread.Yes

That is everything the CLI and the account page can do to a site. Two things are left out on purpose, because a tool call is the wrong place for them: deleting your account and changing its password.

The tools marked "No" work on temporary sites with the site_id and manage_token that deploy_site returned. The ones marked "Yes" act as your flypod account, so the connector has to be signed in.

deploy_site takes files, a map from path to text content, and optionally binary_files, a map from path to base64 for small images:

{
  "files": {
    "index.html": "<!doctype html><title>Report</title><h1>Q3 report</h1>",
    "css/site.css": "body { font-family: system-ui }"
  }
}

It returns the URL plus a site_id and a manage_token. The other site tools need both while the site is temporary, so the app keeps them for the conversation. A site made in one conversation cannot be changed from another unless you carry those two values over.

What to expect

  • Temporary by default. A site made this way is public and is removed after 14 days, like any deploy without an account. See Keep a site.
  • Limits. 200 files and 4 MB per deploy through the connector. The model writes every byte as tool input, so one self-contained HTML file is the most reliable thing to publish.
  • The same rules as the CLI. Deploys through the connector go through the same rate limit and content screening as any other.
  • Static files only. No build step and no server code.

Keep a site

A site published from a chat is temporary. The result of deploy_site includes a keep_url, and the app will usually show it to you:

https://flypod.dev/keep#a3f1c2d4e5b60789.…

Open it, sign in, and press Keep this site. The expiry is removed, the address stays the same, and the site appears on your account page. No terminal is involved.

The part after # is what proves the site is yours to keep, so treat the link like a password until you have used it. Browsers never send that part to a server.

Make every deploy yours, with a token

To make deploys through the connector belong to your account and never expire, configure the connector to send your flypod session token (the same login session the CLI uses as FLYPOD_TOKEN; there are no separate API keys):

claude mcp add --transport http flypod https://flypod.dev/mcp \
  --header "Authorization: Bearer $FLYPOD_TOKEN"

This works in clients that let you set a request header. Apps that only offer "no sign in" create temporary sites, and each one can still be kept with its keep link.

Signed in, a site needs only its site_id: the account is what authorizes changes, and a site you keep with keep_site stops accepting its old manage_token. Signed-in deploys are owned from the start, so their result has no keep_url. The connector only ever forwards the Authorization header you configure, never browser cookies, so being signed in to flypod.dev in a browser does not sign the connector in.

Comments from a chat

With the connector signed in as a site's owner, an AI app can run the review loop on a deployed page:

  1. configure_comments turns comments on, in anonymous, passcode (with a passcode) or approved mode.
  2. Reviewers comment on the page itself.
  3. list_comments returns each thread with the passage it is attached to. With status: "pending" it returns the moderation queue.
  4. The app fixes what was asked, calls update_site, replies with reply_to_comment, and closes the thread with update_comment_thread (action: "resolve"). In approved mode, the same tool's approve and reject actions decide the queue.

Next steps

On this page