Bridge your coding agent to Open Design.

A stdio Model Context Protocol server that lets OpenCode, Claude Code, Cursor and Zed list projects, fetch artifacts, lint HTML, and generate full designs through your own BYOK provider — against a running Open Design daemon.

Get startedInstall

Add the server to your MCP client config (OpenCode example shown — the same shape works for Claude Code, Cursor, and Zed):

{
  "mcp": {
    "open-design": {
      "command": "npx",
      "args": ["-y", "open-design-mcp"],
      "env": {
        "OD_DAEMON_URL": "http://ai-open-design:7456",
        "BYOK_BASE_URL": "https://your-ai-proxy.example.com/v1",
        "BYOK_API_KEY": "<provider-api-key>",
        "BYOK_MODEL": "open-design"
      }
    }
  }
}

The server boots with only OD_DAEMON_URL set — BYOK vars are validated lazily when od_generate_design is first called. See the README for the full env-var reference.

v0.17.0 ships13 MCP tools

Eleven of the thirteen work with only OD_DAEMON_URL; only od_generate_design and od_generate_design_system require BYOK vars.

ToolVerbPurpose
od_list_projectsreadList all projects on the daemon.
od_get_projectreadFetch a project + its artifact files, including customInstructions, fidelity, skillId, designSystemId.
od_create_projectwriteCreate a project with a client-supplied id, optional customInstructions and design-system link.
od_update_projectwritePatch a project's name, custom instructions, or metadata.
od_delete_projectwritePermanently delete a project (db row + on-disk dir).
od_save_artifactwritePersist HTML to the daemon's global artifact store.
od_save_project_filewritePersist a file inside a project so it appears in the daemon UI.
od_compose_briefformatFormat a Turn 3 prompt with form answers, brand spec, and design system summary.
od_extract_design_systemreadParse a design-system.html and return the JSON manifest + three CSS blocks.
od_generate_design_systemgenerateGenerate a design-system.html (tokens, components, layout) via BYOK.
od_update_design_systemwritePatch a design system via semantic (BYOK) or delta (deterministic) mode.
od_lint_artifactvalidateLint an HTML document; optional design-system conformance checks (DS001-DS005).
od_generate_designgenerateGenerate a design via BYOK; auto-injects linked design system in strict/advisory mode.

Recommended for multi-page projectsDesign-system-first workflow

For projects that span more than one page, generate a shared design system before any individual page. Every subsequent od_generate_design call against the same project will auto-inject the system contract — no copy-paste, no drift.

od_generate_design_system → od_save_project_file (design-system.html)
                          → od_update_project { designSystemId: "design-system.html" }
                          → od_generate_design (×N pages, contract auto-injected)
                          → od_lint_artifact (DS001-DS005 conformance)

Strict mode is the default once a design system is linked. Use designSystemMode: "advisory" for looser enforcement or "off" to skip injection entirely.