MCP server for using the Foxit Cloud API
Project description
MCP server for using the Foxit Cloud API
Requirements
- Node.js >= 18.0.0
Features
- PDF创建和转换:支持从其他文件格式创建PDF文件,并将PDF转换为其他格式,如HTML、Word等。
- PDF合并和拆分:支持将多个PDF文件合并为一个,或将一个PDF文件拆分为多个。
- PDF压缩和优化:通过图像压缩和优化来减小PDF文件大小,扁平化,线性化文档等功能
- PDF安全:提供密码保护和高级加密功能,确保PDF文件的安全性。
Tools
combine_pdf
将压缩或归档文件中的多个PDF文档,合并为一个PDF文档。使用示例1:把<absolute_path/file_name.zip>中的PDF文档合并为一个PDF。使用示例2:把<url/file_name.pdf>, <url/file_name1.pdf>合并为一个PDF。
参数:
- path: string - 压缩或归档文件的绝对路径或多个URL地址
- config: object - 配置项
- isAddBookmark: boolean - 是否添加书签
- isAddTOC: boolean - 是否添加目录
- isContinueMerge: boolean - 如果发生错误是否继续合并
- isRetainPageNum: boolean - 是否保留页面逻辑号
- bookmarkLevels: enum('0', '1', '2', '3', '4', '5') - 是否显示目录的等级
compare_pdf
逐页比较一个PDF文档(作为“基准文档”)与另一个PDF文档(作为“比较文档”)。使用示例1:把<absolute_path/file_name.pdf>与<absolute_path/file_name.pdf>进行比较。使用示例2:把<absolute_path/file_name.pdf>与<absolute_path/file_name.pdf>进行比较,比较结果为:pdf。使用示例3:把<url/file_name.pdf>与<url/file_name.pdf>进行比较。
参数:
- basePath: string - 基准PDF文档的绝对路径或URL地址
- comparePath: string - 比较PDF文档的绝对路径或URL地址
- resultType: enum('json', 'pdf') - 结果类型
- compareType: enum('all', 'text') - 比较类型
compress_pdf
使用指定的压缩级别压缩PDF文档。使用示例1:压缩<absolute_path/file_name.pdf>。使用示例2:压缩<absolute_path/file_name.pdf>,压缩级别为:high。使用示例3:压缩<url/file_name.pdf>。
参数:
- path: string - PDF文档的绝对路径或URL地址
- compressionLevel: enum('low', 'medium', 'high') - 压缩级别
convert_pdf
转换PDF文档到其他格式,支持格式:word, excel, ppt, image, text, html。使用示例1:把<absolute_path/file_name.pdf>转换为word。使用示例2:把<absolute_path/file_name.pdf>转换为text。使用示例3:把<url/file_name.pdf>转换为excel。
参数:
- path: string - PDF文档的绝对路径或URL地址
- format: enum('word', 'excel', 'ppt', 'image', 'text', 'html') - 转换后的文件类型
create_pdf
从其他格式,创建或转换为PDF文档,支持格式:word,excel,ppt,image,text。使用示例1:把<absolute_path/file_name.docx>转换为PDF。使用示例2:把<absolute_path/file_name.txt>转换为PDF。使用示例3:把<url/file_name.png>转换为PDF。
参数:
- path: string - 转换文件的绝对路径或URL地址
- format: enum('word', 'excel', 'ppt', 'image', 'text') - 输入的文件类型
create_pdf_from_html
从HTML文件或指定站点URL创建PDF。使用示例1:把<absolute_path/file_name.html>转换为PDF。使用示例2:把<url>转换为PDF。使用示例3:把<url>转换为PDF,页面模式为:单页。使用示例4:把<url/flie_name.html>转换为PDF,输入格式为:html。
参数:
- format: enum('url', 'html', 'htm', 'shtml') - 输入格式,如果是url,则url参数不能为空,否则path参数不能为空
- path: string - HTML文件的绝对路径或URL地址
- url: string - URL
- config: object - 配置项
- width: number - 页面宽度,该值必须大于16,默认值为900(单位为1/72英寸)
- height: number - 页面高度,该值必须大于16,默认值为600(单位为1/72英寸)
- rotate: number - 页面旋转,0:0度,1:90度,2:180度,3:270度
- pageMode: number - 页面模式,0:单页,1:多页
- pageScaling: number - 页面缩放,1:适应页面,2:适应内容
extract_pdf
提取PDF文档中的文本或图像。使用示例1:提取<absolute_path/file_name.pdf>中的文本。使用示例2:提取<absolute_path/file_name.pdf>中的图片。使用示例3:提取<url/file_name.pdf>中的文本。
参数:
- path: string - PDF文档的绝对路径或URL地址
- mode: enum('extractImages', 'extractText') - 提取模式,extractText表示提取文本,extractImages表示提取图片
- pageRange: string - 提取页面范围,A、B和C以逗号分隔。A、B或C可以取数字,如99,也可以取范围,如1-30。如果为空,则提取整个文档
flatten_pdf
使PDF文档页面扁平化,使注释和表单字段成为页面内容的一部分。使用示例1:把<absolute_path/file_name.pdf>扁平化。使用示例2:把<url/file_name.pdf>扁平化。
参数:
- path: string - PDF文档的绝对路径或URL地址
- pageRange: string - PDF文档的页面范围。文档中的页面可以按任何顺序引用,从开始或结束都可以。例如:1、2、3、7-9,全部。如果未指定,则执行所有页面
linearize_pdf
线性化PDF文档。使用示例1:把<absolute_path/file_name.pdf>线性化。使用示例2:把<url/file_name.pdf>线性化。
参数:
- path: string - PDF文档的绝对路径或URL地址
manipulation_pdf
操作PDF文档,例如删除页面,旋转页面,移动页面。使用示例1:删除<absolute_path/file_name.pdf>的第1页。使用示例2:把<absolute_path/file_name.pdf>的第2页移到第1页。使用示例3:删除<url/file_name.pdf>的第1页。
参数:
- path: string - PDF文档的绝对路径或URL地址
- config: object - PDF文档操作配置
- pageAction: enum('delete', 'rotate', 'move') - 页面操作类型
- pages: array(number) - 操作的页码,如[0,1,2,3],页面索引从0开始
- angle: number - 页面旋转,0:0度,1:90度,2:180度,-1:270度
- destination: number - 目标页码,如果"页面操作类型"是"移动",它是必需的
protect_pdf
使用用户或/和所有者密码保护PDF文档,并对某些功能设置限制。使用示例1:给<absolute_path/file_name.pdf>设置用户密码,密码为:123456。使用示例2:给<absolute_path/file_name.pdf>设置所有者密码,密码为:123456,权限设置为:不允许修改PDF内容。使用示例3:给<url/file_name.pdf>设置用户密码,密码为:123456。
参数:
- path: string - PDF文档的绝对路径或URL地址
- passwordProtection: object - 密码保护设置,必须至少设置一个密码
- userPassword: string - 用户密码
- ownerPassword: string - 所有者密码
- permission: object - 权限设置
- PRINT_LOW_QUALITY: boolean - 以正常模式打印PDF文档
- PRINT_HIGH_QUALITY: boolean - 以高质量打印PDF文档
- EDIT_CONTENT: boolean - 修改PDF内容。设置该值后,用户可以通过操作修改PDF文档的内容
- EDIT_FILL_AND_SIGN_FORM_FIELDS: boolean - 填写PDF表格。如果设置了该值,用户可以填写交互式表单字段(包括签名字段)
- EDIT_ANNOTATION: boolean - 操作文本注释和填写交互式表单字段。如果还设置了"修改PDF内容"值,则用户可以创建或修改交互式表单字段
- EDIT_DOCUMENT_ASSEMBLY: boolean - 组装PDF文档。如果设置了这个值,就可以组装文档(插入、旋转或删除页面以及创建书签或缩略图),而不管是否设置了"修改PDF内容"值
- COPY_CONTENT: boolean - 残疾的支持。如果设置了此值,用户可以提取文本和图形,以支持残疾用户的可访问性或用于其他目的
- encryptionAlgorithm: enum('AES_128', 'AES_256', 'RC4') - 加密算法
remove_password
从PDF文档中删除密码安全性。使用示例1:移除<absolute_path/file_name.pdf>的用户密码,密码为:123456。使用示例2:移除<absolute_path/file_name.pdf>的所有者密码,密码为:123456。使用示例3:移除<url/file_name.pdf>的用户密码,密码为:123456。
参数:
- path: string - PDF文档的绝对路径或URL地址
- password: string - PDF文档密码。如果PDF受所有者密码保护,则用户需要在该字段中使用所有者密码来取消文档安全性,否则用户需要传入用户密码来打开文档
split_pdf
将PDF文档拆分为多个较小的文档。使用示例1:把<absolute_path/file_name.pdf>拆分为多个文档,拆分后的页数为:3。使用示例2:把<url/file_name.pdf>拆分为多个文档,拆分后的页数为:2。
参数:
- path: string - PDF文档的绝对路径或URL地址
- config: object - 配置项
- pageCount: number - 拆分后的页数
在 VS Code 的 GitHub Copilot 中使用
打开 VS Code 配置文件 settings.json,添加以下配置,并替换其中的 your_client_id:
- Windows, MacOS, Linux
{
"mcp": {
"servers": {
// 其他配置 ...
"mcp-server-foxit-cloudapi": {
"command": "npx",
"args": [
"-y",
"@foxitsoftware/mcp-server-foxit-cloudapi"
],
"env": {
"CLIENT_ID": "your_client_id"
}
}
// 其他配置 ...
}
}
}
在 VS Code 的 Cline 中使用
打开 Cline MCP 配置文件 cline_mcp_settings.json, 添加以下配置,并替换其中的 your_client_id:
- Windows
{
"mcpServers": {
// 其他配置 ...
"mcp-server-foxit-cloudapi": {
"autoApprove": [],
"disabled": false,
"timeout": 60,
"command": "cmd",
"args": [
"/c",
"npx",
"-y",
"@foxitsoftware/mcp-server-foxit-cloudapi"
],
"env": {
"CLIENT_ID": "your_client_id"
},
"transportType": "stdio"
}
// 其他配置 ...
}
}
- MacOS, Linux
{
"mcpServers": {
// 其他配置 ...
"mcp-server-foxit-cloudapi": {
"autoApprove": [],
"disabled": false,
"timeout": 60,
"command": "npx",
"args": [
"-y",
"@foxitsoftware/mcp-server-foxit-cloudapi"
],
"env": {
"CLIENT_ID": "your_client_id"
},
"transportType": "stdio"
}
// 其他配置 ...
}
}
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mcp_server_foxit_cloudapi-0.0.2.tar.gz.
File metadata
- Download URL: mcp_server_foxit_cloudapi-0.0.2.tar.gz
- Upload date:
- Size: 31.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.6.16
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8e21826ab2472d7195954c6b856f92b19fc5cac2b1ce0bc439ab05fc3809876b
|
|
| MD5 |
623a96e58865b3105985d2b8ecc9d341
|
|
| BLAKE2b-256 |
f7e55c1ffa31ea36970494a8b4d545334f02b68ba85bfdadeabf4291d49ead0b
|
File details
Details for the file mcp_server_foxit_cloudapi-0.0.2-py3-none-any.whl.
File metadata
- Download URL: mcp_server_foxit_cloudapi-0.0.2-py3-none-any.whl
- Upload date:
- Size: 23.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.6.16
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
10915c74c8de0623c1081cbc16fd0d66323e9934986cca41c0f1dd578a084267
|
|
| MD5 |
203f7888e543bd5c19c5a172c458a91f
|
|
| BLAKE2b-256 |
2dce7436dcf15ddb35cee44c912e87cf27f901b4b9a0e139925c0d40de892f9e
|