咪咪熊猫MCP服务器
 ](https://nodejs.org/)
A. 模型上下文协议(MCP) 服务器,提供对Mimi Panda API的无缝访问,使Claude等人工智能助手能够与着色页面、按数字绘制、人工智能图像生成和图像处理服务进行交互。
特性
- 🎨 绘画彩页:将图像转换为各种样式的着色页
- 🖼️ 数字绘画:根据照片或提示生成数字图像
- ⬇️ PBN下载:通过API直接下载完成的PBN图像(SVG、PNG、PDF)和调色板(PDF、JPEG、CSV、Procreate、GIMP、Krita)
- 🤖 AI图像生成:根据文本提示创建图像
- 🎭 AI过滤器:对图像应用艺术滤镜
- 📈 图像放大:增强和升级图像,最高可达4倍
- 🔐 认证:内置支持API令牌身份验证
- 📋 路由发现:列出并探索可用的API端点
先决条件
- Node.js 18+ (要求
@modelcontextprotocol/sdk) - 访问Mimi Panda API(自托管或云实例)
安装
# Clone the repository
git clone https://github.com/mimipanda/mcp-server.git
cd mcp-server
# Install dependencies
npm install配置
可以使用环境变量配置服务器。复制 .env.example 到 .env 并更新您的值,或在您的环境中设置它们:
| 变量 | 目的 | 默认值 |
|---|---|---|
MCP_API_BASE_URL | Mimi Panda API端点的基本URL(例如。 https://mimi-panda.com) | http://localhost |
MCP_API_PREFIX | API前缀附加到每个请求 | /api |
MCP_API_TOKEN | 经过身份验证的路由的可选默认承载令牌(稍后可以通过以下方式检索 auth/login) | _取消设置_ |
MCP_API_HEADERS | 带有额外标头的JSON对象(例如。 {"X-Api-Key":"secret"}) | {} |
MCP_API_TIMEOUT | 请求超时(毫秒)(1000–120000) | 60000 |
示例 .env 文件
复制 .env.example 到 .env 并自定义:
cp .env.example .env然后编辑 .env 带着你的价值观(你可以离开 MCP_API_TOKEN 空白,直到您从auth API获得一个):
MCP_API_BASE_URL=https://mimi-panda.com
MCP_API_PREFIX=/api
MCP_API_TOKEN=your-api-token-here
MCP_API_TIMEOUT=60000登录Mimi Panda应用程序(网络或桌面)并从您的帐户设置中复制令牌,即可获得API令牌。将令牌存储在 .env 或者一旦你有了它,就按要求提供。用法
运行服务器
MCP服务器通过STDIO进行通信,旨在与Claude Desktop等MCP兼容客户端一起使用。
# Run directly
npm start
# Or with node
node src/mcp-server.mjsClaude桌面配置
将服务器添加到Claude Desktop配置文件中:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json\ 视窗: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"mimi-panda": {
"command": "node",
"args": ["/path/to/mcp-server/src/mcp-server.mjs"],
"env": {
"MCP_API_BASE_URL": "https://mimi-panda.com",
"MCP_API_PREFIX": "/api",
"MCP_API_TOKEN": "your-token-here"
}
}
}
}添加配置后,重新启动Claude Desktop以连接到服务器。
可用工具
服务器公开了两个主要工具:
1. list_api_routes
列出所有可用的API路由及其描述、身份验证要求和架构。
响应中的每条路由都包括结构化元数据(类型、描述、枚举值、嵌套对象),明文摘要现在列出了每个字段及其允许的值,因此MCP客户端可以在发出请求之前看到接受的参数。
参数:
filter(可选):方法、路径或描述的不区分大小写的过滤器group(可选):按逻辑组筛选(auth或service)
例子:
List all routes in the "service" group2. call_api
对任何Mimi Panda API端点执行HTTP请求。
参数:
method(默认值:GET):HTTP方法(GET,POST,PUT,PATCH,DELETE)path:相对于前缀的API路径(例如。,service/coloring)query(可选):查询字符串参数body(可选):请求有效载荷(对象/数组采用JSON编码)token(可选):承载令牌(使用MCP_API_TOKEN如果省略)
> 将环境变量保留为空,直到您从Mimi Panda应用程序复制API令牌;一旦你有了它,就在中设置值 .env 或者根据请求传递它。
headers(可选):附加标题timeoutMs(可选):请求超时覆盖(最大120000ms)
例子:
Call the coloring API with an image URLLLM令牌工作流: 首先通过Mimi Panda应用程序注册并登录,然后将您的API令牌复制到 .env 或通过 token 现场。MCP服务器将继续管理 Bearer 自动前缀,但它不再自己提供帐户或令牌。
API终点
服务器提供对以下Mimi Panda API端点的访问:
认证
POST /api/auth/login-验证并接收API令牌GET /api/user/me-获取经过身份验证的用户配置文件POST /api/user/logout-使当前令牌无效
现在必须在Mimi Panda应用程序中创建帐户并进行身份验证。登录后,在使用此MCP服务器之前,从您的配置文件中复制API令牌。
服务
POST /api/service/coloring-从图像创建着色页POST /api/service/pbn-按数字生成绘画图像POST /api/service/ai/coloring-根据提示生成AI着色页POST /api/service/ai/image-根据提示生成AI图像POST /api/service/image/upscale-高比例图像(2x或4x)POST /api/service/image/filter-将AI过滤器应用于图像GET /api/service/item/{uuid}-按UUID检索任务结果
PBN下载
一旦PBN项目状态为 ready,直接下载其文件:
GET /api/service/item/{uuid}/pbn/download/{type}-下载PBN映像文件
支持 type 值: pbn, origin, source, outlines, outlinespng, grayscale, grayscalepng, pbnpng, originpng, originwithnumbers, custom, pbnpdf, outlinespdf, grayscalepdf, originpdf
可选查询参数: width, height (像素,适用于PNG/PDF类型)。这 custom 类型需要额外 download-type, download-strokes-color,以及 download-numbers-color 查询参数。
GET /api/service/item/{uuid}/pbn/colors/{type}-下载PBN调色板
支持 type 值: pdf, pdfshort, png, pngshort, csv, swatches, gpl, kpl
对于 type=swatches,后端可能会返回以下任一结果:
- 一个 .swatches 当调色板有30种或更少的颜色时,文件 - 一 .zip 包含多个 .swatches 当调色板有超过30种颜色时,文件
使用检测您收到的是哪一个 Content-Disposition 文件名和 X-Mimi-Colors-Format 响应标头(swatches 或 zip).
有关详细的参数信息,请使用 list_api_routes 工具。
发展
项目结构
mcp-server/
├── src/
│ ├── mcp-server.mjs # Main server implementation
│ └── mcp-ai-filter-types.json # AI filter type definitions
├── .github/ # GitHub templates and workflows
├── .gitignore
├── .npmignore
├── .env.example # Sample environment configuration
├── CHANGELOG.md
├── CONTRIBUTING.md
├── LICENSE
├── PRODUCTION_CHECKLIST.md
├── package.json
├── package-lock.json
└── README.md贡献
欢迎投稿!请随时提交拉取请求。
- 分叉存储库
- 创建功能分支(
git checkout -b feature/amazing-feature) - 提交您的更改(
git commit -m 'Add some amazing feature') - 推到分支(
git push origin feature/amazing-feature) - 打开拉取请求
许可证
此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。
支持
对于问题、疑问或贡献,请在 .
相关项目
______________________________________________________________________
由以下材料制成❤️ Slava R.和Ira R- 咪咪熊猫队
