这是一个提供对通过FAL AI平台访问FLUX.1 Kontext [Max](前沿图像生成模型)的Model Context Protocol (MCP)服务器。该服务器支持高质量的图像生成,具有先进的文本渲染能力和卓越的上下文理解能力。
🔗 仓库: https://github.com/PierrunoYT/fal-flux-kontext-max-mcp-server
🚀 即刻可用! 包含预构建可执行文件 - 无需编译。
✅ 增强可靠性: 服务器优雅地处理缺失的API密钥,不会崩溃,并且包括强大的错误处理机制。
images目录git clone https://github.com/PierrunoYT/fal-flux-kontext-max-mcp-server.git
cd fal-flux-kontext-max-mcp-server
服务器是预构建的,但如果您想要修改它:
npm install
npm run build
最佳选择以实现便携性 - 在任何带有Node.js的机器上都能工作:
{
"mcpServers": {
"fal-flux-kontext-max": {
"command": "npx",
"args": [
"-y",
"https://github.com/PierrunoYT/fal-flux-kontext-max-mcp-server.git"
],
"env": {
"FAL_KEY": "your-fal-api-key-here"
}
}
}
}
优点:
如果您更喜欢本地安装,请使用路径助手:
npm run get-path
这将输出完整的MCP配置,带有正确的绝对路径。
添加到~/Library/Application Support/Claude/claude_desktop_config.json(macOS)或%APPDATA%\Claude\claude_desktop_config.json(Windows):
{
"mcpServers": {
"fal-flux-kontext-max": {
"command": "node",
"args": ["path/to/fal-flux-kontext-max-mcp-server/build/index.js"],
"env": {
"FAL_KEY": "your-fal-api-key-here"
}
}
}
}
添加到您的MCP设置文件中:
C:\Users\[username]\AppData\Roaming\Kilo-Code\MCP\settings\mcp_settings.json
{
"mcpServers": {
"fal-flux-kontext-max": {
"command": "node",
"args": ["path/to/fal-flux-kontext-max-mcp-server/build/index.js"],
"env": {
- "FAL_KEY": "your-fal-api-key-here"
},
"disabled": false,
"alwaysAllow": []
}
}
}
flux_kontext_max_generate使用FLUX.1 Kontext [Max]实时处理生成图像。
参数:
prompt(必需): 图像的文字描述seed(可选): 用于可重复生成的随机种子guidance_scale(可选): CFG比例 1.0-20.0(默认值:3.5)sync_mode(可选): 在返回之前等待生成(默认值:false)num_images(可选): 要生成的图像数量,1-4(默认值:1)safety_tolerance(可选): 安全级别 "1"-"6"(默认值:"2")output_format(可选): "jpeg" 或 "png"(默认值:"jpeg")aspect_ratio(可选): "21:9", "16:9", "4:3", "3:2", "1:1", "2:3", "3:4", "9:16", "9:21"(默认值:"1:1")响应包括:
flux_kontext_max_generate_async使用FLUX.1 Kontext [Max]异步队列处理生成图像,适用于较长的请求。
参数: 同 flux_kontext_max_generate
何时使用此工具:
特性:
flux_kontext_max_edit使用FLUX.1 Kontext [Max]实时处理编辑图像。
参数:
prompt(必需): 对图像进行编辑的文字描述image_url(必需): 要编辑的图像的URL(公共URL或base64数据URI)seed(可选): 用于可重复生成的随机种子guidance_scale(可选): CFG比例 1.0-20.0(默认值:3.5)sync_mode(可选): 在返回之前等待生成(默认值:false)num_images(可选): 要生成的图像数量,1-4(默认值:1)safety_tolerance(可选): 安全级别 "1"-"6"(默认值:"2")output_format(可选): "jpeg" 或 "png"(默认值:"jpeg")aspect_ratio(可选): "21:9", "16:9", "4:3", "3:2", "1:1", "2:3", "3:4", "9:16", "9:21"(默认值:"1:1")响应包括:
flux_kontext_max_edit_async使用FLUX.1 Kontext [Max]异步队列处理编辑图像,适用于较长的请求。
参数: 同 flux_kontext_max_edit
何时使用此工具:
特性:
FAL FLUX.1 Kontext [Max] MCP服务器会自动将生成的图像下载到您的本地机器。以下是完整的流程:
downloadImage):async function downloadImage(url: string, filename: string): Promise<string> {
// 1. 解析URL并确定HTTP/HTTPS客户端
const parsedUrl = new URL(url);
const client = parsedUrl.protocol === 'https:' ? https : http;
// 2. 如果不存在,则创建'images'目录
const imagesDir = path.join(process.cwd(), 'images');
if (!fs.existsSync(imagesDir)) {
fs.mkdirSync(imagesDir, { recursive: true });
}
// 3. 创建文件写入流
const filePath = path.join(imagesDir, filename);
const file = fs.createWriteStream(filePath);
// 4. 下载并管道到文件
client.get(url, (response) => {
response.pipe(file);
// 处理完成和错误
});
}
generateImageFilename):function generateImageFilename(prompt: string, index: number, seed: number): string {
// 创建安全文件名: flux_kontext_max_prompt_seed_index_timestamp.jpeg
const safePrompt = prompt
.toLowerCase()
.replace(/[^a-z0-9\s]/g, '') // 移除特殊字符
.replace(/\s+/g, '_') // 将空格替换为下划线
.substring( 0, 50); // 限制长度
const timestamp = new Date().toISOString().replace(/[:.]/g, '-');
return `flux_kontext_max_${safePrompt}_${seed}_${index}_${timestamp}.jpeg`;
}
your-project/
├── images/ # 自动创建的目录
│ ├── flux_kontext_max_mountain_landscape_123456_1_2025-06-24T18-30-45-123Z.jpeg
│ ├── flux_kontext_max_cute_robot_789012_1_2025-06-24T18-31-20-456Z.jpeg
│ └── ...
flux_kontext_max_.jpeg 或 .png 根据输出格式服务器返回本地和远程信息:
成功使用FLUX.1 Kontext [Max]生成了1张图像:
提示: "宁静的山景,白色书写着'FLUX'"
指导比例: 3.5
纵横比: 1:1
输出格式: jpeg
安全容差: 2
种子: 1234567890
请求ID: req_abc123
生成的图像:
图像1:
本地路径: /path/to/project/images/flux_kontext_max_a_serene_mountain_landscape_1234567890_1_2025-06-24T18-30-45-123Z.jpeg
原始URL: https://v3.fal.media/files/...
尺寸: 1024x1024
图像已下载到本地的'images'目录。
生成一张金毛猎犬在向日葵田里玩耍的照片,上面写着“快乐的狗”大字
生成一张图像,其中:
- 提示: "为一家科技初创公司设计的极简主义标志,干净的线条,带有'STARTUP'字样"
- 纵横比: 16:9
- 指导比例: 5.0
- 输出格式: png
- 图像数量: 2
生成4张“未来城市的夜景,霓虹灯和飞行汽车,大型广告牌显示'未来城市2025'”
纵横比21:9,指导比例4.0,种子12345以获得可重复的结果
创建一张复古书店的照片,书脊上清晰可见的标题如《编码的艺术》、《数字梦想》和《未来故事》
编辑这张图片,在天空中添加彩虹
图片URL: https://example.com/landscape.jpg
编辑图片:
- 提示: “在柜台旁边添加一个甜甜圈”
- 图片URL: https://v3.fal.media/files/rabbit/rmgBxhwGYb2d3pl3x9sKf_output.png
- 指导比例: 4.0
- 输出格式: png
在这张店面照片上添加“50%折扣”粗体红色文字
图片URL: https://example.com/storefront.jpg
将这张肖像转换为复古的棕色调效果,同时保持人物特征不变
图片URL: https://example.com/portrait.jpg
fal-ai/flux-pro/kontext/max/text-to-image(订阅方法)fal-ai/flux-pro/kontext/max/text-to-image(队列方法)fal-ai/flux-pro/kontext/max(订阅方法)fal-ai/flux-pro/kontext/max(队列方法)process.exit()调用├── src/
│ └── index.ts # 主MCP服务器实现
├── build/ # 编译后的JavaScript(即用)
├── test-server.js # 服务器测试工具
├── get-path.js # 配置路径助手
├── example-mcp-config.json # 示例配置
├── package.json # 项目元数据和依赖项
└── tsconfig.json # TypeScript配置