Skip to main content
Glama

DS4AI MCP server

The aggregate endpoint of DS4AI, the Design Suite for AI, from Polymathie-Studio. It serves the suite as callable MCP tools, so a person working with an AI reaches the conformance auditor and the generators through their agent, without calling a function. Unlike the @proof-of-coord standards servers, which point at canonical source, this server runs the primitives, and because it is a process rather than a browser it can fetch a URL and audit the served HTML.

Use it

This server is hosted as a public HTTP endpoint, and is published to npm and JSR as @polymathie/ds4ai. Connect the hosted server with nothing to install:

{
  "mcpServers": {
    "ds4ai": { "type": "http", "url": "https://ds4ai-production.up.railway.app/mcp" }
  }
}

Or run it locally, no clone:

npx @polymathie/ds4ai                 # from npm
deno run -A jsr:@polymathie/ds4ai     # from JSR (Deno)

Add it to an MCP client (Claude Code, Cursor, and the rest) either as the hosted HTTP server above, or as a stdio server whose command is npx @polymathie/ds4ai. The four MCP servers are listed at integritysuite.org/built, and the full reference for every connection method is Using the MCP servers.

Related MCP server: aeo-graph-engine

Tools

  • audit_surface { url? , html? }: audit a shipped surface across all six invisible-correctness axes with the MISSING conformance auditor. Give a URL and it fetches and audits the served HTML. Declares the axes a static check cannot judge rather than reporting them clean.

  • generate_head, generate_jsonld, generate_sitemap, generate_robots, audit_findability (BEACON): findability head tags, JSON-LD, sitemap, robots.txt, and the depth findability audit.

  • generate_image_markup, generate_cache_config, audit_delivery (FLEET): responsive image and picture markup, cache-header config per host, and the depth delivery audit.

  • solve_palette, check_contrast (TEMPER): solve a full palette to contrast floors for a mode, and check the WCAG contrast between two colors.

Every result carries a provenance stamp declaring the server and bundled primitive versions.

Resources

  • ds4ai://manifest: the DS4AI family manifest (read generically, so it tracks the manifest as its data source).

  • ds4ai://agents: the agent-instruction (AGENTS.md), so a connected agent gets the compose-the-suite instruction for free.

  • ds4ai://standard: the MISSING standard.

How it is built

TypeScript on the MCP SDK with zod schemas, provenance-stamped, following the @proof-of-coord pattern. The zero-dependency primitives (TEMPER, BEACON, FLEET, and the MISSING conformance auditor) are bundled in, so the server is self-contained, and each tool stamps the primitive version it bundled. Published to npm and JSR under @polymathie.

Security

The URL-auditing path (audit_surface fetching a live URL) is built to a defensive threat model and is adversarially tested and hardened before release against server-side request forgery, denial-of-service, and resource-exhaustion attacks. Fetched content is treated as untrusted input: it is parsed, never executed, and the fetcher connects only to validated public addresses. The implementation is open for review under Apache-2.0.

Part of DS4AI

DS4AI, the Design Suite for AI, from Polymathie-Studio, joins PT4AI and PC4AI in the family of corpora served to an AI. The instruments and the MISSING standard live at Polymathie-Studio.

License

Apache-2.0 for the server. Copyright 2026 Regis Lloyd Chapman. See LICENSE and NOTICE.

The bundled resources keep their own licenses, from the Polymathie-Studio/missing repository: resources/standard.md (the MISSING standard) is dual-licensed CC-BY-4.0; the manifest and AGENTS.md are Apache-2.0. The vendored primitive source under src/vendor/ is Apache-2.0, from its instrument repository.

Available Tools

11 tools
audit_deliveryB

Audit a page HTML string for delivery in depth (FLEET): unsized images, a lazy-loaded first image, render-blocking head scripts, and inline @font-face without font-display.

Inputs: html (required).

audit_findabilityA

Audit a page HTML string for findability in depth (BEACON): head essentials, Open Graph, Twitter, JSON-LD validity, and the canonical-versus-og:url agreement invariant.

Inputs: html (required).

audit_surfaceA

Audit a shipped web surface across all six invisible-correctness axes (perceivable, operable, off-happy-path, key-private, findable, fast-and-stable) with the MISSING conformance auditor. Pass a url to fetch and audit the served HTML, or pass html directly. Returns a per-axis report that declares the axes a static check cannot judge rather than reporting them clean.

