使用说明
genai-mcp: GenAI MCP Server for Image Generation (e.g. Nano Banana)
GenAI MCP服务器
该项目实现了 模型上下文协议(MCP)服务器 用于图像生成和图像编辑 谷歌双子座, 同益万向,以及可选的自动上传生成的图像到 S3兼容对象存储 (AWS S3、阿里云OSS等)。
服务器暴露了一个 可流式传输的HTTP MCP端点 并为Gemini、Wan和APIMart提供工具。
供应商矩阵
| 提供者 | 支持的模型 | 配置 | 注意事项 |
|---|---|---|---|
谷歌 gemini-3-pro-image-preview · gemini-2.5-flash-image |
GENAI_PROVIDER=geminiGENAI_BASE_URL=https://generativelanguage.googleapis.com |
官方双子座 | |
| dmxapi | · gemini-3-pro-image-preview · gemini-2.5-flash-image |
GENAI_PROVIDER=geminiGENAI_BASE_URL=https://www.dmxapi.cn |
Gemini兼容网关 |
| 阿里云 | · wan2.5-i2i-preview · wan2.5-t2i-preview |
GENAI_PROVIDER=wanGENAI_BASE_URL=https://dashscope.aliyuncs.com |
同益万向 |
| apimart | gemini-3-pro-image-preview |
GENAI_PROVIDER=apimartGENAI_BASE_URL=https://api.apimart.ai |
APIMart Gemini包装机(经济高效) |
1.先决条件
- 去 1.21+ (推荐)
- 有效的Gemini(或提供商)API密钥
- 可选:用于存储图像的S3/OSS存储桶
2.配置(.env)
复制 env.example 到 .env,然后填写实际值。
GenAI配置
# GenAI provider:
# - gemini: Google Gemini / compatible backend
# - wan: Ali Bailian Tongyi Wanxiang image APIs
# - apimart: APIMart (Gemini-wrapped async image APIs)
GENAI_PROVIDER=gemini
# Shared GenAI endpoint / key for all providers
GENAI_BASE_URL=https://generativelanguage.googleapis.com
GENAI_API_KEY=your_api_key_here
# Model names:
# - When GENAI_PROVIDER=gemini: Gemini model names, e.g. gemini-3-pro-image-preview
# - When GENAI_PROVIDER=wan: Wanxiang model names, e.g. wan2.5-t2i-preview / wan2.5-i2i-preview
# - When GENAI_PROVIDER=apimart: Gemini image model name, e.g. gemini-3-pro-image-preview
GENAI_GEN_MODEL_NAME=gemini-3-pro-image-preview
GENAI_EDIT_MODEL_NAME=gemini-3-pro-image-preview
# Request timeout in seconds for each GenAI call (generate / edit)
GENAI_TIMEOUT_SECONDS=120
# Image output format:
# - base64: return image as data URI (base64 encoded)
# - url: upload image to OSS and return plain URL
GENAI_IMAGE_FORMAT=base64
HTTP服务器
SERVER_ADDRESS=0.0.0.0
SERVER_PORT=8080
MCP端点:
http://SERVER_ADDRESS:SERVER_PORT/mcp
OSS/S3配置(可选,需要时 GENAI_IMAGE_FORMAT=url)
# For AWS S3: leave OSS_ENDPOINT empty or set to s3.amazonaws.com
# For Aliyun OSS: set to oss-cn-hangzhou.aliyuncs.com or your region
# For Tencent COS: set to cos.ap-guangzhou.myqcloud.com
# For MinIO: set to your MinIO endpoint
OSS_ENDPOINT=
OSS_REGION=us-east-1
OSS_ACCESS_KEY=your_access_key_here
OSS_SECRET_KEY=your_secret_key_here
OSS_BUCKET=your_bucket_name
当 GENAI_IMAGE_FORMAT=url:
- 对于 阿里云OSS:确保
OSS_ENDPOINT喜欢oss-cn-beijing.aliyuncs.combucket策略允许预期的读取访问。
3.运行MCP服务器
您可以在中运行MCP服务器 两种方式:
-
从源代码克隆和构建
-
克隆此仓库并输入项目根目录
-
复制
env.example到.env并填写您的配置 -
运行:
go build . ./genai-mcp
-
-
下载发布二进制文件
-
从发布页面下载相应的二进制文件
-
将其放置在您选择的目录中
-
复制
env.example(从回购或释放资产).env并更新配置 -
运行(二进制名称可能因平台而异):
./genai-mcp
-
默认MCP HTTP端点:
http://127.0.0.1:8080/mcp
从任何支持流式HTTP传输的MCP兼容客户端连接。
4.MCP工具
Gemini工具(internal/tools/gemini.go)
-
gemini_generate_image- 输入:
prompt(字符串,必填) - 输出:base 64数据类型或URL(可选OSS上传)
- 输入:
-
gemini_edit_image- 输入:
prompt(必填),image_urls(必填,JSON数组) - 输出:base64数据URI或URL
- 输入:
当 GENAI_IMAGE_FORMAT=url,图像被下载/解码,然后上传到OSS/S3 images/yyyy-MM-dd/{uuid_timestamp_random}.ext.
万工具(internal/tools/wan.go)
wan_create_generate_image_taskwan_query_generate_image_taskwan_create_edit_image_taskwan_query_edit_image_task
Wan是异步的;创建一个任务,然后轮询完成情况。
APIMart工具(internal/tools/apimart.go)
apimart_create_generate_image_taskapimart_query_generate_image_taskapimart_create_edit_image_taskapimart_query_edit_image_task
APIMart是异步的;任务完成后,工具会返回最终图像(URL或base64)。
5.联系方式
-
微信:扫描下面的二维码添加为好友
-
Discord 的中文翻译是“不和谐”或“纷争”。: 加入社区