MCP docs

Create Web Page MCP

Create, edit, preview, publish, and manage hosted digital cards, contact pages, link-in-bio pages, and mini websites from ChatGPT, Claude, or any MCP-capable client.

Connect

Add Create Web Page as a remote MCP server. Leave authentication off for first-page creation and publishing; OAuth is only needed to claim or manage saved pages.

Quickest way

Paste this prompt into your AI client (Claude Code, Cursor, ChatGPT…) and it will connect the server for you.

Add a remote MCP server named "create-web-page" at https://create-web-page.com/mcp using streamable HTTP transport with no authentication. Then call tools/list and tell me what it can do — I want to create a shareable web page.

Or configure your client directly

Run this in your terminal:

claude mcp add --transport http create-web-page https://create-web-page.com/mcp

The server is also listed in the official MCP Registry.

Try It

Start with a request that gives the agent enough real business details to create a first shareable page:

Create a shareable contact page for my hamburger restaurant Burger House. We take WhatsApp orders at +1 555 010 0199. Include burgers, fries, drinks, combos, and a QR-friendly public link. Do not publish it yet.

After you review the preview, ask the agent to publish it. Ask to claim or save the page only if you want an OAuth account flow.

Recommended Flow

  1. Call page.onboarding.start for vague first-page requests.
  2. Use source.import only for normal public websites or public link-in-bio pages.
  3. Call page.onboarding.update as the user chooses category, layout, palette, primary action, and page content.
  4. Call page.create_from_brief when the checklist is ready.
  5. Show the returned preview URL and next-step hints. Do not publish in the same turn unless the user's latest message explicitly asks to publish.
  6. Call page.publish after explicit confirmation. Use page.claim only when the user wants to keep managing the page.

Anonymous demo pages include an edit token for future mutations and expire unless claimed. Edits to an already-published page update the draft first; call page.publish again only after the user asks to update the live page.

Auth Model

  • Tool discovery, guided setup, demo creation, edits, preview, and publish are no-auth.
  • Claiming a demo page and managing claimed pages use OAuth 2.1 with PKCE.
  • OAuth scopes are account:read, pages:read, and pages:write.
  • Public page copy must come from explicit user input or public-source imports, not invented business facts.

Tool Reference

Plan the page

account.whoami
Check whether the client is using an anonymous demo session or an authenticated account.
page.onboarding.start
Start the guided setup. Returns categories, layouts, palettes, primary actions, and a quality checklist.
page.onboarding.update
Validate the user's setup choices and return the next prompt or ready-to-create hints.
page.intake.start
Run a shorter intake for simple requests that only need name, source, goal, and locale.
source.import
Import public HTTP/HTTPS pages into a structured brief. It does not bypass login, CAPTCHA, or paywalls.
layouts.list
List supported page layouts.
presets.list
List available visual presets.

Create and edit

page.create_from_brief
Create the recommended draft from structured final-audience copy, action data, layout, and palette.
page.create
Create a quick starter draft from a title and preset.
page.get
Read the latest draft content and stable block IDs.
page.header.update
Update display name, bio, avatar, verification, and QR-related header fields.
page.theme.update
Patch colors, fonts, density, button style, and other theme fields.
page.meta.update
Update title, slug, SEO title, and SEO description.
block.add
Append one strict content block.
block.update
Patch an existing block by stable block ID.
block.delete
Remove one block.
block.reorder
Move a block to a new position.

Preview, publish, and keep

page.preview
Return the preview URL for a draft.
page.publish
Publish the latest draft only after the user explicitly asks to go live.
page.unpublish
Take a published page offline while keeping the draft and history.
page.claim
Move an anonymous demo page into a permanent account. This is an OAuth tool.
account.pages.list
List claimed pages for the authenticated account.
account.page.manage
Read a claimed page without requiring an edit token.

Media when enabled

media.upload
Upload an image from a public image URL or base64 payload.
media.upload_link.create
Create an expiring upload page for local image files.
media.attach
Attach an uploaded image as an avatar, block image, gallery item, or background.
media.delete
Soft-delete an image and remove references from page content.

Block Types

TypePurpose
linkButton or link with a label and URL.
social_rowRow of social/profile icons.
whatsappWhatsApp chat action.
phone_callPhone call action.
email_contactEmail contact action.
imageSingle image section.
galleryGrid or carousel of images.
video_embedYouTube, Vimeo, or MP4 embed.
textHeading, body text, and short lists.
map_embedPublic business address or map data.
product_cardProduct or offer card with optional buy link.
lead_formContact, newsletter, or booking-interest form.
reviewsManual review/testimonial list.

Protocol Details

  • MCP endpoint: https://create-web-page.com/mcp
  • Transport: HTTP JSON-RPC over POST.
  • Supported methods: initialize, ping, tools/list, tools/call, resources/list, resources/read, and prompts/list.
  • OAuth metadata: /.well-known/oauth-authorization-server and /.well-known/oauth-protected-resource.
  • Dynamic Client Registration: /oauth/register.