Token导航 LogoToken导航TokenDH.com
Pdf Utilities MCP logo
开发工具未说明官方级别未说明来源级核验

Pdf Utilities MCP

MCP Server

一款VS Code扩展,通过Model Context Protocol (MCP)为GitHub Copilot Chat提供全面的PDF操作工具,支持读取、创建、合并、拆分和编辑PDF文件。

工具数

7

提示词数

0

GitHub Stars

4

资源数

0
PDF处理文档处理TypeScriptVS CodeGitHub CopilotVS Code

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

GleidsonFerSanP

提供方

GleidsonFerSanP

最后核验

2026/5/17 20:19

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

PDF实用程序MCP

一个VS Code扩展,通过模型上下文协议(MCP)为GitHub Copilot Chat提供全面的PDF操作工具。

概述

该项目将MCP服务器与VS Code扩展相结合,使GitHub Copilot等AI助手能够通过自然语言命令处理PDF文件。用户可以直接从聊天界面阅读、创建、合并、拆分和编辑PDF。

建筑

pdf-utilities-mcp/
├── src/                   # MCP Server implementation
│   ├── index.ts          # Server entry point and tool registration
│   └── pdf-tools.ts      # PDF manipulation utilities
├── extension/            # VS Code Extension
│   ├── src/
│   │   ├── extension.ts # Extension activation and MCP integration
│   │   └── types.ts     # TypeScript type definitions
│   ├── resources/
│   │   └── instructions/ # Copilot Chat instruction files
│   └── mcp-server/      # Built MCP server (copied from ../dist)
└── dist/                # Compiled MCP server output

特性

  • 📖 阅读PDF:使用可选的页面范围选择提取文本内容
  • 📊 显示简介:检索元数据(页面、标题、作者、大小等)
  • ✍️ 创建PDF:使用格式选项从文本生成新的PDF
  • 🔗 合并:将多个PDF文件合并为一个
  • ✂️ 分裂:提取特定页面或范围
  • 📝 更新元数据:修改标题、作者、主题、关键字
  • 📄 提取页面:将单个页面另存为单独的文件

安装

对于用户

从VS代码市场安装:

  1. 打开VS代码
  2. 在扩展中搜索“PDF实用程序”
  3. 点击安装

对于开发者

# Clone the repository
git clone https://github.com/GleidsonFerSanP/pdf-utilities-mcp.git
cd pdf-utilities-mcp

# Install MCP server dependencies
npm install

# Build MCP server
npm run build

# Install extension dependencies
cd extension
npm install

# Build extension
npm run compile

# Copy MCP server to extension
cd ..
npm run copy-to-extension

发展

项目结构

MCP服务器 ( src/ ):

  • 使用@modelcontextprotocol/sdk实现标准化工具接口
  • 使用PDF库和PDF解析实现7个PDF工具
  • 通过stdio传输作为Node.js进程运行

VS代码扩展 ( extension/ ):

  • 使用VS Code的lm.registerMcpServerDefinitionProvider注册MCP服务器
  • 提供用于配置和服务器管理的命令
  • 包括聊天说明,以实现最佳的Copilot集成

建筑

# Build MCP server
npm run build

# Build extension
cd extension
npm run compile

# Copy server to extension folder
cd ..
npm run copy-to-extension

测试

# Test MCP server directly
node dist/index.js

# Package extension for testing
cd extension
npm run package  # Creates .vsix file

# Install .vsix in VS Code for testing
# Extensions > ... > Install from VSIX

开发工作流程

  1. 在中更改MCP服务器 src/
  2. npm run build 编译
  3. npm run copy-to-extension 更新扩展名
  4. 重新加载VS代码窗口以测试更改
  5. 在输出面板>“PDF实用程序”中检查日志

出版

先决条件

  1. 在以下位置创建VS Code Publisher帐户https://marketplace.visualstudio.com/
  2. 生成个人访问令牌(PAT)
  3. 更新 extension/.env 与您的PAT

发布步骤

# Build everything
npm run build
cd extension
npm run compile
cd ..
npm run copy-to-extension

# Package extension
cd extension
npm run package

# Verify the .vsix file works
# Install it manually in VS Code and test

# Publish to marketplace
npm run publish

版本管理

