关于 groupdocs-watermark-mcp
groupdocs-watermark-mcp 将 GroupDocs.Watermark 的水印处理能力提供给 AI Agent,可添加、查找和移除文档水印。适用于需要通过 MCP 客户端处理多种文档和图像格式的用户。
主要功能
- 01添加文本水印
- 02添加图像水印
- 03搜索并查看现有水印
- 04移除全部或匹配水印
- 05查询文件类型和页面尺寸
适用场景
- 01为报告添加草稿标记
- 02在合同中添加徽标水印
- 03检查文档中的水印
- 04清除旧水印后交付文件
MCP 相关
该 MCP 服务提供添加、搜索、移除水印及获取文档信息的工具,供 MCP 客户端调用。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
GroupDocs.Watermark MCP 服务
通过 MCP 服务将 GroupDocs.Watermark 作为 AI 可调用工具提供给 Claude、Cursor、GitHub Copilot 和其他 MCP Agent。
安装
一键安装会预填所有受支持的设置:安装后编辑占位符文档文件夹(输出默认使用同一文件夹);GROUPDOCS_LICENSE_PATH 为空时将以评估模式运行——指定许可证路径即可解除限制。
更多客户端 - Claude Code、Codex CLI、Visual Studio 2022、Cursor、Windsurf、Cline 和 JetBrains Rider 的现成配置位于
install/generated/。
需要 .NET 10 SDK。
直接使用 dnx 运行(推荐——无需安装):
dnx GroupDocs.Watermark.Mcp --yes
每次调用都会拉取最新的稳定版本。若要固定到特定
版本(建议用于共享配置和 CI),请追加 @<version>:
dnx [email protected] --yes
或安装为全局 dotnet 工具:
dotnet tool install -g GroupDocs.Watermark.Mcp
groupdocs-watermark-mcp
或通过 Docker 运行:
docker run --rm -i \
-v $(pwd)/documents:/data \
ghcr.io/groupdocs-watermark/watermark-net-mcp:latest
原生环境依赖项
底层 GroupDocs 引擎在某些操作中使用 System.Drawing(GDI+)。在 Linux 或 macOS 上原生运行服务(通过 dnx 或全局 dotnet 工具)时,请先安装原生 libgdiplus 库:
| 平台 | 设置 |
|---|---|
| Windows | 无需操作 — GDI+ 已内置于操作系统中。 |
| Linux | sudo apt-get install -y libgdiplus libfontconfig1 ttf-mscorefonts-installer |
| macOS | brew install mono-libgdiplus |
| Docker | 无需操作 — 镜像已包含 libgdiplus。 |
如果在 Linux/macOS 上跳过此步骤,工具响应中会出现 DllNotFoundException: libgdiplus。在 Linux/macOS 上最简单的零配置选项是 Docker 镜像。
可用的 MCP 工具
| 工具 | 描述 |
|---|---|
AddWatermark | 为文档添加文本水印(Arial,可配置字号和旋转角度),并将添加水印后的文件保存到存储中 |
AddImageWatermark | 为文档添加图片水印(徽标、签名扫描件、印章),并保存添加水印后的文件。可配置不透明度和旋转角度 |
SearchWatermarks | 查找文档中现有的水印(文本和图片),并以 JSON 格式返回其详细信息(类型、文本、页码、位置、大小、旋转角度) |
RemoveWatermarks | 移除文档中现有的水印,并保存清理后的副本。可选的文本筛选条件仅用于移除匹配的水印 |
GetDocumentInfo | 以 JSON 格式返回文档的文件类型、页数和每页尺寸 — 不会修改文档 |
所有工具均支持 PDF、DOCX、XLSX、PPTX、PNG、JPG、VSDX 以及 50 多种其他文档和图片格式。
面向 AI Agent 的提示词示例
连接服务后,将以下任一示例复制到 Claude Desktop、Cursor 或 GitHub Copilot Chat 中。AI Agent 会自动选择合适的工具和参数 — 文件名会根据 GROUPDOCS_MCP_STORAGE_PATH 进行解析。
- 添加 DRAFT 文本水印:“为 report.pdf 添加文本为 ‘DRAFT’ 的水印。”
- 加盖徽标图片:“将 company-logo.png 作为图片水印添加到 contract.docx 的每一页,不透明度设为 30%。”
- 检查现有水印:“invoice.pdf 中有哪些水印?”
- 移除旧水印:“移除 final-draft.docx 中的所有水印,这样我就可以交付了。”
- 检查文档结构:“presentation.pptx 有多少页?每页尺寸是多少?”
许可
MCP 服务本身采用 MIT 许可证;底层 GroupDocs.Watermark 引擎在生产环境中使用需要许可证。如果没有许可证,服务将以评估模式运行:
- 引擎会在处理后的输出中额外添加评估水印。
- 单个服务进程最多可加载 10 个文档;超出后,后续调用将失败,直到服务重启。
有两种方式为服务授权。
许可证文件 — 将 GROUPDOCS_LICENSE_PATH 指向你的 GroupDocs.Total.lic。可离线使用。
计量(按使用付费) — 同时设置 GROUPDOCS_METERED_PUBLIC_KEY 和
GROUPDOCS_METERED_PRIVATE_KEY。你只需为实际处理的内容付费,这很适合 AI
Agent,因为它们的使用量突发且难以提前预测。如果同时配置了计量密钥对和许可证文件,计量模式优先,许可证文件将被忽略。
**计量模式需要出站网络连接。**使用量会报告给 GroupDocs 服务器,因此,隔离网络或受防火墙限制的部署必须允许此类出站连接 — 或改用许可证文件。
随时调用 get_license_status 工具,查看当前启用的模式;若为计量模式,还可查看已消耗的用量和剩余额度。
避免私钥出现在配置中
计量私钥属于机密信息。MCP 客户端配置是磁盘上的纯文本文件,而且通常会提交项目级 .mcp.json,因此请按以下优先顺序处理:
- 在操作系统环境中设置变量,完全不将其写入配置。 stdio MCP 服务会继承客户端的环境,因此此方法适用于所有客户端。
在 macOS 上请注意,从 Finder 启动的应用不会继承 Shell 导出的变量——请使用
launchctl setenv,或从终端启动客户端。 - 间接引用变量,前提是客户端支持(Claude Code 会展开
${VAR}; VS Code 使用${env:VAR}和${input:...})。 - 在用户级配置中填写字面值(例如
~/.claude.json),适用于单个开发者。 - 切勿在项目级
.mcp.json中提交字面密钥。
对于 Docker,请转发这些值,不要将其写入任何文件:
docker run --rm -i \
-e GROUPDOCS_METERED_PUBLIC_KEY -e GROUPDOCS_METERED_PRIVATE_KEY \
-v /path/to/documents:/data \
ghcr.io/groupdocs-watermark/watermark-net-mcp:latest
如需使用许可证文件解除限制:
配置
| 变量 | 说明 | 默认值 |
|---|---|---|
GROUPDOCS_MCP_STORAGE_PATH | 输入和输出文件的基础文件夹 | 当前目录 |
GROUPDOCS_MCP_OUTPUT_PATH | (可选) 输出文件的单独文件夹 | GROUPDOCS_MCP_STORAGE_PATH |
GROUPDOCS_LICENSE_PATH | GroupDocs 许可证文件的路径。在评估模式下,输出文档可能会在用户请求添加的水印之外,额外包含评估水印 | (评估模式) |
GROUPDOCS_METERED_PUBLIC_KEY | 计量公钥。需要同时提供私钥;优先于许可证文件 | (未设置) |
GROUPDOCS_METERED_PRIVATE_KEY | 计量私钥。机密信息——请参阅许可 | (未设置) |
在 Claude Desktop 中使用
{
"mcpServers": {
"groupdocs-watermark": {
"type": "stdio",
"command": "dnx",
"args": ["GroupDocs.Watermark.Mcp", "--yes"],
"env": {
"GROUPDOCS_MCP_STORAGE_PATH": "/path/to/documents"
}
}
}
}
如需固定到特定版本,请在
args中将"GroupDocs.Watermark.Mcp"替换为"[email protected]"。建议在共享配置或已提交的配置中固定版本, 以避免意外升级。
在 VS Code / GitHub Copilot 中使用
NuGet.org 会在软件包页面生成可直接使用的 mcp.json 片段。
将其直接复制到 .vscode/mcp.json 中。
或者,手动添加到 .vscode/mcp.json:
{
"inputs": [
{
"type": "promptString",
"id": "storage_path",
"description": "Base folder for input and output files.",
"password": false
}
],
"servers": {
"groupdocs-watermark": {
"type": "stdio",
"command": "dnx",
"args": ["GroupDocs.Watermark.Mcp", "--yes"],
"env": {
"GROUPDOCS_MCP_STORAGE_PATH": "${input:storage_path}"
}
}
}
}
固定版本的规则与上文相同——将
"GroupDocs.Watermark.Mcp"替换为"[email protected]",即可锁定到特定版本。
使用 Docker Compose
cd docker
docker compose up
编辑 docker/docker-compose.yml,将卷指向本地文档文件夹。
文档与指南
分步部署指南和已发布软件包的集成测试套件位于配套仓库 GroupDocs.Watermark.Mcp.Tests:
- 从 NuGet 安装 —
dnx、全局工具、固定版本与始终使用最新版本 - 通过 Docker 运行
- 在 MCP registry 上验证
- 与 Claude Desktop 配合使用
- 与 VS Code / GitHub Copilot 配合使用
- 运行集成测试
该仓库还会在 CI 中针对 Linux、macOS 和 Windows 上已发布的 NuGet 软件包运行所有宣传的工具,因此上述代码片段均已在每次发布时经过端到端验证。
许可证
MIT — 参见 LICENSE
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。