For AI agents
An assistant that just wrote you a report can put it on a link before the conversation ends. Connect Pagegoat once, then ask.
You approve access in your own browser. No API key is typed into a chat, and no credential reaches the model.
Pagegoat runs an MCP server with OAuth. Paste this URL wherever your assistant takes a custom connector:
Gemini takes it as a custom connector in settings; Codex CLI and Gemini CLI take it as a remote (streamable HTTP) MCP server. In Claude Code it is one command:
claude mcp add --transport http pagegoat https://mcp.pagegoat.com/mcpThe assistant picks the tools. You get a link back in the same conversation.
You: "Write up last quarter's numbers as an HTML page and put it
somewhere I can send to Priya, not public."
Agent: calls get_account_status → 18.2 MB of 25 MB free, can publish
calls create_site → pagegoat.com/sites/q3-numbers
calls set_visibility → { visibility: "password" }
"Published and password-protected. Here's the link, and the
password separately so you can send them apart."The connector exposes create_site, update_site, list_sites, get_site, set_visibility, delete_site and get_account_status, and nothing that touches billing, account settings or your API keys.
If what you are publishing holds anyone else's data, say so in the request. A gated link you widen later is the safer default for generated work. See password-protected sites.
For CI, cron jobs, or a framework that speaks HTTP but not MCP. Exchange an API key for a short-lived JWT, then post the file. A nightly job that renders a dashboard and republishes it to a stable URL is a handful of lines — the API docs carry the full endpoint table, and the OpenAPI spec is authoritative.
Read the machine-readable summary at /llms.txt.
Add Pagegoat's MCP server as a connector in the assistant you already use, then ask it to publish. In Claude.ai or Gemini that means pasting the connector URL into settings; in ChatGPT it means the same paste plus turning on Developer mode, which is what exposes tools that write rather than only read; in Claude Code it is a single claude mcp add command; Codex CLI and Gemini CLI take it as a remote streamable-HTTP server. You approve access once in your browser through OAuth, and from then on the assistant holds tools it can call on its own: create_site publishes an HTML string and returns the link, update_site pushes a revision, set_visibility makes a page public, password-protected or private, and get_account_status reports remaining storage before it generates something large. The result is that a report an assistant just wrote can become a URL inside the same conversation, without you copying a file anywhere.
No, and that is the reason to prefer the connector over the REST API for anything conversational. The MCP connection is authorised with OAuth: you approve it once in your own browser, the token is exchanged between Pagegoat and the client application, and no credential is ever typed into a message or seen by the model. Anything pasted into a chat window is retained in that conversation's history and may be included in later context, which makes a chat the wrong place for a long-lived secret. If a script or CI job needs to publish instead, use an API key read from an environment variable and exchanged for a short-lived JWT. That path is designed for automation, where nothing is transcribing the terminal into a conversation.
The connector requests only the scopes needed to read and write sites, so a connected assistant can list what you have, create a page, replace its contents, change who can see it, delete one, and check your remaining storage. It cannot reach billing, cannot change your account settings, and cannot see your API keys. Publishing still requires a paid plan on your account, so an agent connected to a free account gets a clear refusal naming the missing entitlement rather than silently producing nothing. Pagegoat's own guidance to assistants, published at /llms.txt, asks them to tell you that hosting a page makes it readable by anyone with the link, and to let you decide before publishing anything.
Yes, and it is worth asking it to. A newly created site can be moved to private or password-protected with a single set_visibility call, so a draft an assistant generated can go up on a link only you can open. Because the create call carries a file rather than JSON, a password is set immediately after creation rather than during it: two tool calls, which an agent handles as one instruction. If what you are publishing contains anyone else's data, say so in the request: the sensible default for a generated report is a gated link you widen later, not a public URL you have to remember to lock down after the fact.
Use the REST API, which is the same product reached a different way. Authenticate by exchanging an API key for a short-lived JWT, then POST the file as multipart form data to create a site and PUT to replace its contents. This is the right path for CI, cron jobs, and any agent framework that speaks HTTP but not MCP. A nightly job that renders a dashboard to HTML and republishes it to a stable URL is a handful of lines. The full OpenAPI 3 specification is published and authoritative, so a code-generating assistant can be pointed at it directly rather than working from prose.
Publishing starts at $2.99/month. Connecting takes one paste.
See plans