返回 MCP 目录
public公开dns本地运行

mcp-md-mmd-pdf

一个MCP服务器,可将包含Mermaid图表的Markdown文件转换为PDF文档,也能将独立的Mermaid图表转换为PNG或PDF格式。

article

README

🚀 Markdown + Mermaid 转 PDF MCP 服务器

这是一个 MCP(模型上下文协议)服务器,它可以将包含 Mermaid 图表的 Markdown 文件转换为 PDF 文档,还能将独立的 Mermaid 图表转换为 PNG 或 PDF 格式。该服务器采用混合方法:先将 Markdown 转换为 HTML,把 Mermaid 图表渲染为 SVG 图形,然后使用 Puppeteer 生成输出文件。

✨ 主要特性

  • 将包含 Mermaid 图表的 Markdown 文件转换为 PDF
  • 将独立的 Mermaid 图表代码转换为 PNG 图像
  • 将独立的 Mermaid 图表代码转换为 PDF 文件
  • 自动将 Mermaid 图表渲染为高质量的 SVG 图形
  • 拥有简洁、专业的默认样式
  • 支持自定义 CSS 样式(用于 Markdown 转换)
  • 具备简单的 MCP 工具界面

📦 安装指南

npm install
npm run build

💻 使用示例

作为 MCP 服务器

将此服务器添加到您的 MCP 客户端配置(例如,Claude Desktop)中:

{
  "mcpServers": {
    "md-mmd-pdf": {
      "command": "node",
      "args": ["/absolute/path/to/md-mmd-pdf/build/index.js"]
    }
  }
}

工具:convert_md_to_pdf

将包含 Mermaid 图表的 Markdown 文件转换为 PDF。

参数:

  • input_path(必需):输入 Markdown 文件的绝对路径
  • output_path(可选):PDF 文件的保存绝对路径。如果未提供,则使用与输入文件相同的名称,扩展名为 .pdf
  • custom_css(可选):应用于 PDF 的额外 CSS 样式

示例:

{
  "input_path": "/path/to/document.md",
  "output_path": "/path/to/output.pdf"
}

工具:convert_mermaid_to_png

将独立的 Mermaid 图表代码转换为 PNG 图像文件。

参数:

  • mermaid_code(必需):原始 Mermaid 图表代码字符串
  • output_path(必需):PNG 文件的保存绝对路径

示例:

{
  "mermaid_code": "graph TD\n  A[Start] --> B[Process]\n  B --> C[End]",
  "output_path": "/path/to/diagram.png"
}

工具:convert_mermaid_to_pdf

将独立的 Mermaid 图表代码转换为 PDF 文件。

参数:

  • mermaid_code(必需):原始 Mermaid 图表代码字符串
  • output_path(必需):PDF 文件的保存绝对路径

示例:

{
  "mermaid_code": "sequenceDiagram\n  Alice->>Bob: Hello\n  Bob->>Alice: Hi!",
  "output_path": "/path/to/diagram.pdf"
}

📚 详细文档

工作原理

  1. Markdown 解析:使用 marked 库读取并解析 Markdown 内容。
  2. HTML 生成:将 Markdown 转换为 HTML,同时保留 Mermaid 代码块。
  3. Mermaid 渲染:注入 Mermaid.js 库,在浏览器中将图表渲染为 SVG。
  4. PDF 导出:使用 Puppeteer(无头 Chrome)生成包含所有渲染内容的最终 PDF。

示例 Markdown 文件

查看 example.md 可获取包含 Mermaid 图表的示例文档。

开发步骤

# 安装依赖
npm install

# 构建项目
npm run build

# 开发模式下的监听模式
npm run dev

# 启动服务器
npm start

运行要求

  • Node.js 18 或更高版本
  • 足够的内存以支持 Puppeteer 运行无头 Chrome

📄 许可证

本项目采用 MIT 许可证。

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端