{"apiVersion":"v1","directorySlug":"specification-mcp-12e14ba42e","title":"The Website Specification","description":"A platform-agnostic, full specification of the technical features a good website should have. Built in the open under an MIT licence.","pageUrl":"https://www.mcpbundles.com/skills/specification-mcp-12e14ba42e","connectPath":"importable","connectAction":"import_server","catalogListing":false,"bundleSlug":null,"listingKind":"remote_mcp","kind":"provider","transportUrl":"https://mcp.specification.website/mcp","hostedMcpUrl":null,"toolCount":6,"toolInventoryStatus":"observed","refreshedAt":"2026-11-03T13:26:00.516172+00:00","registryName":"website.specification/specification-mcp-12e14ba42e","registryVersion":"2026.11.3","registryEligible":true,"tools":[{"name":"search","description":"Read-only, deterministic full-text search across every spec page. Ranks pages by weighted keyword matches in title, slug, summary, and body, and returns the top results with status, category, canonical URL, Markdown URL, and matching body excerpts. No side effects and no live-web access — it queries an in-memory snapshot bundled at build time, so it returns in well under a millisecond. Use this for keyword/topic lookups when you do NOT already know the slug. Prefer `list_topics` when you want th","inputSchema":{"type":"object","required":["query"],"properties":{"limit":{"type":"integer","default":5,"maximum":25,"minimum":1},"query":{"type":"string","minLength":1}}},"title":"Search the spec","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"search","displayName":"Search the spec"},{"name":"list_topics","description":"Read-only. Return the canonical list of spec topics, optionally narrowed by category and/or status, each with title, status, category, summary, and URL. Returns ALL statuses unless `status` is passed; omitting `limit` returns every matching topic. No side effects; results are deterministic and returned in canonical spec order (by category, then page order). This is the right tool when you want a complete, unranked index (e.g. \"every required SEO topic\"). Use `search` instead for relevance-ranked","inputSchema":{"type":"object","properties":{"limit":{"type":"integer","maximum":200,"minimum":1},"status":{"enum":["required","recommended","optional","avoid"],"type":"string"},"category":{"enum":["foundations","seo","accessibility","security","well-known","agent-readiness","performance","privacy","resilience","i18n"],"type":"string"}}},"title":"List spec topics","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"list_topics","displayName":"List spec topics"},{"name":"get_topic","description":"Read-only. Fetch the full canonical Markdown for a single spec page by its slug: YAML frontmatter (title, status, category, sources, related slugs) plus the rendered body. Use this once you have a slug from `search` or `list_topics`. If you only have keywords, call `search` first.","inputSchema":{"type":"object","required":["slug"],"properties":{"slug":{"type":"string","minLength":1}}},"title":"Get one spec page","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_topic","displayName":"Get one spec page"},{"name":"get_checklist","description":"Read-only. Return a Markdown checklist of spec items grouped by category, optionally filtered by category and/or status. Built for site audits — each item is a tickable line with status and canonical URL. Returns all statuses unless `status` is passed. No side effects; items are grouped by category in canonical order and the output is deterministic. Use `list_topics` instead when you want a flat list rather than grouped checkboxes, or the `audit_url` prompt to drive an actual audit of a target U","inputSchema":{"type":"object","properties":{"status":{"enum":["required","recommended","optional","avoid"],"type":"string"},"category":{"enum":["foundations","seo","accessibility","security","well-known","agent-readiness","performance","privacy","resilience","i18n"],"type":"string"}}},"title":"Get an audit checklist","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_checklist","displayName":"Get an audit checklist"},{"name":"get_categories","description":"Read-only. List the ten top-level spec categories with their summaries and topic counts. Takes no arguments. No side effects; categories are returned in canonical display order. Call this first to discover the valid `category` filter values used by `list_topics`, `get_checklist`, and `search` results.","inputSchema":{"type":"object","properties":{}},"title":"List categories","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_categories","displayName":"List categories"},{"name":"get_changes","description":"Read-only. Return the spec's change history — new pages, status promotions/downgrades, substantive rewrites, and removals — newest first, each resolved to the current topics it affects (slug, title, current status, category, URL). This is the delta tool for a returning agent: pass `since` (the date you last audited a site) to get only what has changed, then re-audit just those topics instead of the whole spec. Omit `since` to get the most recent entries. The spec is hand-curated and typed (added","inputSchema":{"type":"object","properties":{"type":{"enum":["added","changed","status","removed"],"type":"string"},"limit":{"type":"integer","maximum":100,"minimum":1},"since":{"type":"string"}}},"title":"Get spec changes since a date","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_changes","displayName":"Get spec changes since a date"}],"toolSource":"directory_preview","agentAction":"both","installLinks":[{"id":"cursor","label":"Cursor","href":"cursor://anysphere.cursor-deeplink/mcp/install?name=The-Website-Specification&config=eyJ1cmwiOiAiaHR0cHM6Ly9tY3Auc3BlY2lmaWNhdGlvbi53ZWJzaXRlL21jcCJ9"},{"id":"vscode","label":"VS Code","href":"vscode:mcp/install?%7B%22name%22%3A%22The-Website-Specification%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fmcp.specification.website%2Fmcp%22%7D"},{"id":"vscode-insiders","label":"VS Code Insiders","href":"vscode-insiders:mcp/install?%7B%22name%22%3A%22The-Website-Specification%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fmcp.specification.website%2Fmcp%22%7D"},{"id":"claude-web","label":"Claude.ai","href":"https://claude.ai/customize/connectors?modal=add-custom-connector&connectorName=The+Website+Specification&connectorUrl=https%3A%2F%2Fmcp.specification.website%2Fmcp"},{"id":"codex","label":"Codex","copyText":"codex mcp add \"The-Website-Specification\" --url \"https://mcp.specification.website/mcp\""},{"id":"chatgpt","label":"ChatGPT","href":"https://www.mcpbundles.com/docs/integrations/chatgpt"}],"catalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/specification-mcp-12e14ba42e","callUrl":"https://www.mcpbundles.com/api/directory/v1/servers/specification-mcp-12e14ba42e/tools/{tool}","mcpServerUrl":"https://mcp.specification.website/mcp","liveCatalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/specification-mcp-12e14ba42e?live=1"}