modelscope·@sylphxltd/pdf-reader-mcp
赋予AI代理在项目背景下使用灵活的MCP工具安全读取和提取PDF文件中的信息(文本、元数据、页数)的能力。
使用单一且灵活的工具,使您的AI代理(如Cline)能够在项目上下文中安全地读取和提取PDF文件中的信息(文本、元数据、页数)。
<a href="https://glama.ai/mcp/servers/@sylphlab/pdf-reader-mcp"> <img width="380" height="200" src="https://glama.ai/mcp/servers/@sylphlab/pdf-reader-mcp/badge" alt="PDF Reader Server MCP 服务器" /> </a>在您的MCP主机环境或项目中作为依赖项安装:
bash pnpm add @sylphlab/pdf-reader-mcp # 或者使用 npm install / yarn add
配置您的MCP主机(例如 mcp_settings.json)以使用 npx:
json { "mcpServers": { "pdf-reader-mcp": { "command": "npx", "args": ["@sylphlab/pdf-reader-mcp"], "name": "PDF Reader (npx)" } } }
(确保主机为目标项目设置了正确的 cwd)
拉取镜像:
bash docker pull sylphlab/pdf-reader-mcp:latest
配置您的MCP主机以运行容器,并将您的项目目录挂载到 /app:
json { "mcpServers": { "pdf-reader-mcp": { "command": "docker", "args": [ "run", "-i", "--rm", "-v", "/path/to/your/project:/app", // 或者使用 "$PWD:/app", "%CD%:/app" 等 "sylphlab/pdf-reader-mcp:latest" ], "name": "PDF Reader (Docker)" } } }
克隆:git clone https://github.com/sylphlab/pdf-reader-mcp.git
安装:cd pdf-reader-mcp && pnpm install
构建:pnpm run build
配置MCP主机: json { "mcpServers": { "pdf-reader-mcp": { "command": "node", "args": ["/path/to/cloned/repo/pdf-reader-mcp/build/index.js"], "name": "PDF Reader (Local Build)" } } }
(确保主机为目标项目设置了正确的 cwd)
假设服务器正在运行并在您的MCP主机中已配置:
MCP 请求(从本地PDF获取元数据和第2页文本):
json { "tool_name": "read_pdf", "arguments": { "sources": [ { "path": "./documents/my_report.pdf", "pages": [2] } ], "include_metadata": true, "include_page_count": false, // 默认为true,这里显式设置为false "include_full_text": false // 因为指定了 pages,所以忽略此选项 } }
预期响应片段:
json { "results": [ { "source": "./documents/my_report.pdf", "success": true, "data": { "page_texts": [ { "page": 2, "text": "来自第2页的文本内容..." } ], "info": { ... }, "metadata": { ... } // 按请求不包括 num_pages } } ] }
read_pdf 工具满足多种提取需求(全文、特定页面、元数据、页数)。npx 或 Docker 在 MCP 环境中无缝使用。pdfjs-dist 进行可靠的解析,并使用 Zod 进行输入验证。使用 Vitest 对示例 PDF 进行的初步基准测试显示,各种操作处理效率高:
| 场景 | 每秒操作次数 (hz) | 相对速度 |
|---|---|---|
| 处理不存在的文件 | ~12,933 | 最快 |
| 获取全文内容 | ~5,575 | |
| 获取特定页(第 1 页) | ~5,329 | |
| 获取特定页(第 1 和第 2 页) | ~5,242 | |
| 获取元数据和页数 | ~4,912 | 最慢 |
(更高的 hz 表示更好的性能。结果可能因 PDF 的复杂性和环境而异。)
有关更多详细信息和未来计划,请参阅性能文档。
服务器通过上下文限制优先考虑安全性,通过结构化数据传输提高效率,并简化以方便集成到 AI 代理工作流中。它力求最小依赖性,主要依靠强大的 pdfjs-dist 库。
请参阅完整的设计理念文档。
与直接文件访问(通常不可行)或通用文件系统工具相比,此服务器提供了特定于 PDF 的解析功能。与外部 CLI 工具(如 pdftotext)不同,它提供了一个安全的集成 MCP 接口和结构化输出,增强了 AI 代理的可靠性和易用性。
请参阅完整的比较文档。
有关详细的使用说明、API 参考和指南,请访问**完整文档网站**(部署后更新链接)。
本项目根据 MIT 许可证发布。
一个由FastMCP驱动的服务器,用于通过编程方式创建、编辑和渲染PowerPoint(PPTX)演示文稿,具有幻灯片创建、内容插入和PNG渲染等功能。
一种模型上下文协议服务器,通过 Graph API 实现与 Microsoft 365 服务(Excel、日历、邮件、OneDrive、Teams 等)的交互,使人工智能助手能够通过自然语言管理 Microsoft 365 资源。
暂无描述。
暂无描述。
暂无描述。
暂无描述。