Loading
Most hosting tools stop at “copy this curl into your chat.” Pagenta ships a remote MCP server: any agent that speaks the protocol — Claude.ai, Claude Desktop, Claude Code, Cursor, Codex, Goose — can deploy pages, manage spaces, gate with passwords, and read back analytics in one round trip. No CLI, no copy-paste, no human in the loop.
One server URL, every client
https://pagenta.ai/api/mcp
OAuth 2.1 + PKCE + Dynamic Client Registration. Each connection is scoped to whichever Pagenta account you approve at sign-in. Revoke via Settings → Connected apps.
★ Claude.ai (web) — two clicks
Button opens the connector dialog directly. Paste the URL, approve the OAuth prompt, done.
Paste this in the URL field
https://pagenta.ai/api/mcp
★ ChatGPT — flip developer mode first
Open ChatGPT → Settings → Apps. Turn on Developer mode (ChatGPT shows an “elevated risk” warning — that’s normal for custom apps; only flip it on for ones you trust). Click Create app, name it “Pagenta”, paste the URL below, approve the OAuth sign-in. In any new chat, click + → More and toggle Pagenta on for that conversation.
Heads up: custom MCP connectors require Developer mode in Settings → Apps. Works on Plus, Pro, Business, Enterprise, and Edu — Free tier doesn't expose the toggle.
Paste this in the URL field
https://pagenta.ai/api/mcp
All four below use the same mcp-remote bridge to handle the OAuth dance with a remote HTTP server. Copy, save, restart your client.
Settings (⌘,) → Developer → Edit Config → paste → save → restart.
{
"mcpServers": {
"pagenta": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://pagenta.ai/api/mcp"]
}
}
}One command. OAuth opens in your browser on first call.
claude mcp add pagenta https://pagenta.ai/api/mcp --transport http
~/.cursor/mcp.json — same schema as Claude Desktop.
{
"mcpServers": {
"pagenta": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://pagenta.ai/api/mcp"]
}
}
}Anything that speaks the OAuth-protected HTTP MCP spec works with the same URL. No client-specific code on our end.
https://pagenta.ai/api/mcp
Skill · for Claude Code
The MCP gives your agent the tools. The skill teaches it when to reach for which tool, the page-side / cron-side gotchas that silently fail otherwise, and the stable runtime contract. Drop into ~/.claude/skills/pagenta and Claude Code auto-loads it when the task matches.
Install
mkdir -p ~/.claude/skills git clone https://github.com/Thormatt/pagecraft.git /tmp/pagenta-src \ && cp -r /tmp/pagenta-src/skills/pagenta ~/.claude/skills/pagenta \ && rm -rf /tmp/pagenta-src
Other agents (Desktop, Cursor, Codex, Goose) don't have a skill system yet — either paste the SKILL.md into your agent's rules slot, or rely on the MCP-side pagenta_guide tool which carries the same primer.
All tools scoped to the user who authorized the connector.
deploy_page
Create or update a page. Same slug = update in place, same URL.
list_pages · get_page · update_page
Read the user's pages, inspect HTML + metadata, edit in place.
set_password · set_expiration
Gate a page behind a password or auto-expire after a window.
get_page_analytics · get_page_optimization_snapshot
Views, visits, goal completions, CTA/form events, screens, targets, and A/B experiment results for daily optimization loops.
create_client · list_clients · get_client
Spaces: group pages for a single audience under one URL + password.
set_secret · list_secrets · remove_secret
Store encrypted API keys scoped to a page or space. Exposed to cron jobs server-side.
set_cron · get_cron · delete_cron
Schedule a refresh.js that writes to shared state. Pair with set_secret for live API data — no client-side keys.
pagenta_guide
A short primer the agent reads first so it knows the plan limits, slug rules, and idioms.
Try saying
“Take this HTML and deploy it to Pagenta as /q1-review, attach to the acme space, and set a password of spring-2026.”
“Deploy a Reykjavík ↔ New Haven weather + FX dashboard as /rey-newhaven, then set a 24h cron that pulls from Open-Meteo and Frankfurter and writes the data to shared state.”
The agent calls deploy_page, then set_cron, and reports back the live URL. No terminal, no CLI, no keys in client code.
From the terminal — for humans and CI
Same product, same account. The CLI is what you reach for in terminals, GitHub Actions, and one-off scripts. Single binary, macOS / Linux, about 200 KB.
01 · Install
curl -fsSL https://pagenta.ai/install.sh | bash
02 · Get a token
Generate a Personal Access Token at pagenta.ai/settings/tokens. Add it to your shell rc so it survives new terminals.
export PAGENTA_API_TOKEN="pgnt_…"
03 · Deploy
pagenta deploy ./my-page.html --slug my-page
→ live at https://pagenta.app/p/<you>/my-page
Common flags
pagenta deploy ./report.html --slug q1 --space acme-corp
pagenta deploy ./report.html --slug q1 --password 'spring-2026'
pagenta deploy ./preview.html --slug preview --expires-in 7d
pagenta cron set --page stocks --every 1h ./refresh.js