iRAG MCP Server
A Model Context Protocol server that enables Claude Desktop to generate images using Baidu's iRAG image generation API through a standardized interface.
Tools
generate_image
使用百度iRAG API生成图片
README
百度iRAG MCP服务器
一个基于百度iRAG图片生成API的MCP(Model Context Protocol)服务器,允许MCP客户端(如Claude Desktop)通过标准化接口调用百度的图片生成服务。
🚨 重要提醒
在使用前,请务必进行真实API测试!
基础测试只验证服务器启动,要确保完全可用,需要:
- 获取真实的百度API Key
- 运行
npm run test:api进行真实API测试 - 验证图片生成和Base64转换功能
详细设置指南请查看:FINAL_SETUP.md
功能特性
- 🎨 支持百度iRAG图片生成API
- 🔧 完整的MCP协议实现
- 📝 支持多种模型(irag-1.0, flux.1-schnell)
- 🖼️ 灵活的图片尺寸配置
- 🔄 自动重试机制
- 📊 完善的日志记录
- ✅ 全面的参数验证
- 🧪 完整的测试覆盖
支持的模型
- irag-1.0: 百度自研的图片生成模型
- flux.1-schnell: 支持更多高级参数的快速生成模型
安装
前置要求
- Node.js >= 18.0.0
- npm 或 yarn
克隆项目
git clone <repository-url>
cd irag-mcp-server
安装依赖
npm install
构建项目
npm run build
配置
1. 获取百度API Key
- 访问百度智能云控制台
- 创建API Key并选择千帆ModelBuilder
- 配置对应的应用资源
- 复制API Key(格式:
bce-v3/ALTAK-****/****)
2. 环境变量配置
复制环境变量模板:
cp .env.example .env
编辑 .env 文件:
# 必需配置
BAIDU_API_KEY=bce-v3/ALTAK-your-access-key/your-secret-key
# 图片资源配置
RESOURCE_MODE=local # local: 保存到本地文件 | url: 仅返回URL和base64
BASE_PATH= # 自定义保存路径(可选,默认为桌面/irag-images)
MODEL=irag-1.0 # 默认模型: irag-1.0 | flux.1-schnell
# 可选配置
SERVER_NAME=irag-mcp-server
SERVER_VERSION=1.0.0
LOG_LEVEL=info
LOG_FILE=logs/server.log
API_TIMEOUT=30000
MAX_RETRIES=3
图片保存配置说明
- RESOURCE_MODE=local: 图片将保存到本地文件系统,同时返回base64数据和文件路径
- RESOURCE_MODE=url: 仅返回图片URL和base64数据,不保存本地文件
- BASE_PATH: 自定义图片保存路径,留空则使用默认路径(用户桌面/irag-images文件夹)
- MODEL: 设置默认使用的图片生成模型
irag-1.0: 百度自研模型,通用性好,速度快flux.1-schnell: 支持更多高级参数,质量更高
使用方法
启动服务器
# 开发模式
npm run dev
# 生产模式
npm start
MCP客户端配置
Claude Desktop配置
在Claude Desktop的配置文件中添加:
Windows: %APPDATA%\Claude\claude_desktop_config.json
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"irag-image-generator": {
"command": "node",
"args": ["/path/to/irag-mcp-server/dist/index.js"],
"env": {
"BAIDU_API_KEY": "bce-v3/ALTAK-your-access-key/your-secret-key"
}
}
}
}
API参考
generate_image 工具
生成图片的MCP工具。
参数
| 参数名 | 类型 | 必需 | 默认值 | 描述 |
|---|---|---|---|---|
prompt |
string | ✅ | - | 图片生成提示词 |
refer_image |
string | ❌ | - | 参考图片URL |
n |
integer | ❌ | 1 | 生成图片数量(1-4) |
size |
string | ❌ | 1024x1024 | 图片尺寸 |
steps |
integer | ❌ | - | 采样步数(1-50,仅flux.1-schnell) |
seed |
integer | ❌ | - | 随机种子(仅flux.1-schnell) |
guidance |
number | ❌ | 3.5 | 指导密度值(0-30,仅flux.1-schnell) |
注意: 模型通过配置文件的MODEL参数设置,不在请求中指定。
支持的图片尺寸
512x512,768x768,1024x768,1024x1024
使用示例
{
"name": "generate_image",
"arguments": {
"prompt": "一只可爱的橘猫坐在窗台上,阳光透过窗户洒在它身上",
"size": "1024x1024",
"n": 2
}
}
开发
项目结构
src/
├── client/ # API客户端
├── config/ # 配置管理
├── server/ # MCP服务器
├── types/ # 类型定义
├── utils/ # 工具函数
├── __tests__/ # 测试文件
└── index.ts # 主入口
开发命令
# 开发模式运行
npm run dev
# 构建项目
npm run build
# 运行测试
npm test
# 监听测试
npm run test:watch
# 代码检查
npm run lint
# 修复代码风格
npm run lint:fix
# 清理构建文件
npm run clean
测试
运行所有测试:
npm test
查看测试覆盖率:
npm test -- --coverage
故障排除
常见问题
-
API Key无效
- 确保API Key格式正确:
bce-v3/ALTAK-****/**** - 检查API Key是否已配置千帆ModelBuilder资源
- 确保API Key格式正确:
-
连接超时
- 检查网络连接
- 增加
API_TIMEOUT配置值
-
图片生成失败
- 检查提示词是否符合要求
- 确认模型参数配置正确
-
Base64验证错误
- 服务器会自动下载图片并转换为base64格式
- 如果下载失败,会返回错误信息和原始URL
- 检查网络连接和图片URL的可访问性
-
MCP客户端连接问题
- 确保Claude Desktop配置文件路径正确
- 检查Node.js版本(需要>=18.0.0)
- 验证项目已正确构建(运行
npm run build)
日志调试
设置日志级别为debug:
LOG_LEVEL=debug
查看详细的API调用日志和图片下载过程。
许可证
MIT License
贡献
欢迎提交Issue和Pull Request!
更新日志
v1.0.0
- 初始版本发布
- 支持百度iRAG图片生成API
- 完整的MCP协议实现
- 支持多种模型和参数配置
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。