📇 ☁️ - Create Mermaid diagrams in a shared workspace, with version history, comments, embedding, presentation…
@diagramzu/mcp
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
MCP server for diagramzu.ai. Lets Claude Code, Claude Desktop, Cursor, Windsurf, ChatGPT custom GPTs, and any MCP client read and write Mermaid diagrams in your Space.
You author diagrams by talking to your AI — it stores them in your Space at diagramzu.ai/app/d/ , where your team can read them and publish a public link.
> Available in the official MCP Registry as ai.diagramzu/mcp.
1. Get a token
Sign up at diagramzu.ai, then create an API token at diagramzu.ai/app/settings/connections. Tokens look like dz_live_… and are scoped to one Space — no separate space-id needed.
2. Connect your client
The hosted server is the easy path: no install, no build. Just paste a config.
Claude Code
Claude Desktop, Cursor, Windsurf, Cline
Add to your client's MCP config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS for Claude Desktop, ~/.cursor/mcp.json for Cursor, etc.):
ChatGPT custom GPT (Actions)
In the GPT builder, add an MCP server action pointing to https://mcp.diagramzu.ai/mcp with a Bearer-token authentication header set to your dz_live_… token.
Local stdio (for clients that don't speak remote MCP)
with environment:
DIAGRAMZU_SPACE_ID is **optional**. Left unset, the server uses the token's own default workspace — the one chosen when the token was minted. Set it to pin a different workspace as the default for this process.
Most users should prefer the remote HTTP transport above — the stdio path exists for clients without HTTP MCP support.
Workspaces
A token is scoped either to **one workspace** or to **all the workspaces its owner belongs to**, chosen when the token is authorized (the consent page's *Access* radio, or Settings → API tokens). An account-scoped token follows its owner's **live** memberships: joining a workspace adds it, being removed from one closes it on the next call.
- list_spaces shows every workspace this connection can act in, which one is the default, and your role in each.
- Every other tool takes an optional **space** — a workspace id, slug, or exact name (case-insensitive). Omit it to act in the default workspace. A name matching more than one workspace is refused rather than guessed; pass the id or slug.
- Every tool result ends with the workspace it acted in.
- Returned /app/... links carry ?space=, so opening one switches the browser to that workspace when you are a member.
Tools
| Tool | Description |
|---|---|
| list_spaces | List every workspace this connection can act in, with ids, slugs, roles, and which is the default |
| list_diagrams | List diagrams in the Space (filter with q, sort by updated / created) |
| list_folders | List folders in the Space |
| get_diagram | Fetch one diagram by id (title, description, Mermaid source) |
| create_diagram | Create a new diagram (returns its id and its /app/d/ URL) |
| update_diagram | Update title, Mermaid source, description, or style of an existing diagram |
| analyze_diagram | Get a structural summary of a diagram (nodes, edges, density) |
| list_versions | List version history for a diagram |
| get_version | Fetch a specific historical version of a diagram |
| list_comments | List a diagram's comments, oldest first (optionally only one node's thread) |