iRAG MCP Server

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.

Category
访问服务器

Tools

generate_image

使用百度iRAG API生成图片

README

百度iRAG MCP服务器

一个基于百度iRAG图片生成API的MCP(Model Context Protocol)服务器,允许MCP客户端(如Claude Desktop)通过标准化接口调用百度的图片生成服务。

🚨 重要提醒

在使用前,请务必进行真实API测试!

基础测试只验证服务器启动,要确保完全可用,需要:

  1. 获取真实的百度API Key
  2. 运行 npm run test:api 进行真实API测试
  3. 验证图片生成和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

  1. 访问百度智能云控制台
  2. 创建API Key并选择千帆ModelBuilder
  3. 配置对应的应用资源
  4. 复制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

故障排除

常见问题

  1. API Key无效

    • 确保API Key格式正确:bce-v3/ALTAK-****/****
    • 检查API Key是否已配置千帆ModelBuilder资源
  2. 连接超时

    • 检查网络连接
    • 增加 API_TIMEOUT 配置值
  3. 图片生成失败

    • 检查提示词是否符合要求
    • 确认模型参数配置正确
  4. Base64验证错误

    • 服务器会自动下载图片并转换为base64格式
    • 如果下载失败,会返回错误信息和原始URL
    • 检查网络连接和图片URL的可访问性
  5. 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

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选