项目简介
Markdownify MCP服务器是一个基于Model Context Protocol (MCP) 的后端应用,它提供了一系列工具,用于将各种文件类型和网页内容转换为Markdown格式。用户可以通过MCP客户端调用这些工具,方便地将PDF、图片、音频、Office文档以及网页内容转换为易于阅读和分享的Markdown文本。
主要功能点
- 多种文件格式转换: 支持将 PDF, 图片, 音频 (支持转录), DOCX, XLSX, PPTX 等文件转换为 Markdown。
- 网页内容转换: 支持将 YouTube 视频 transcripts, Bing 搜索结果, 普通网页等内容转换为 Markdown。
- Markdown 文件检索: 支持通过文件路径检索并获取已有的 Markdown 文件内容。
- 标准 MCP 协议: 遵循 Model Context Protocol 协议,易于集成到各种 MCP 客户端应用中。
安装步骤
-
克隆仓库:
git clone https://github.com/zcaceres/markdownify-mcp cd markdownify-mcp -
安装依赖:
pnpm install此命令还会安装 'uv' 和相关的 Python 依赖。
-
构建项目:
pnpm run build -
启动服务器:
pnpm start
服务器配置
要将此服务器集成到 MCP 客户端应用中,您需要在客户端的服务器配置中添加以下JSON配置。请将 '{ABSOLUTE PATH TO FILE HERE}' 替换为 'markdownify-mcp' 仓库在您本地文件系统中的绝对路径。
{ "mcpServers": { "markdownify": { "command": "node", "args": [ "{ABSOLUTE PATH TO FILE HERE}/dist/index.js" ], "env": { "UV_PATH": "/path/to/uv" // 可选: uv 执行文件的路径,默认使用 uv 的默认安装位置。如果您的 uv 不在默认位置,请修改此项。 } } } }
- 'server name': 'markdownify' - 服务器名称,客户端用此名称引用该服务器。
- 'command': 'node' - 启动服务器的命令,这里使用 Node.js 运行时。
- 'args': '["{ABSOLUTE PATH TO FILE HERE}/dist/index.js"]' - 传递给 'node' 命令的参数,指向编译后的服务器入口文件 'index.js' 的绝对路径。请务必替换为实际路径。
- 'env': '{ "UV_PATH": "/path/to/uv" }' - 可选的环境变量配置。 'UV_PATH' 用于指定 'uv' 执行文件的路径。如果您的 'uv' 可执行文件不在默认路径下,您需要在此处指定正确的路径。
基本使用方法
服务器启动后,MCP客户端可以通过JSON-RPC协议与其通信,调用预定义的工具。
可用工具包括:
- 'youtube-to-markdown': 将 YouTube 视频转换为 Markdown。
- 'pdf-to-markdown': 将 PDF 文件转换为 Markdown。
- 'bing-search-to-markdown': 将 Bing 搜索结果页面转换为 Markdown。
- 'webpage-to-markdown': 将普通网页转换为 Markdown。
- 'image-to-markdown': 将图片转换为 Markdown (包含元数据和描述)。
- 'audio-to-markdown': 将音频文件转换为 Markdown (支持转录)。
- 'docx-to-markdown': 将 DOCX 文件转换为 Markdown。
- 'xlsx-to-markdown': 将 XLSX 文件转换为 Markdown。
- 'pptx-to-markdown': 将 PPTX 文件转换为 Markdown。
- 'get-markdown-file': 获取指定路径的 Markdown 文件内容。
客户端需要根据工具的 'inputSchema' 构造请求参数,并通过MCP协议发送 'CallToolRequest' 调用相应的工具。 服务器会将转换后的 Markdown 文本返回给客户端。
例如,要使用 'pdf-to-markdown' 工具,客户端需要提供 PDF 文件的绝对路径作为参数。
信息
分类
开发者工具