Atlas / MCP servers / narasimhaponnada / Mermaid

MermaidBLOCK

mcp/narasimhaponnada/mermaid-2
Verdict
BLOCK
Grade
D
Trust score
69 /100
Exposed tools
9 8r · 1w · 0d
Transport
stdio
License
NOASSERTION
Stars
53
01

Overview

From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.

AI-powered Mermaid diagram generation using Model Context Protocol (MCP)

[](https://www.npmjs.com/package/@narasimhaponnada/mermaid-mcp-server) [](https://www.npmjs.com/package/@narasimhaponnada/mermaid-mcp-server) [](https://nodejs.org/) [](LICENSE) [](https://modelcontextprotocol.io/) [](https://mermaid.js.org/)

🎯 Overview

The Mermaid MCP Server enables AI assistants like GitHub Copilot, Claude, and custom LLM applications to generate professional architecture diagrams, flowcharts, sequence diagrams, and more using natural language. It provides a Model Context Protocol interface for seamless integration with AI coding assistants.

✨ Key Features

  • 🤖 AI-Powered Generation: Create diagrams using natural language with GitHub Copilot or Claude
  • 🎨 Production-Ready SVGs: XML-compliant, validated SVG files ready for any use
  • 📦 50+ Pre-built Templates: Architecture patterns, workflows, and data models
  • 🔧 Multiple Integrations: VS Code, Claude Desktop, Cursor IDE, CLI, and custom apps
  • 🚀 22+ Diagram Types: Flowcharts, sequences, ERDs, state machines, Gantt charts, and more
  • ⚡ Fast & Reliable: Browser-based rendering with Puppeteer for consistent output

📋 What's Included

Mermaid/
├── mermaid-mcp-server/          # Main MCP server
│   ├── src/                     # TypeScript source code
│   ├── dist/                    # Compiled JavaScript
│   ├── examples/architectures/  # 5 production-ready SVG samples
│   ├── package.json             # Dependencies
│   └── README.md                #
Read from source at commit cd3151439532OBSERVED · 2026-10-08
Advertisement
02

Connect

Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control.

claude-code
claude mcp add mermaid-mcp-server -- npx -y @narasimhaponnada/[email protected]
claude-desktop
{
  "mcpServers": {
    "mermaid-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "@narasimhaponnada/[email protected]"
      ]
    }
  }
}
03

Exposed tools (9)

8 read · 1 write · 0 destructive.

ToolRiskDescription
convertDiagramreadConvert diagram to different formats. Currently supports SVG (PNG/PDF coming soon).
createCustomTemplatewriteCreate a custom template from diagram code for reuse in current session.
generateDiagramreadGenerate and render a Mermaid diagram to SVG file. Supports all 22+ diagram types with advanced layout options.
getDiagramInforeadAnalyze diagram code and return metadata (type, complexity, node/edge count, estimated render time).
getTemplatereadGet a specific diagram template by ID with complete code and metadata.
listSupportedTypesreadList all supported Mermaid diagram types (22+ types including flowchart, sequence, class, etc.).
listTemplatesreadList available pre-built diagram templates (50+ templates) by category or type.
searchTemplatesreadSearch templates by keyword (name, description, type, tags, or code content).
validateDiagramreadValidate Mermaid diagram syntax and provide detailed error messages and suggestions.
04

Trust audit

BLOCKgrade D · trust 69/100 Do not install this without reading the findings. The audit found something that could harm you or your machine.

LayerWhat it checksResult
L0Provenance & inventoryPASS
L1Static analysis of the codeFAIL
L2Instruction surface (what it tells the agent)FAIL
L3Class-specific surfacePASS
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
declared (2 observation(s))
Network
declared (5 observation(s))
Shell
declared (1 observation(s))
Dependencies
not all pinned
Secrets in source
none-found

Findings (10)

HIGHCode injection · code.eval_exec · CWE-78, CWE-94, CWE-95
mermaid-mcp-server/test-global-dompurify.js:15
const testModule = new Function('return typeof DOMPurify !== "undefined" && typeof DOMPurify.addHook === "function"');
Why it matters. evaluates text as code
Fix. remove; use a parser or a dispatch table
HIGHPrompt injection · prompt.tool_poisoning · CWE-94, CWE-1427
UserGuide.md:2348
<!-- Generate architecture for [SYSTEM] -->
Why it matters. a tool description carrying instructions to the agent
Fix. tool descriptions describe the tool; nothing else
LOWInventory / provenance · inv.hidden_file · CWE-1104
mcp-connector/.connector.pid
.connector.pid
Why it matters. hidden member outside the usual dotfiles
Fix. review its purpose
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
mermaid-mcp-server/src/utils/puppeteer-renderer.ts:82
const mermaidPath = join(__dirname, '../../node_modules/mermaid/dist/mermaid.min.js');
LOWObfuscation / stealth · obf.decode_call · CWE-506, CWE-94
mermaid-mcp-server/src/utils/mermaid.ts:245
const compressed = Uint8Array.from(atob(serialized), c => c.charCodeAt(0));
LOWSupply chain · supply.unpinned · CWE-829, CWE-1357
mcp-connector/package.json
@modelcontextprotocol/sdk, express, cors, ws, dotenv, @types/node, @types/express, @types/cors
Why it matters. 10 dependency range(s) float
Fix. pin exact versions or ship a lockfile
LOWSupply chain · supply.unpinned · CWE-829, CWE-1357
mermaid-mcp-server/package.json
@modelcontextprotocol/sdk, @types/dompurify, dompurify, jsdom, pako, puppeteer, @types/jsdom, @types/node
Why it matters. 11 dependency range(s) float
Fix. pin exact versions or ship a lockfile
LOWPrompt injection · prompt.authority_framing · CWE-94, CWE-1427
Copyright-IP-Analysis.md:26
- **Full Permission**: You can build commercial or open-source tools using Mermaid
LOWPrompt injection · prompt.authority_framing · CWE-94, CWE-1427
Copyright-IP-Analysis.md:176
1. **Legally Clear**: MIT license gives you full permissions
LOWPrompt injection · prompt.authority_framing · CWE-94, CWE-1427
mcp-connector/PROJECT_SUMMARY.md:254
- ✅ **Powerful** - Full access to Mermaid MCP features

Gates applied: no_behavioural_pass.

Audited 2026-10-08 · audit v0.4.1 · source sha cd3151439532full audit observations/trust-audit/mcp-server/narasimhaponnada__mermaid-2.json · Report an issue / request a re-scan
05

Audit history

Every audit this server has had. A grade with a past is a grade somebody is still checking.

DateSourceVerdictGradeScoreChange
2026-10-08cd3151439532BLOCKD69first audit
06

Questions

What tools does Mermaid expose?

9 in total: 8 read-only, 1 that write, and 0 that can delete or overwrite. Every one is listed on this page with its risk.

Is Mermaid safe to connect to an agent?

No — not without reading the findings first. The audit graded it D (69/100) and found 2 critical or high issues in the source. Each one is listed on this page with the file and line it is on.

What credentials does Mermaid need?

No credential environment variables were found in its source, so it appears to need none.

How does Mermaid run?

It speaks stdio, so it runs as a local process your client starts. It is published on npm as @narasimhaponnada/mermaid-mcp-server at 1.0.2.

How current is this page?

The grade is for one exact copy of the source (cd3151439532), read on 2026-10-08. The repository is watched and re-audited when it changes.

Advertisement