更新两个版本:

  • package.json (根)
  • extension/package.json

遵循语义版本控制:MAJOR。未成年人。补丁

配置

扩展设置

  • pdfUtilities.autoStart:自动启动MCP服务器(默认值:true)
  • pdfUtilities.logLevel:记录详细程度(默认值:info)
  • pdfUtilities.maxPdfSize:最大文件大小(MB)(默认值:50)

MCP服务器配置

MCP服务器是通过扩展配置的,不需要单独配置。

API文档

工具:read_pdf

从PDF文件中提取文本。

参数:

  • filePath (字符串,必填):PDF的绝对路径
  • pageRange (字符串,可选):要提取的页面(例如,“1-5”、“1、3、5-10”)

退货:

{
  text: string;
  pages: number;
  info: PDFInfo;
}

工具:get_pdf_info

获取PDF元数据和信息。

参数:

  • filePath (字符串,必填):PDF的绝对路径

退货:

{
  pages: number;
  title?: string;
  author?: string;
  subject?: string;
  creator?: string;
  producer?: string;
  creationDate?: Date;
  modificationDate?: Date;
  fileSize: number;
  filePath: string;
}

工具:create_pdf

从文本内容创建新的PDF。

参数:

  • content (字符串,必填):文本内容
  • outputPath (字符串,必填):保存位置
  • options (对象,可选):格式选项

- title, author, subject (字符串):元数据 - fontSize (数字):文本大小(默认值:12) - pageSize (字符串):页面大小(默认:“A4”)

退货:

{
  success: boolean;
  path: string;
  pages: number;
}

工具:merge_pdfs

合并多个PDF。

参数:

  • filePaths (string\[\],必填):要合并的PDF
  • outputPath (字符串,必填):输出位置

退货:

{
  success: boolean;
  path: string;
  pages: number;
}

工具:split_pdf

将页面提取为新的PDF。

参数:

  • filePath (字符串,必填):源PDF
  • pageRange (字符串,必填):要提取的页面
  • outputPath (字符串,必填):输出位置

退货:

{
  success: boolean;
  path: string;
  pages: number;
}

工具:update_pdf_metadata

修改PDF元数据。

参数:

  • filePath (字符串,必填):要更新的PDF
  • metadata (对象,必填):要更新的字段

- title, author, subject, keywords (字符串)

  • outputPath (字符串,可选):保存位置(默认为覆盖)

退货:

{
  success: boolean;
  path: string;
}

工具:提取_页面

将页面解压缩为单独的文件。

参数:

  • filePath (字符串,必填):源PDF
  • pages (number\[\],必填):要提取的页码
  • outputDir (字符串,必填):输出目录
  • prefix (字符串,可选):文件名前缀(默认:“page”)

退货:

{
  success: boolean;
  files: string[];
}

故障排除

MCP服务器未启动

检查输出面板:

View > Output > Select "PDF Utilities"

查找初始化消息。如果服务器发生故障:

  1. 验证 mcp-server/index.js 存在于扩展文件夹中
  2. 运行重建: npm run build && npm run copy-to-extension
  3. 重新加载VS代码

Copilot中没有工具

  1. 确保扩展已激活(检查扩展面板)
  2. 验证MCP API可用(需要VS代码1.85+)
  3. 检查Copilot Chat是否已启用
  4. 重新启动副本:命令面板>“GitHub副本:重新启动语言服务器”

构建错误

常见问题:

  • TypeScript错误:运行 npm install 在根文件夹和扩展文件夹中
  • 缺少依赖项: npm install 在正确的目录中
  • 路径问题:使用 npm run copy-to-extension 同步文件

贡献

  1. 分叉存储库
  2. 创建要素分支
  3. 进行更改
  4. 如果适用,添加测试
  5. 提交拉取请求

请遵循现有的代码样式和约定。

许可证

MIT许可证-有关详细信息,请参阅许可证文件。

支持

积分

______________________________________________________________________

备注:此项目需要GitHub Copilot Chat和支持MCP的VS Code 1.85+。

目录标签

目录标签

PDF处理文档处理TypeScriptVS CodeGitHub Copilot本地部署VSCode扩展GitHubCopilotMCP协议文档管理

支持客户端

VS Code

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

7

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明none部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP