内容
# MCP Kroki 服务器
MCP(模型上下文协议)服务器,用于使用 Kroki.io 将 Mermaid 图表转换为 SVG 图像。
## 功能
- 使用 Kroki.io 生成图表的 URL
- 下载图表为 SVG、PNG、PDF 或 JPEG 文件
- 支持多种图表格式:
- Mermaid
- PlantUML
- Graphviz
- 许多其他格式(请参阅 Kroki.io 文档)
## 安装
### 本地安装
```bash
git clone https://github.com/tkoba1974/mcp-kroki.git
cd mcp-kroki
npm install
npm run build
```
## 用法
服务器提供两个主要工具:
### 1. 生成图表 URL
使用 Kroki.io 为图表生成 URL。
参数:
- `type`:图表类型(例如“mermaid”、“plantuml”)
- `content`:指定格式的图表内容
- `outputFormat`(可选):输出格式(svg、png、pdf、jpeg、base64)
### 2. 下载图表
将图表下载到本地文件。
参数:
- `type`:图表类型(例如“mermaid”、“plantuml”)
- `content`:指定格式的图表内容
- `outputPath`:保存图表的路径
- `outputFormat`(可选):输出格式(svg、png、pdf、jpeg)
- `scale`(可选,数字,默认值:1.0):图表尺寸的缩放因子。目前仅通过尝试修改宽度/高度属性影响 SVG 输出。最小值为 0.1。
## 示例
```javascript
// 为 Mermaid 图表生成 URL
const result = await callTool('generate_diagram_url', {
type: 'mermaid',
content: 'graph TD; A-->B; B-->C; C-->D;',
outputFormat: 'svg'
});
// 下载 Mermaid 图表
const result = await callTool('download_diagram', {
type: 'mermaid',
content: 'graph TD; A-->B; B-->C; C-->D;',
outputPath: '/path/to/diagram.svg'
});
```
## 工作原理
服务器使用 Kroki.io API 转换图表。图表内容在发送到 Kroki.io 之前会被压缩和编码。
## 与 Claude Desktop 配合使用
将以下内容添加到您的 Claude Desktop 配置文件(claude_desktop_config.json)中:
### 本地安装:
```json
{
"mcpServers": {
"mcp-kroki": {
"command": "node",
"args": ["/path/to/mcp-kroki/build/index.js"]
}
}
}
```
### npx:
```json
{
"mcpServers": {
"mcp-kroki": {
"command": "npx",
"args": [
"-y",
"@tkoba1974/mcp-kroki"
]
}
}
}
```
## 许可证
MIT