Skip to main content
Glama
2b3pro
by 2b3pro

Markdown2PDF MCP 服务器 (markdown2pdf-mcp)

一个用于将 Markdown 文档转换为 PDF 文件的 MCP 服务器。该服务器提供了一种简单高效的方式,可以从 Markdown 内容生成 PDF,并支持语法高亮和自定义样式。此外,还支持在第 1 页添加水印。

受到 Alan Shaw 的markdown-pdf的启发。

特征

  • 使用单个命令将 Markdown 转换为 PDF

  • 代码块的语法高亮

  • PDF 输出的自定义 CSS 样式

  • 支持标准 Markdown 格式

  • 使用 Chrome 渲染引擎生成现代 PDF

  • 对现代网络功能和字体的出色支持

  • 可靠的资源加载和渲染

Related MCP server: pymupdf4llm-mcp

限制

不支持以下 Markdown 元素:

  • LaTeX 数学方程式(例如, $x^2$$$\sum_{i=1}^n x_i$$

  • 复杂的数学公式或科学计数法

坚持使用以下受支持的 markdown 元素:

  • 标题(所有级别)

  • 文本格式(粗体、斜体、删除线)

  • 列表(有序和无序)

  • 带有语法高亮的代码块

  • 表格

  • 区块引用

  • 链接

  • 图像(本地文件和外部 URL)

  • 任务列表

安装

# Clone the repository git clone https://github.com/2b3pro/markdown2pdf-mcp.git # Navigate to the project directory cd markdown2pdf-mcp # Install dependencies npm install # Build the project npm run build

用法

启动服务器

npm start

使用 MCP 工具

服务器提供了一个单独的工具create_pdf_from_markdown其参数如下:

{ // Required parameters markdown: string; // Markdown content to convert // Optional parameters with defaults outputFilename?: string; // Filename for the PDF (e.g., "output.pdf") paperFormat?: string; // 'letter' (default), 'a4', 'a3', 'a5', 'legal', 'tabloid' paperOrientation?: string; // 'portrait' (default), 'landscape' paperBorder?: string; // '2cm' (default), accepts decimal values with CSS units (e.g., '1.5cm', '2.5mm', '0.5in', '10.5px') watermark?: string; // Optional watermark text (max 15 characters, uppercase) }

带有选项的示例:

await use_mcp_tool({ server_name: "markdown2pdf", tool_name: "create_pdf_from_markdown", arguments: { markdown: "# Hello World\n\nThis is a test document.", outputFilename: "output.pdf", paperFormat: "a4", paperOrientation: "landscape", paperBorder: "1.5cm", watermark: "DRAFT", }, });

最小使用示例:

await use_mcp_tool({ server_name: "markdown2pdf", tool_name: "create_pdf_from_markdown", arguments: { markdown: "# Hello World\n\nThis is a test document.", outputFilename: "output.pdf", }, });

配置

输出目录

您可以在 MCP 设置文件中为使用 MCP 的应用程序(例如 Cline 或 Claude)配置输出目录。如果未配置,则会将文件保存到 $HOME:

{ "mcpServers": { "markdown2pdf": { "command": "node", "args": ["path/to/markdown2pdf-mcp/build/index.js"], "env": { "M2P_OUTPUT_DIR": "/path/to/output/directory" } } } }

该工具通过附加增量数字(例如,output.pdf、output-1.pdf、output-2.pdf)自动处理文件名冲突。

依赖项

Chrome 版本

此软件包使用 Chrome v131.0.6778.204 在所有安装版本中生成一致的 PDF。运行npm install时会自动安装此版本。

发展

# Build the project npm run build # Start the server npm start

执照

麻省理工学院

贡献

  1. 分叉存储库

  2. 创建你的功能分支( git checkout -b feature/amazing-feature

  3. 提交您的更改( git commit -m 'Add some amazing feature'

  4. 推送到分支( git push origin feature/amazing-feature

  5. 打开拉取请求

One-click Deploy
A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/2b3pro/markdown2pdf-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server