Skip to content
Agentmart
Submit a tool

Docdiagram MCP

DocDiagram MCP server - embedded diagrams in MDX docs

Connector by docdiagram · GitHub account verified by the MCP Registry

IndexedLicense unknownLocal (stdio)
Write a review

Install

Works with Claude Code, Codex, VS Code, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.

npx agentmarket install connector/docdiagram-docdiagram-mcp

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

DocDiagram MCP server - embedded diagrams in MDX docs

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this server can do and what it asks for, from its tool list and install config. Checked Oct 25, 2026.

Tools
9 read · 6 write · 1 delete · 3 not yet classified
Secrets
1 (API keys, tokens or passwords)
Install scripts
Not scanned yet
Runs as
Python package

Tools by what they do 19

Read from the source code; the running server may list different tools.

Read 9 · Look things up without changing anything.

  • diagram_get
  • diagram_list
  • embedded_diagram_by_sidecar
  • embedded_diagram_get
  • embedded_diagram_list_for_repo
  • embedded_diagram_render_png_url
  • embedded_diagram_render_svg
  • repo_get
  • repo_lookup

Write 6 · Create, change, send or run things.

  • diagram_create
  • embedded_diagram_create
  • repo_upsert
  • sync_get_status
  • sync_list
  • sync_start

Delete 1 · Delete, drop, revoke or wipe things.

  • embedded_diagram_delete

Not yet classified 3 · We could not tell from the name and description.

  • diagram_revise
  • embedded_diagram_regenerate
  • embedded_diagram_revise

Secrets and settings it asks for

Secrets: values you paste in that let it act as you.

  • DOCDIAGRAM_API_KEY

Other settings (environment variables or headers).

  • DOCDIAGRAM_API_URL

