Skip to content
Conduit

mcp server

archform

Diagrams as code for AI assistants. An MCP server that renders, validates and converts Mermaid, PlantUML, Graphviz, D2 and more.

himanshu-mamgain/archformcommunitylistedunreviewed

Set up

Runs on your computer. Pick your agent and operating system.

Before you start

  • Node.js 20 or newer
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "archform": {
      "command": "npx",
      "args": [
        "-y",
        "@archform/mcp"
      ]
    }
  }
}

same format Cursor, GitHub Copilot CLI, Junie, JetBrains AI Assistant, Augment (Auggie CLI), Factory Droid, Kiro, Devin CLI +12

Values in angle brackets are placeholders. Restart Claude Desktop after editing its config.Claude Desktop docs

README

synced Oct 26, 2026

Archform

Diagrams as code for AI assistants.

How Archform works: the assistant sends diagram source to Archform, which renders it with Kroki and returns an image and share link

This diagram was drawn by Archform. Connect it to your assistant and ask, for example, "Draw a C4 context diagram of a URL shortener."

This is the monorepo for the @archform npm scope.

PackageDescription
@archform/mcpMCP server that renders and validates Mermaid, PlantUML, C4, Graphviz, D2, Structurizr, BPMN and Excalidraw diagrams

Quick start

claude mcp add archform -- npx -y @archform/mcp

See packages/mcp for Claude Desktop, Cursor, VS Code and ChatGPT setup.

By default diagram source is sent to the public kroki.io service for rendering. Set KROKI_URL to a self-hosted Kroki to keep it private.

Development

Requires Node.js 22+ and pnpm (corepack enable).

pnpm install
pnpm lint && pnpm typecheck && pnpm test && pnpm build

Releasing

Bump version in both packages/mcp/package.json and packages/mcp/server.json in a pull request. When it merges to main, the Publish workflow publishes the new version to npm (trusted publishing, with provenance) and to the MCP Registry. Pushes that don't change the version publish nothing.

License

MIT

↑↓ navigate openesc close