{
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-05",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.3",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "tool": {
    "category": "",
    "endpoint": "https://www.thedesignagent.ai/mcp",
    "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/thedesignagent-mcp.json",
    "kind": "mcp",
    "listed": "indexed",
    "liveUrl": "https://www.anchorterminal.com/api/v1/live/thedesignagent-mcp.json",
    "markdownUrl": "https://www.anchorterminal.com/tools/thedesignagent-mcp.md",
    "mcpTools": {
      "check": {
        "checker": "anchor-check/1.0",
        "totalTokens": 1763,
        "counts": {
          "error": 0,
          "note": 0,
          "warn": 1
        },
        "findings": [
          {
            "rule": "TC13",
            "severity": "warn",
            "tool": "Discover",
            "message": "project_model (object with no properties)",
            "fix": "Declare the properties (or additionalProperties with a schema) and the array's items."
          }
        ]
      },
      "checkedAt": "2026-10-04T22:20:43Z",
      "count": 3,
      "note": "answered without the initialize handshake",
      "schemaTokens": 1763,
      "status": "ok",
      "tools": [
        {
          "name": "Discover",
          "title": "Design brief",
          "description": "Get a build brief calibrated to your project, persona, and the specific screen you're building.\n\nCall this BEFORE building any screen. Returns:\n- The active Job-to-be-Done for the task\n- Relevant heuristics, cognitive guidance, and patterns from the corpus\n- A focused build brief (~600 tokens) to inject into your build context\n\nCALL LIFECYCLE:\n- First call for a new project (no project_id): returns _meta.tda_status='setup_required' with an extraction task. Scan the repo's schema/types/migrations (or, with no repo, ask the user for a short product description as the task explains) and resubmit with project_model populated.\n- Subsequent calls: send ONLY task + project_id. project_model is cached server-side from the first call; resending it wastes ~2–4k tokens per call and re-runs validation. Resend project_model ONLY when a response returns _meta.tda_status='setup_required' or 'model_stale'.\n\nUse project_id from .thedesignagent or memory across calls. Pass repo_hash (SHA256 of git remote origin URL) only as a fallback if no project_id is known yet.",
          "inputSchema": {
            "properties": {
              "codebase_context": {
                "description": "Surrounding code snippet for context",
                "type": "string"
              },
              "project_id": {
                "description": "project_id from .thedesignagent file",
                "type": "string"
              },
              "project_model": {
                "description": "Project model. Send ONLY on first call (no project_id yet) OR when a prior response returned _meta.tda_status=\"setup_required\" or \"model_stale\". Do NOT resend on routine subsequent calls — it is cached server-side.",
                "type": "object"
              },
              "repo_hash": {
                "description": "SHA256 of git remote origin URL",
                "type": "string"
              },
              "schema_hash": {
                "description": "SHA256 of schema/type files — triggers model refresh if stale",
                "type": "string"
              },
              "skills": {
                "description": "Per-call skill selection (overrides project defaults)",
                "items": {
                  "type": "string"
                },
                "type": "array"
              },
              "task": {
                "description": "Describe the screen you're about to build",
                "type": "string"
              }
            },
            "required": [
              "task"
            ],
            "type": "object"
          },
          "outputSchema": {
            "properties": {
              "project_id": {
                "description": "Persist in .thedesignagent and send on later calls",
                "type": "string"
              },
              "retry_ok": {
                "description": "Whether the same call can safely be retried",
                "type": "boolean"
              },
              "score": {
                "description": "Overall 0–10 score (Ux and Visual)",
                "maximum": 10,
                "minimum": 0,
                "type": "number"
              },
              "status": {
                "description": "healthy | degraded:stage3 | degraded:other | setup_required | model_stale | local_install_required | login_required | auth_failed | insufficient_credits | rate_limited | pipeline_error",
                "type": "string"
              }
            },
            "required": [
              "status",
              "retry_ok"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": false,
            "openWorldHint": false,
            "readOnlyHint": false,
            "title": "Design brief"
          }
        },
        {
          "name": "Ux",
          "title": "UX review",
          "description": "Evaluate a built UI artifact for JTBD fit, heuristic compliance, cognitive load, and pattern conformance.\n\nCall this AFTER building a screen. TheDesignAgent scores:\n- Heuristics: violations against Nielsen's heuristics + project-specific anti-patterns\n- Cognitive: load profile against the stored persona\n- Patterns: conformance to established project pattern decisions\n- JTBD fit: does the artifact serve the resolved job?\n\nReturns ux_score (0–10) + findings + prioritised recommendations.\n\nStores new anti-patterns to project context — future builds benefit automatically.",
          "inputSchema": {
            "properties": {
              "artifact": {
                "description": "The UI description or component code to evaluate",
                "type": "string"
              },
              "codebase_context": {
                "description": "Optional surrounding code context",
                "type": "string"
              },
              "project_id": {
                "description": "project_id from .thedesignagent file in project root",
                "type": "string"
              },
              "repo_hash": {
                "description": "SHA256 of git remote origin URL (fallback if no .thedesignagent)",
                "type": "string"
              },
              "route": {
                "description": "URL path of the page under review, e.g. /orders. Reviews judge it against that page's own job.",
                "type": "string"
              },
              "stages": {
                "description": "Run only named stages (omit to run all)",
                "items": {
                  "enum": [
                    "heuristics",
                    "cognitive",
                    "patterns",
                    "jtbd-fit"
                  ],
                  "type": "string"
                },
                "type": "array"
              },
              "task": {
                "description": "Describe the workflow or screen you're building",
                "type": "string"
              }
            },
            "required": [
              "task",
              "artifact"
            ],
            "type": "object"
          },
          "outputSchema": {
            "properties": {
              "project_id": {
                "description": "Persist in .thedesignagent and send on later calls",
                "type": "string"
              },
              "retry_ok": {
                "description": "Whether the same call can safely be retried",
                "type": "boolean"
              },
              "score": {
                "description": "Overall 0–10 score (Ux and Visual)",
                "maximum": 10,
                "minimum": 0,
                "type": "number"
              },
              "status": {
                "description": "healthy | degraded:stage3 | degraded:other | setup_required | model_stale | local_install_required | login_required | auth_failed | insufficient_credits | rate_limited | pipeline_error",
                "type": "string"
              }
            },
            "required": [
              "status",
              "retry_ok"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": false,
            "openWorldHint": false,
            "readOnlyHint": false,
            "title": "UX review"
          }
        },
        {
          "name": "Visual",
          "title": "Visual review",
          "description": "Evaluate a built UI artifact for visual design quality — brand compliance, visual cognitive load, and aesthetic quality.\n\nPass render_url to review a real screenshot. This hosted server screenshots public pages and preview deploys (pass vercel_bypass_token for a protected Vercel preview). It cannot reach localhost or private networks: for those, it returns instructions for the local MCP server. With no render_url, the review runs from the artifact code alone.\n\nIf the page redirects to login, no review runs and nothing is charged.",
          "inputSchema": {
            "properties": {
              "artifact": {
                "description": "The UI description or component code to evaluate",
                "type": "string"
              },
              "project_id": {
                "description": "project_id from .thedesignagent file in project root",
                "type": "string"
              },
              "render_url": {
                "description": "Public or preview URL to screenshot, e.g. https://my-app-git-feature.vercel.app/checkout",
                "type": "string"
              },
              "repo_hash": {
                "description": "SHA256 of git remote origin URL",
                "type": "string"
              },
              "task": {
                "description": "Describe the workflow or screen you're building",
                "type": "string"
              },
              "vercel_bypass_token": {
                "description": "Optional. Vercel 'Protection Bypass for Automation' secret, for a protected preview deploy.",
                "type": "string"
              }
            },
            "required": [
              "task",
              "artifact"
            ],
            "type": "object"
          },
          "outputSchema": {
            "properties": {
              "project_id": {
                "description": "Persist in .thedesignagent and send on later calls",
                "type": "string"
              },
              "retry_ok": {
                "description": "Whether the same call can safely be retried",
                "type": "boolean"
              },
              "score": {
                "description": "Overall 0–10 score (Ux and Visual)",
                "maximum": 10,
                "minimum": 0,
                "type": "number"
              },
              "status": {
                "description": "healthy | degraded:stage3 | degraded:other | setup_required | model_stale | local_install_required | login_required | auth_failed | insufficient_credits | rate_limited | pipeline_error",
                "type": "string"
              }
            },
            "required": [
              "status",
              "retry_ok"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": false,
            "openWorldHint": true,
            "readOnlyHint": false,
            "title": "Visual review"
          }
        }
      ]
    },
    "name": "TheDesignAgent",
    "note": "Indexed from the official MCP registry: facts and our own checks, not reviewed, so no score, grade or rank.",
    "packages": [
      {
        "registryType": "npm",
        "identifier": "@thedesignagent/mcp",
        "version": "0.5.0",
        "transport": "stdio"
      }
    ],
    "pageJsonUrl": "https://www.anchorterminal.com/tools/thedesignagent-mcp.json",
    "popularity": {
      "npmWeekly": 951
    },
    "registryName": "ai.thedesignagent/mcp",
    "remotes": [
      {
        "type": "streamable-http",
        "url": "https://www.thedesignagent.ai/mcp"
      }
    ],
    "repository": "",
    "reviewed": false,
    "slug": "thedesignagent-mcp",
    "source": "the official MCP registry",
    "sourceUrl": "https://registry.modelcontextprotocol.io/v0.1/servers?search=ai.thedesignagent/mcp",
    "summary": "A design agent in your coding agent's loop: briefs each screen, reviews UX and visual quality.",
    "updatedAt": "2026-10-04T20:20:57Z",
    "url": "https://www.anchorterminal.com/tools/thedesignagent-mcp",
    "vendor": "thedesignagent.ai",
    "vendorUrl": "https://www.thedesignagent.ai",
    "version": "0.5.0",
    "websiteUrl": "https://www.thedesignagent.ai",
    "where": "both",
    "why": [
      "vendor"
    ]
  }
}
