Wordy Page MCP
An official MCP server for Wordy Page that allows AI agents to manage web pages and sites. It supports publishing HTML/CSS content, searching a photo library, checking slugs, retrieving page data, and listing pages, all authenticated via personal keys or OAuth.
Endpoint and access
No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.
https://wordy.page/mcpWhat its tools do
5 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.
Read-only (4)
Can change data (1)
Checks and signals
Each line is separate evidence, not a trust score.
- Passed Endpoint answered the live check ·
- Passed Official MCP Registry namespace is tied to wordy.page ·
- Passed Endpoint is on the registry namespace domain ·
- Availability 1 of 1 checks passed in 30 days
What you can do with it
- Publish static web pages with custom HTML and CSS
- Search for photos in the integrated Unsplash library
- Check if a URL slug is available
- Retrieve or list existing pages on an account
Source and maintenance
Protocol and capabilities
- Server
- wordy-page 1.2.0
- MCP protocol negotiated in check
- 2025-06-18
- Tools
- 5 advertised
- Resources
- 3 advertised
- Resource templates
- 0 advertised
- Prompts
- 1 advertised
{
"tools": {
"listChanged": false
},
"prompts": {
"listChanged": false
},
"resources": {
"subscribe": false,
"listChanged": false
}
}Server-provided instructions
Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.
Tools
5 advertised
check_slug — Check Web Address Availability
Check whether a Wordy Page web address slug (https://wordy.page/<slug>/) is valid and available, and return a normalized slug suggestion.
{
"type": "object",
"required": [
"slug"
],
"properties": {
"slug": {
"type": "string",
"description": "Desired web address slug (3-40 lowercase letters, numbers, or single hyphens) or a site name to normalize into a slug."
}
}
}{
"title": "Check Web Address Availability",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_page — Get Published Site Content & Metadata
Read the structured JSON metadata and content (site_name, theme, home page, sections/sub-pages with their header photos, updated timestamp, and live URLs) of an existing published site on wordy.page.
{
"type": "object",
"required": [
"slug"
],
"properties": {
"slug": {
"type": "string",
"description": "The slug of the published site on wordy.page (e.g., \"sample\")."
}
}
}{
"title": "Get Published Site Content & Metadata",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}list_pages — List Owned or Showcase Sites
List sites owned by the authenticated session (when session_token or `st` or Authorization/X-PQ-Session is provided), or list official public sample sites on wordy.page.
{
"type": "object",
"properties": {
"st": {
"type": "string",
"description": "Alias for `session_token`."
},
"session_token": {
"type": "string",
"description": "Optional session token (`st`) returned after email link verification to list your own pages."
}
}
}{
"title": "List Owned or Showcase Sites",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}search_photos — Search Curated Unsplash Photos
Search Unsplash photos via Wordy Page and optionally register a chosen photo ID so you can use it as a page header image (`photo` / `sections[].photo` in `create_or_update_page`; one image per page).
{
"type": "object",
"required": [
"query"
],
"properties": {
"page": {
"type": "integer",
"default": 1,
"description": "Page number (1 to 5, default 1)."
},
"query": {
"type": "string",
"description": "Search keywords (e.g., \"coastal sunset\", \"coffee shop\", \"modern architecture\")."
},
"pick_first": {
"type": "boolean",
"default": true,
"description": "If true (default), automatically registers the top photo result with Unsplash so its id is immediately ready to use as a page `photo`."
}
}
}{
"title": "Search Curated Unsplash Photos",
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}create_or_update_page — Create or Update a Multi-Page Website
Create a new single-page or multi-page website or update an existing site on wordy.page. Supports up to 10 pages per site, simple Light or Dark mode (`theme`: "light" or "dark"), one Unsplash header image per page (`photo` on the home page and on each section, which also renders a 50%-opacity blurred full-viewport background), plain-text formatting limited to ALL CAPS blue light-bold highlights (do NOT use **bold** Markdown asterisks) and space/tab indentation (blank lines stay blank, no <hr> dividers), safe plain-text HTML/code escaping, automatic URL/email linking, and an optional contact form on any page (`cf: true` on the home page or a section; Email + Message only). If authenticated with a matching session_token, publishes immediately (`status: "live"`); otherwise emails a one-tap verification/publish link to `owner_email` (`status: "Verify email"`).
{
"type": "object",
"required": [
"slug",
"owner_email",
"title",
"heading",
"description"
],
"properties": {
"slug": {
"type": "string",
"description": "Target web address slug (3-40 chars, lowercase letters/digits/hyphens), published at https://wordy.page/<slug>/."
},
"photo": {
"type": "string",
"description": "Optional single header image for the home page: an Unsplash photo id from `search_photos`. Renders below the page name and above the text, with photographer credit. One image per page."
},
"theme": {
"enum": [
"light",
"dark"
],
"type": "string",
"default": "light",
"description": "Visual theme (\"light\" or \"dark\")."
},
"title": {
"type": "string",
"description": "Site name displayed in the sticky top header bar (max 36 characters; stacks up to 2 lines on mobile without changing header height, and clicks back to the first home page)."
},
"heading": {
"type": "string",
"description": "Home page heading (H1, max 80 characters)."
},
"sections": {
"type": "array",
"items": {
"type": "object",
"required": [
"heading",
"text"
],
"properties": {
"cf": {
"type": "boolean",
"default": false,
"description": "Include a contact form (Email + Message only) at the bottom of this page; messages are emailed to the owner."
},
"text": {
"type": "string",
"description": "Sub-page body text (max 20,000 chars; same plain-text rules as `description`: only indentation and ALL CAPS formatting)."
},
"photo": {
"type": "string",
"description": "Optional single header image for this page (Unsplash photo id from `search_photos`)."
},
"heading": {
"type": "string",
"description": "Sub-page name (max 80 chars)."
}
}
},
"maxItems": 9,
"description": "Optional additional sub-pages (up to 9 extra pages, home + 9 = 10 pages total, each given its own URL `/<slug>/<page-slug>/` and navigation menu item)."
},
"from_slug": {
"type": "string",
"description": "Optional old slug if renaming/moving an existing site you own to a new slug."
},
"description": {
"type": "string",
"description": "Home page body text (max 20,000 chars). Formatting is plain text with ONLY two features: indentation (leading spaces/tabs are preserved) and ALL CAPS (contiguous sequences of 2+ uppercase letters render blue and lightly bold; do NOT use **bold** asterisks). Each \\n is a line break and blank lines (\\n\\n) simply stay blank lines (no <hr> dividers). Plain URLs, emails and [anchor](https://...) links are auto-linked; HTML is escaped. Images are NOT placed in text: give each page one header image with its `photo` field."
},
"login_token": {
"type": "string",
"description": "Optional 32-character one-time token from an emailed `https://wordy.page/pages?login=<token>` link to redeem and authenticate right away."
},
"owner_email": {
"type": "string",
"description": "Owner email address (receives the one-tap verification link and any contact form messages; never displayed publicly)."
},
"session_token": {
"type": "string",
"description": "Optional 30-day session token (`st`) if already authenticated for `owner_email`."
}
}
}{
"title": "Create or Update a Multi-Page Website",
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": true
}Prompts
1 advertised
build-website — Build a Multi-Page Website on Wordy Page
Guided workflow for designing and publishing a mobile-friendly multi-page website with one Unsplash header image per page, and ALL CAPS blue callouts on wordy.page.
- topic
- What the website or event is about. (required)
- slug
- Desired web address slug at https://wordy.page/<slug>/.
- owner_email
- Owner email address to verify and own the site. (required)
Resources
3 advertised
Wordy Page AI Agent Guide (llms.txt)
Concise overview, formatting rules, and quickstart for AI agents publishing on Wordy Page.
wordy://docs/llmsWordy Page Full API & Formatting Reference (llms-full.txt)
Complete API reference, multi-page payload examples, and automation recipes.
wordy://docs/llms-fullWordy Page OpenAPI 3.1 Specification (openapi.json)
OpenAPI 3.1 schema for Wordy Page HTTP endpoints.
wordy://docs/openapi90-day uptime
A lightweight connection check about every six hours, sampled on hosts with many listings. It shows the server answered, not that its tools work.
- 2026-11-02: 1 of 1 checks answered
30-day availability
Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.
- Successful checks
- 1 of 1 (100%)
- Average latency
- 567 ms
- 95th percentile latency
- 567 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 567 ms · metadata changed · 5 tool(s), 3 resource(s), 0 resource template(s), 1 prompt(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http wordy-mcp https://wordy.page/mcpCodex
codex mcp add wordy-mcp --url https://wordy.page/mcpCursor
{
"mcpServers": {
"wordy-mcp": {
"url": "https://wordy.page/mcp"
}
}
}Cline
{
"mcpServers": {
"wordy-mcp": {
"type": "streamableHttp",
"url": "https://wordy.page/mcp",
"disabled": false
}
}
}VS Code
{
"servers": {
"wordy-mcp": {
"type": "http",
"url": "https://wordy.page/mcp"
}
}
}Gemini CLI
gemini mcp add --transport http wordy-mcp https://wordy.page/mcpClaude Desktop
{
"mcpServers": {
"wordy-mcp": {
"url": "https://wordy.page/mcp"
}
}
}Windsurf
{
"mcpServers": {
"wordy-mcp": {
"serverUrl": "https://wordy.page/mcp"
}
}
}Let your agent find its tools
Find servers like Wordy Page MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.
Other productivity and knowledge servers
Do you run Wordy Page MCP?
Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.