Inputs: url, html.

check_contrastA

Check the WCAG 2.1 contrast ratio between two hex colors and whether it clears the AA thresholds (4.5:1 for normal text, 3:1 for large text or non-text).

Inputs: background (required), foreground (required).

generate_cache_configA

Generate cache-header config for a named host (netlify, vercel, nginx): revalidate HTML, cache content-hashed assets for a year as immutable.

Inputs: target (required), options.

generate_headA

Generate the findability head tags (title, description, canonical, Open Graph, Twitter card) for a page from a flat metadata object, as an SSR/build-time string. Also returns the html lang attribute.

Inputs: metadata (required).

generate_image_markupA

Generate responsive or markup with reserved dimensions and correct scheduling. Mark the LCP image priority (eager, high fetchpriority); mark offscreen images lazy. Pass avif/webp for format negotiation to get a .

Inputs: image (required).

generate_jsonldA

Serialize one or several schema.org objects into a JSON-LD script tag, with the sequence escaped. Pass a schema object or an array of them.

Inputs: schema (required).

generate_robotsA

Serialize a robots.txt for crawl control. Pass allow/disallow (string or array) and one or more sitemap URLs. Index control belongs in the head robots directive, not here.

Inputs: options (required).

generate_sitemapA

Serialize a sitemap.xml from a list of canonical URLs (strings, or objects with loc, lastmod, changefreq, priority).

Inputs: urls (required).

solve_paletteA

Solve a full TEMPER palette to verified contrast floors for a mode. mode is light, soft-light, soft-dark, or dark; notch is 0 (brighter), 1 (middle), or 2 (deeper); family is a color family key (for example iron, oxblood, moss); vision constrains for a color-vision deficiency (default, rg, by, mono). Returns the semantic token set.

Inputs: mode (required), notch, family, vision.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.9/5.0

    Scored across 11 tools

    Disambiguation4/5

    Each tool names a distinct artifact or audit focus (head, JSON-LD, sitemap, robots, images, cache, palette, contrast). The only mild overlap is audit_surface versus audit_findability/audit_delivery, but the descriptions clearly differentiate a broad holistic audit from in-depth single-axis audits.

    Naming Consistency5/5

    Tool names consistently follow a verb_noun pattern: generate_* for output serializers, audit_* for auditors, plus solve_palette and check_contrast. There is no mixed casing or vague verb style, making the naming pattern predictable and readable.

    Tool Count5/5

    11 tools is well within the ideal scope for a web-correctness toolkit. Each generator and auditor addresses a distinct deliverable or audit pass, and none feels redundant or out of place.

    Completeness4/5

    The set covers core generation (head, structured data, sitemap, robots, images, cache) and auditing (surface, findability, delivery) plus color accessibility. The main gap is that index/noindex control is mentioned as living in the head, but no tool directly emits that meta robots directive.

    Maintenance

    ActivitySlowing
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      A
      quality
      C
      maintenance
      Enables AI agents to check whether a public website is crawlable, understandable, and ready for AI search workflows through local-only audits of robots.txt, sitemaps, metadata, and llms.txt.
      3
      73 npm
      2
      MIT
    • A
      license
      Not graded
      quality
      B
      maintenance
      Enables AI agents to crawl live websites, audit AEO readiness, generate Schema.org @graph JSON-LD, llms.txt, ai.txt, and robots.txt, inject structured data into HTML, validate optimizations, and retrieve framework-specific code snippets.
      MIT
    • A
      license
      Not graded
      quality
      B
      maintenance
      Enables AI assistants to scan pages and whole sites for SEO and AI-search visibility, generate ready-to-paste fixes and validated structured data, and verify HTML before deploy and live results after — all through stable issue codes so an agent can fix problems one by one and prove they are gone.
      4
      MIT
    • A
      license
      Not graded
      quality
      B
      maintenance
      Enables AI agents to audit a web page in one call — title, meta description, canonical, robots, Open Graph, headings, JSON-LD, security headers and page delivery — returning each finding with its evidence and a ready patch to apply. It also compares a deploy preview against production to surface only regressions, keeps audited pages in tabs with history and daily watches, and runs Lighthouse lab tests via PageSpeed Insights.
      1
      MIT No Attribution