Markdown2pdf Mcp

Markdown2pdf Mcp

🚀 Markdown2PDF MCP 服务器(markdown2pdf-mcp)

这是一个用于将Markdown文档转换为PDF文件的MCP服务器。它提供了简单高效的方式,能从Markdown内容生成PDF,支持语法高亮和自定义样式,还可在第一页添加水印。该项目灵感源自Alan Shaw的markdown-pdf

🚀 快速开始

本服务器能让你轻松把Markdown文档转换为PDF文件。下面为你介绍具体的安装和使用步骤。

✨ 主要特性

  • 📄 使用单个命令将Markdown转换为PDF。
  • 🌈 代码块的语法高亮。
  • 🎨 PDF输出的自定义CSS样式。
  • 📝 支持标准Markdown格式。
  • 🌐 使用Chrome引擎生成现代PDF。
  • 🆙 对现代网络功能和字体有出色支持。
  • 💪 可靠的资源加载和渲染。

🚫 局限性

以下Markdown元素不受支持:

  • LaTeX数学公式(例如,$x^2$$$\sum_{i=1}^n x_i$$)。
  • 复杂的数学公式或科学表示法。

请仅使用以下受支持的Markdown元素:

  • 标题(所有级别)。
  • 文本格式化(粗体、斜体、删除线)。
  • 列表(有序和无序)。
  • 带语法高亮的代码块。
  • 表格。
  • 引用块。
  • 链接。
  • 图片(本地文件和外部URL)。
  • 任务列表。

📦 安装指南

# 克隆仓库
git clone https://github.com/2b3pro/markdown2pdf-mcp.git

# 进入项目目录
cd markdown2pdf-mcp

# 安装依赖
npm install

# 构建项目
npm run build

💻 使用示例

基础用法

启动服务器

npm start

使用MCP工具

该服务器提供了一个单一的工具create_pdf_from_markdown,具有以下参数:

{
// 必填参数
markdown: string;    // 要转换为PDF的Markdown内容

// 可选参数,默认值
outputFilename?: string;  // PDF文件名(例如,“output.pdf”)
paperFormat?: string;     // 'letter'(默认)、'a4'、'a3'、'a5'、'legal'、'tabloid'
paperOrientation?: string; // 'portrait'(默认)或 'landscape'
paperBorder?: string;     // '2cm'(默认),接受带有CSS单位的十进制值(例如,“1.5cm”、“2.5mm”、“0.5in”、“10.5px”)
watermark?: string;       // 可选水印文本(最多10个字符)
}

示例

// 启动服务器
npm start

// 使用MCP工具的示例
{
"command": "create_pdf_from_markdown",
"params": {
"markdown": "# 我的第一个PDF\n这是一个**Markdown**到PDF的转换器。",
"outputFilename": "example.pdf"
}
}

高级用法

配置输出目录

要更改默认的输出目录(./dist),可以在项目根目录下创建一个.env文件,并添加以下内容:

OUTPUT_DIR=your_desired_directory

🔧 技术细节

依赖项

  • pdfmake - 主要用于PDF生成。
  • jsdom - 用于渲染Markdown。
  • marked - Markdown解析器。

Chrome版本

由于pdfmake依赖于Chrome Blink引擎,建议安装最新版的Chrome浏览器

开发指南

  1. 安装依赖:npm install
  2. 启动开发服务器:npm start

📄 许可证

本项目采用MIT许可证。

🤝 贡献指南

  1. Fork 仓库。
  2. 创建功能分支(git checkout -b feature/amazing-feature)。
  3. 提交更改(git commit -m '添加一些神奇的功能')。
  4. 推送到分支(git push origin feature/amazing-feature)。
  5. 打开Pull Request。
  • 0 关注
  • 0 收藏,28 浏览
  • system 提出于 2025-10-02 17:45

相似服务问题

相关AI产品