Tools (19)

Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].

  • diagram_create

    Generate a standalone diagram from a prompt. No MDX file or repo binding required: this is the zero-setup path for a customer who has only run /docdiagram:auth. Creates a chat in the account's default project and polls briefly for the render. NON-BLOCKING on a slow render: if the render is not done within a few seconds it returns a pending handle (``render_status`` is the inflight value, ``image_urls`` empty) that you resolve later with ``diagram_get(chat_slug)`` rather than raising. Does NOT download bytes; the caller fetches the short-lived signed URLs (valid ~5 min) WITHOUT credentials. Pr…

  • diagram_get

    Resolve a standalone diagram by its handle (the chat ``slug`` that ``diagram_create`` and ``diagram_list`` return). This is how you pick up a diagram that ``diagram_create`` returned as pending, and the dereference half of the deterministic-handle round-trip. Reads the correctly-resolved revision (the pinned one if pinned, else the one referenced by the last chat message, NEVER ``revisions[0]`` by position) and returns its freshly signed ``image_urls``. Returns {chat_slug, chat_url, render_status, default_theme, image_urls, pinned}, where ``pinned`` is true when the resolved revision is the p…

  • diagram_list

    List the caller's standalone diagrams. Defaults to the account's default project (the zero-setup project); pass ``project_id`` to scope to another. Returns {items: [{chat_slug, title, thumbnail_url, updated_at}]}, the handle paired with the human label. Show ``title`` to the user, resolve their natural-language pick to the corresponding ``chat_slug``, then call ``diagram_get``/``diagram_revise`` with that ``chat_slug``. Titles are NOT unique and are never a key; always carry the ``chat_slug`` forward.

  • diagram_revise

    Revise an existing standalone diagram with a follow-up prompt, addressed by its handle (the chat ``slug``). Resolve a human pick to a ``chat_slug`` first (via ``diagram_list``); never re-create, which would silently duplicate. Appends a turn to the chat and polls briefly for the new render, with the same non-blocking behavior as ``diagram_create``: a slow render returns a pending handle to resolve later with ``diagram_get``. If a generation is already in flight on the chat, returns {status: "generation_in_flight", chat_slug, chat_id} as a retry signal instead of erroring. On success returns {…

  • embedded_diagram_by_sidecar

    Look up a binding by (repo, docs_path, slot). Returns None if no live binding exists. Soft-deleted rows are excluded so a re-create after delete works without surfacing the tombstone.

  • embedded_diagram_create

    Create a new embedded diagram bound to (repo, docs_path, slot). Errors with 409 if a binding already exists (use embedded_diagram_revise). Render runs as an arq job; blocks on the status URL until terminal (30s timeout) and returns the result. Returns {docdiagram_id, binding, sidecar, mdx_reference}; does NOT inline render bytes.

  • embedded_diagram_delete

    Soft-delete a binding. Does not delete the diagram itself; the canonical revision history remains addressable via the chat.

  • embedded_diagram_get

    Fetch a binding (and its referenced diagram metadata) by id. Returns soft-deleted rows too so the orphan view in TECH-065 works.

  • embedded_diagram_list_for_repo

    List bindings for a repo. Cursor-paginated per TECH-062's (created_at, id) base64-JSON convention. Returns {items, next_cursor}.

  • embedded_diagram_regenerate

    Regenerate an existing embedded diagram by re-running the last prompt. Server resolves the current revision via diagram_revision_service.resolve_current and re-invokes the LLM with the most recent user message on the bound chat. Use when the diagram drifted or you want a fresh sample without retyping the prompt. Blocks until terminal (30s).

  • embedded_diagram_render_png_url

    Return {full_png_url, expires_at}. full_png_url is a short-lived signed render URL (TECH-069) the caller fetches WITHOUT credentials, so it works off-origin where a bearer header can't be attached. Render is compute-on-demand via arq. Binary payloads in MCP tools are awkward; a URL is the right primitive.

  • embedded_diagram_render_svg

    Return {full_svg_url, expires_at, byte_size}. full_svg_url is a short-lived signed render URL (TECH-069) the caller fetches WITHOUT credentials, so it works off-origin where a bearer header can't be attached. Render is compute-on-demand via arq (no cache table). The full SVG is NOT inlined: large diagrams blow out the model's context and SVG XML is rarely useful for the model to read directly.

  • embedded_diagram_revise

    Revise an existing embedded diagram via a follow-up prompt. Addressed by docdiagram_id, not by repo/docs_path/slot. Render runs as an arq job; blocks until terminal (30s timeout).

  • repo_get

    Fetch a repo row by its DocDiagram UUID. Use repo_lookup if you only have the GitHub node id.

  • repo_lookup

    Look up a repo by GitHub node id. Scoped to the caller's account (TECH-062 UNIQUE(account_id, host, host_id)). Returns the repo row or None if not registered.

Show 4 more tools
  • repo_upsert

    Register or update a repo. Idempotent on (account_id, host, host_id). Account scoping is implicit from the bearer token. Returns {id, account_id, host, host_id, repo_full_name, default_branch, docs_tool, docs_config_path, installation_id, sidecar_mode}.

  • sync_get_status

    Poll a sync run by id. Returns {status, pr_url, pr_number, bindings_updated, error_message, last_human_commit_sha, created_at, completed_at}.

  • sync_list

    List recent sync runs for a repo, newest first. Cursor-paginated per TECH-062's (created_at, id) base64-JSON convention. Returns {items, next_cursor}.

  • sync_start

    Trigger a sync run: pushes pending revisions to the customer's repo via PR. Idempotent in-flight dedup (partial unique index on pending/running/pr_opened states). Returns {sync_run_id, status, job_id, already_in_flight}.

Signals

Weekly downloads
40
Last release
Jun 24, 2026 (4 months ago)
Last package publish
Jul 4, 2026 (3 months ago)

From the package registry.

Details

Registry name
io.github.docdiagram/docdiagram-mcp
Version
0.3.1
Auth
API key
Packages
pypi docdiagram-mcp
License
License unknown
First seen
Oct 24, 2026
Last checked
Oct 25, 2026
Cite this page

Docdiagram MCP. Agent Mart. https://agentmart.dev/connectors/docdiagram-docdiagram-mcp (last updated 2026-10-25)