使用说明
Nano Banana Pro MCP服务器
用于Google Gemini Nano Banana Pro图像生成模型的MCP服务器(gemini-3-pro-image-preview).
支持两者 工作室 (本地Cursor集成)和 HTTP/SSE (远程部署)传输。
特性
- 文本到图像生成:根据文本描述创建高保真图像
- 图像编辑:使用对话文本提示编辑现有图像
- 多宽高比:支持1:1、16:9、9:16、4:3、3:4
- 批量生成:一次最多生成4张图像
- 高分辨率:配备Nano Banana Pro的2K-4K输出
- 双重运输:STDIO用于本地使用,HTTP/SSE用于远程部署
快速开始
先决条件
- Python 3.11+
- Gemini API密钥来自 谷歌AI工作室
📖 完整部署指南:参见 部署.md 了解所有平台的详细部署说明。
安装
git clone https://github.com/bcharleson/nano-banana-mcp.git
cd nano-banana-mcp
pip install -r requirements.txt
本地使用(STDIO)
1.配置光标
增添 .cursor/mcp.json:
{
"mcpServers": {
"nano-banana": {
"command": "python3",
"args": [
"/absolute/path/to/nano-banana-mcp/server.py"
],
"env": {
"GEMINI_API_KEY": "your-api-key-here"
}
}
}
}
2.重新启动游标
服务器将通过MCP工具提供。
远程部署(HTTP/SSE)
选项1:Docker
# Build
docker build -t nano-banana-mcp .
# Run
docker run -p 8000:8000 -e GEMINI_API_KEY=your-api-key nano-banana-mcp
选项2:Docker编写
# Create .env file
echo "GEMINI_API_KEY=your-api-key" > .env
# Run
docker-compose up -d
选项3:Fly.io
# Install flyctl
brew install flyctl
# Login
flyctl auth login
# Set secret
flyctl secrets set GEMINI_API_KEY=your-api-key
# Deploy
flyctl launch
方案4:铁路
- 点击:
- 添加
GEMINI_API_KEY环境变量 - 部署!
选项5:渲染
- 创建新的Web服务
- 连接此仓库
- 设置环境变量:
GEMINI_API_KEY - 部署命令:
python server.py --http
选项6:DigitalOcean应用平台
通过doctl命令行界面:
# Install doctl
brew install doctl
# Authenticate
doctl auth init
# Create app from spec
doctl apps create --spec .do/app.yaml
# Set secret
doctl apps update YOUR_APP_ID --spec .do/app.yaml
通过DigitalOcean控制台:
- 首选 数字海洋应用平台
- 点击“创建应用”
- 连接您的GitHub仓库:
bcharleson/nano-banana-mcp - DigitalOcean将自动检测
.do/app.yaml配置 - 添加环境变量:
GEMINI_API_KEY(标记为机密) - 点击“创建资源”
一键部署:
定价:
- 基本计划:每月5美元(512MB RAM,1个vCPU)
- 专业版计划:每月12美元(1GB内存,1个vCPU)
快速部署脚本:
# One-command deployment
./scripts/deploy-digitalocean.sh
# Test deployment
./scripts/test-deployment.sh https://your-app.ondigitalocean.app
连接到远程服务器
在 .cursor/mcp.json:
{
"mcpServers": {
"nano-banana-remote": {
"url": "https://your-deployment-url.com"
}
}
}
API使用
生成图像
# Via MCP tool
generate_image(
prompt="A professional headshot of a tech entrepreneur in a modern office",
output_path="/path/to/output.png",
aspect_ratio="16:9",
num_images=1
)
参数:
prompt(str):要生成的图像的文本描述output_path(str,可选):保存图像的文件路径aspect_ratio(str):以下之一:1:1,16:9,9:16,4:3,3:4num_images(int):要生成的图像数量(1-4)
编辑图像
# Via MCP tool
edit_image(
prompt="Change the background to a futuristic data center",
reference_image_path="/path/to/input.jpg",
output_path="/path/to/edited.png",
aspect_ratio="16:9"
)
参数:
prompt(str):要编辑的文本描述reference_image_path(str):参考图像文件的路径output_path(str,可选):保存编辑图像的文件路径aspect_ratio(str):以下之一:1:1,16:9,9:16,4:3,3:4
发展
本地运行(STDIO模式)
python server.py
本地运行(HTTP模式)
python server.py --http
服务器在上运行 http://localhost:8000 默认情况下。覆盖 PORT 环境变量:
PORT=3000 python server.py --http
测试HTTP端点
curl http://localhost:8000/health
Nano Banana Pro功能
- 改进的文本呈现:跨多种语言的正确率约为94%
- 多参考:最多可同时处理14个参考图像
- 身份一致性:在最多5名人类受试者中保持一致性
- 高分辨率:4K输出,专业使用
- 高级推理:复杂指令遵循
- 增强世界知识:更好的图表和信息图
- 精确控制:照明和摄像头角度控制
环境变量
| 变量 | 必填 | 描述 |
|---|---|---|
GEMINI_API_KEY |
是 | 来自Google AI Studio的Gemini API密钥 |
PORT |
否 | HTTP服务器端口(默认值:8000) |
支持的图像格式
- 输入:PNG、JPEG、WebP
- 输出:PNG(base64或文件)
API详细信息
服务器使用Gemini API,并将密钥附加为URL参数:
https://generativelanguage.googleapis.com/v1beta/models/gemini-3-pro-image-preview:generateContent?key=YOUR_API_KEY
备注
- 所有生成的图像都包含用于来源的SynthID水印
- 最大生成超时:120秒
- API费率限制适用于您的Gemini API等级
例子
生成YouTube缩略图
generate_image(
prompt="Professional YouTube thumbnail for a data quality video. Bold text 'QUALITY DATA 2026'. Tech entrepreneur pointing at screen. Clean modern design. 16:9 aspect ratio.",
output_path="/Users/you/Desktop/thumbnail.png",
aspect_ratio="16:9",
num_images=1
)
编辑头像背景
edit_image(
prompt="Replace the background with a modern tech office with data visualizations on screens. Keep the person in focus. Professional lighting.",
reference_image_path="/path/to/headshot.jpg",
output_path="/path/to/edited.png",
aspect_ratio="1:1"
)
生成多种变体
generate_image(
prompt="Minimalist logo for AI automation company. Blue and orange colors. Clean geometric shapes.",
output_path="/path/to/logo_1.png",
aspect_ratio="1:1",
num_images=4 # Generates logo_1.png, logo_2.png, logo_3.png, logo_4.png
)
贡献
欢迎投稿!请随时提交拉取请求。
许可证
MIT许可证-请参阅 许可证 文件以获取详细信息。
链接
- GitHub: https://github.com/bcharleson/nano-banana-mcp
- API双子星: https://ai.google.dev/gemini-api/docs
- FastMCP: https://github.com/jlowin/fastmcp
- 主控程序: https://modelcontextprotocol.io
作者
布兰登·查尔森
- 十、 @布兰登查尔森
- github: @bcharleson