关于 Plantuml Mcp Server
Plantuml Mcp Server 是面向 Claude Desktop 和 Claude Code 的 MCP 服务,用于生成和分享 PlantUML 图表。它还可编码、解码图表文本,并提供处理语法错误的提示词。
主要功能
- 01生成图表并提供 SVG 或 PNG 链接
- 02在本地保存 SVG 和 PNG 文件
- 03编码和解码 PlantUML 文本
- 04提供语法错误处理提示词
适用场景
- 01创建时序图、类图和架构图
- 02通过编码链接分享图表文本
- 03检查并修正常见 PlantUML 语法问题
MCP 相关
该服务向 Claude Desktop、Claude Code 等 MCP 客户端提供图表生成、编码和解码工具,以及 plantuml_error_handling 提示词。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
3收录的工具列表 · 更新于 3 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| plantuml_code | string | 是 | PlantUML 图表代码。生成图表 URL 前会自动验证是否存在语法错误。 |
| format | enum | 否 | 输出图像格式(SVG 或 PNG)svg | png |
| output_path | string | 否 | 可选。用于在本地保存图表的路径。会自动创建所有必需的父目录。默认限制在当前工作目录内。设置 PLANTUML_ALLOWED_DIRS 环境变量(以冒号分隔的路径,或使用 "*" 表示不受限制)以允许其他目录。仅允许使用 .svg 和 .png 扩展名。 |
详细介绍
PlantUML MCP 服务
一个 Model Context Protocol (MCP) 服务,为 Claude Desktop 和 Claude Code 提供 PlantUML 图表生成功能。
可用工具
generate_plantuml_diagram- 生成图表并获取可嵌入的 URL(SVG/PNG),也可选择保存到本地encode_plantuml- 编码 PlantUML 代码,以便通过 URL 分享decode_plantuml- 解码经过编码的字符串中的 PlantUML
可用提示词
plantuml_error_handling- 处理 PlantUML 语法错误并实现自动修复工作流的指南
此提示词会向 Claude 实例提供全面的说明,指导其如何:
- 使用服务原生验证功能检测 PlantUML 语法错误
- 为常见语法问题实现智能自动修复工作流
- 解析结构化错误响应并应用适当的修正
- 通过重试逻辑妥善处理验证失败
此提示词可让 Claude 自动检测并修复常见的 PlantUML 错误,例如缺少标签、箭头语法无效、关键字拼写错误以及缺少引号,从而使 PlantUML 图表生成更加可靠且易用。
快速设置
适用于 Claude Code
# Using default PlantUML server
claude mcp add plantuml --scope user --env PLANTUML_SERVER_URL=https://www.plantuml.com/plantuml -- npx plantuml-mcp-server
适用于 Claude Desktop
将以下内容添加到 Claude Desktop MCP 配置文件中(macOS 上的路径为 ~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"plantuml": {
"command": "npx",
"args": ["plantuml-mcp-server"],
"env": {
"PLANTUML_SERVER_URL": "https://www.plantuml.com/plantuml"
}
}
}
}
若要使用自己的 PlantUML 服务,请更改 PLANTUML_SERVER_URL 环境变量。
然后重启 Claude Desktop/Code,以启用 MCP 服务。
你可以做什么
完成设置后,你可以让 Claude:
- 生成 PlantUML 图表并获取可嵌入的 SVG/PNG URL
- 创建时序图、类图和架构图
- 使用高级 PlantUML 功能,例如
!include指令和外部库 - 编码/解码 PlantUML,以便通过 URL 分享
- 在本地保存图表,并受安全路径限制
在本地保存图表
generate_plantuml_diagram 工具支持通过 output_path 参数将图表保存到本地文件。
**安全性:**默认情况下,文件只能保存在当前工作目录中。仅允许使用 .svg 和 .png 扩展名。
若要允许其他目录,请设置 PLANTUML_ALLOWED_DIRS 环境变量:
# Allow specific directories (colon-separated)
PLANTUML_ALLOWED_DIRS=/home/user/diagrams:/tmp/output
# Allow any directory (use with caution)
PLANTUML_ALLOWED_DIRS=*
示例
plantuml-mcp-server 的 C4 图
> add c4 diagram for this project in readme 'C4 diagram for plantuml-mcp-server' section
plantuml-mcp-server 的序列图
> add sequence diagram in readme in architecture section
OAuth2 授权码流程图
> show me basic oauth2 flow png, open it in browser
开发环境设置
先决条件
- Node.js 22.12.0 或更高版本
- npm
本地安装
# Clone and setup
git clone https://github.com/mzagar/plantuml-mcp-server.git
cd plantuml-mcp-server
make setup
开发命令
# Show all available commands
make help
# Build and run all tests
make clean build test-all
本地 MCP 冒烟测试
通过 mcpc 测试此检出目录中的已编译服务:
需要 Node.js 22.12.0 或更高版本、npm、Make 和网络连接。
# Install project dependencies, then build and test the local server
npm ci --ignore-scripts --no-audit --no-fund --engine-strict
make test-mcpc
如果 mcpc 不在 PATH 中,目标会通过 npm install --global --no-audit --no-fund @apify/mcpc 安装官方 Apify CLI。它会复用现有安装,不会升级,并在测试前检查 mcpc --version。此冒烟测试已通过 mcpc 0.6.0 验证。
这是全局 CLI 安装,不是项目依赖。安装需要拥有向 npm 全局前缀写入的权限。目标绝不会使用 sudo。如果安装失败,或 CLI 仍不在 PATH 中,测试会停止并显示说明。你也可以通过 npm install -g @apify/mcpc 手动安装。
make test-mcp 是一个别名。make test-all 会运行单元测试/类型检查和此 MCP 测试,包括 CLI 安装检查。直接运行 node scripts/test-mcpc.mjs 不会安装 CLI。
此测试会验证全部三个工具、提示词、Unicode 往返、图表 URL、SVG/PNG 文件、C4 渲染、语法错误和输出路径限制。
测试始终通过 https://www.plantuml.com/plantuml 渲染合成图表,因此需要网络连接。它不会使用已发布的 npm 服务或现有用户会话。
运行程序会创建自己的临时配置、私有 MCPC_HOME_DIR、工作目录和输出目录。其 @local 会话与用户会话隔离,并会在成功、失败或中断后关闭。图像和 results.json 会保留在命令打印的制品目录中。
成功时会以 PASS local mcpc smoke test 结束,退出代码为 0。缺少前置条件、网络错误、断言失败或清理失败都会返回非零退出代码。
如需使用受信任的企业 CA,请运行:
NODE_EXTRA_CA_CERTS=/absolute/path/to/trusted-ca.pem make test-mcpc
运行程序会将此设置转发给服务。请勿禁用 TLS 验证。如果清理失败,请使用它打印的私有主目录:MCPC_HOME_DIR="<artifact-directory>/mcpc" mcpc close @local。请勿关闭默认 mcpc 主目录中的会话。
Agent 说明见 AGENTS.md。
环境变量
| 变量 | 说明 | 默认值 |
|---|---|---|
PLANTUML_SERVER_URL | PlantUML 服务 URL | https://www.plantuml.com/plantuml |
PLANTUML_ALLOWED_DIRS | output_path 的其他目录(以冒号分隔,或使用 * 表示任意目录) | 仅当前工作目录 |
许可证
MIT 许可证——详情请参阅 LICENSE 文件。
MCP 注册目录列表
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。