PhotoShoot AI Design
MCP server that integrates multiple AI image generation providers (WaveSpeed, Nano Banana, OpenAI, Stability, fal.ai) to automate photoshoot tasks like product photography, fashion content, and batch editing.
README
PhotoShoot AI Design
AI-powered photoshoot design tools with MCP servers, reusable skills, and intelligent agents. Supports WaveSpeed AI, Nano Banana, OpenAI, Stability AI, and PhotoShoot App integration.
Quick Setup → | Documentation → | Examples →
Overview
PhotoShoot AI Design extends the photoshoot.app platform with advanced AI agent capabilities through the Model Context Protocol (MCP). This project provides a unified interface to multiple AI image generation services, enabling seamless photoshoot automation for:
- E-commerce - Product photography for Amazon, Shopify, and online stores
- Fashion - OOTD (Outfit of the Day) content for social media
- Marketing - Campaign visuals and brand content
- Portraits - Professional headshots and personal branding
Features
AI Provider Integration
Seamlessly switch between multiple AI providers:
| Provider | Models | Best For | Pricing |
|---|---|---|---|
| WaveSpeed AI | 700+ models including FLUX, Stable Diffusion, Kling, Veo, Sora | Product photography, video content | Competitive rates |
| Nano Banana | Google Gemini's native image generation | Fashion, OOTD, lifestyle | ~$0.02/image |
| OpenAI | DALL-E 3, GPT-4 | Professional portraits, creative concepts | Standard OpenAI pricing |
| Stability AI | Stable Diffusion XL | Custom styles, artistic content | $0.004-$0.02/image |
| PhotoShoot App | Proprietary photoshoot models | E-commerce, brand consistency | Platform pricing |
| fal.ai | Fast inference | Rapid prototyping, batch processing | Pay-per-use |
MCP Tools
Complete set of Model Context Protocol tools:
photoshoot_generate- Generate AI photos from text or reference imagesphotoshoot_edit- Edit and enhance existing imagesphotoshoot_template- Get available templates and stylesphotoshoot_batch- Process multiple images in batchphotoshoot_variations- Generate image variationsphotoshoot_upscale- Upscale images to higher resolution
Skills System
Modular, reusable skills for common design workflows:
| Skill | Description | Use Cases |
|---|---|---|
product-photography |
Professional product photo generation | E-commerce, product listings, catalogs |
ootd-fashion |
Fashion and lifestyle content creation | Instagram, TikTok, Pinterest fashion |
image-enhancement |
AI-powered photo editing and retouching | Post-processing, optimization |
brand-style |
Brand-consistent visual generation | Campaigns, marketing materials |
batch-production |
High-volume batch processing | Catalog production, bulk operations |
AI Agents
Autonomous agents for complex workflows:
DesignerAgent
- Analyze reference images and extract style parameters
- Generate photos based on brand guidelines
- Create platform-specific content (Amazon, Instagram, TikTok)
- Manage template libraries
OptimizerAgent
- Batch image enhancement
- Platform optimization (Amazon, Shopify, social media)
- Background removal and replacement
- Watermarking and formatting
Installation
Quick Start (3 minutes)
# Clone the repository
git clone git@github.com:photoshootapp/photoshoot-ai-design.git
cd photoshoot-ai-design
# Install dependencies
npm install
# Configure API keys
cp .env.example .env
# Edit .env and add your API keys
# Start MCP server
npm run mcp:start
See SETUP.md for detailed setup instructions and API key acquisition.
Claude Code Plugin
# Install from plugin marketplace
claude plugin install photoshoot-ai-design
# Or manually configure in .claude/settings.json
{
"mcpServers": {
"photoshoot": {
"command": "node",
"args": ["packages/mcp-server/dist/index.js"],
"cwd": "/path/to/photoshoot-ai-design"
}
}
}
Pi Agent Plugin
pi-agent plugin add photoshoot-ai-design
OpenLLM Plugin
import openllm
plugin = openllm.load_plugin("photoshoot-ai-design")
model = openllm.start("vllm/nano-banana", plugins=[plugin])
Usage
MCP Tool Examples
// Generate product photography
await mcpClient.callTool({
name: "photoshoot_generate",
arguments: {
type: "product",
provider: "wavespeed",
prompt: "Professional product photo of wireless headphones",
style: "studio",
quantity: 4
}
});
// Generate OOTD fashion content
await mcpClient.callTool({
name: "photoshoot_generate",
arguments: {
type: "ootd",
provider: "nano-banana",
prompt: "Streetwear fashion photoshoot, urban setting",
style: "vibrant",
quantity: 6
}
});
// Edit and enhance images
await mcpClient.callTool({
name: "photoshoot_edit",
arguments: {
image: "https://example.com/product.jpg",
provider: "auto",
edits: {
lighting: "studio",
background: "white",
retouch: true
}
}
});
Skill Examples
# Product photography
/photoshoot-design product --reference="product.jpg" --style=studio --platform=amazon
# OOTD fashion
/photoshoot-design ootd --reference="outfit.jpg" --style=streetwear --location=urban
# Image enhancement
/photoshoot-design enhance --image="photo.jpg" --intensity=medium
Agent Examples
import { DesignerAgent, createPhotoShootClient } from '@photoshoot/agents';
const client = await createPhotoShootClient();
const agent = new DesignerAgent(client, {
defaultStyle: 'studio',
defaultQuantity: 4
});
// Generate product photography
await agent.generateProductPhotography({
productImage: 'shoe.jpg',
style: 'minimalist',
platform: 'amazon',
quantity: 8
});
// Create OOTD content
await agent.createOOTDContent({
outfitImage: 'outfit.jpg',
style: 'luxury',
location: 'rooftop',
vibe: 'chic'
});
// Optimize for platforms
await agent.optimizeForPlatform({
images: ['img1.jpg', 'img2.jpg'],
platform: 'instagram'
});
Architecture
photoshoot-ai-design/
├── packages/
│ ├── mcp-server/ # MCP server with all AI providers
│ │ ├── src/
│ │ │ ├── api/clients/ # Individual API clients
│ │ │ │ ├── wavespeed.ts
│ │ │ │ ├── nanobanana.ts
│ │ │ │ ├── openai.ts
│ │ │ │ ├── stability.ts
│ │ │ │ ├── photoshoot.ts
│ │ │ │ └── fal.ts
│ │ │ ├── config.ts
│ │ │ └── index.ts
│ │ └── .env.example
│ │
│ ├── mcp-client/ # MCP client SDK
│ ├── skills/ # Skill definitions (Markdown)
│ ├── agents/ # AI agent implementations
│ │
│ └── plugins/
│ ├── claude-code/ # Claude Code plugin
│ ├── pi-agent/ # Pi Agent plugin
│ └── openllm/ # OpenLLM plugin
│
├── docs/ # Documentation
├── examples/ # Usage examples
├── .env.example # Environment configuration template
├── SETUP.md # Quick setup guide
└── README.md # This file
API Reference
MCP Tools
photoshoot_generate
Generate photoshoot images using AI.
{
type: 'product' | 'ootd' | 'portrait',
provider?: 'wavespeed' | 'nano-banana' | 'openai' | 'stability' | 'auto',
prompt: string,
reference?: string,
style?: string,
quantity?: number,
width?: number,
height?: number
}
photoshoot_edit
Edit and enhance images.
{
image: string,
provider?: 'wavespeed' | 'nano-banana' | 'openai' | 'stability' | 'auto',
prompt?: string,
edits?: {
lighting?: string,
background?: string,
retouch?: boolean,
enhance?: boolean
}
}
photoshoot_batch
Batch process multiple images.
{
images: string[],
operation: 'enhance' | 'resize' | 'format' | 'watermark' | 'remove-background',
options?: Record<string, unknown>
}
Configuration
Environment Variables
# WaveSpeed AI (recommended for product photography)
WAVESPEED_API_KEY=your_key_here
WAVESPEED_API_URL=https://api.wavespeed.ai/v1
# Nano Banana (Google Gemini - recommended for fashion)
NANO_BANANA_API_KEY=your_key_here
NANO_BANANA_API_URL=https://generativelanguage.googleapis.com/v1beta
# OpenAI (DALL-E)
OPENAI_API_KEY=your_key_here
OPENAI_API_URL=https://api.openai.com/v1
# Stability AI (Stable Diffusion)
STABILITY_API_KEY=your_key_here
STABILITY_API_URL=https://api.stability.ai/v1
# PhotoShoot App
PHOTOSHOOT_API_KEY=your_key_here
PHOTOSHOOT_API_URL=https://api.photoshoot.app
# fal.ai
FAL_API_KEY=your_key_here
FAL_API_URL=https://fal.ai
Provider Selection
The system automatically selects the best provider based on:
- Available API keys - Only configured providers are used
- Content type - Different providers excel at different types
- User preference - Manual override available
Automatic selection logic:
- Product photography → WaveSpeed AI
- Fashion/OOTD → Nano Banana
- Portraits → OpenAI DALL-E
- Custom styles → Stability AI
- Fallback → PhotoShoot App (demo mode without API key)
Contributing
We welcome contributions! Please see CONTRIBUTING.md for guidelines.
Areas for Contribution
- New AI provider integrations
- Additional skill definitions
- Agent capability enhancements
- Plugin support for other platforms
- Documentation and examples
Development
# Install dependencies
npm install
# Build all packages
npm run build
# Run MCP server
npm run mcp:start
# Run tests
npm test
# Development mode with hot reload
npm run dev
Performance
- Batch Processing: Process up to 100 images simultaneously
- Auto Caching: Reduce redundant API calls with intelligent caching
- Concurrent Requests: Configurable concurrent request limits
- Timeout Protection: Built-in timeout for all API calls
Roadmap
- [ ] Video generation support (Kling, Veo, Sora via WaveSpeed)
- [ ] 3D model generation
- [ ] Advanced editing features (inpainting, outpainting)
- [ ] Real-time style transfer
- [ ] Mobile app integration
- [ ] Cloud storage integration
- [ ] Team collaboration features
License
MIT License - see LICENSE for details.
Links
- PhotoShoot App - Main platform
- WaveSpeed AI - WaveSpeed documentation
- Nano Banana - Google Gemini docs
- MCP Specification - Protocol details
- Claude Code - Claude Code IDE
- Pi Agent - Pi Agent platform
- OpenLLM - OpenLLM ecosystem
Support
- GitHub Issues: github.com/photoshootapp/photoshoot-ai-design/issues
- Email: support@photoshoot.app
- Discord: Coming soon
Acknowledgments
Built with:
- Model Context Protocol - Standard for AI tool integration
- WaveSpeed AI - Unified AI API platform
- Google Gemini - Nano Banana image generation
- Claude - Anthropic's AI assistant
Built with ❤️ for the AI photography community
推荐服务器
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 模型以安全和受控的方式获取实时的网络信息。