🚀 图像生成器 MCP 服务器
图像生成器 MCP 服务器借助 Replicate 来生成图像,并且支持用户保存这些生成的图像,为图像生成与管理提供了便利的解决方案。
✨ 主要特性
资源
该服务器构建了一套图像存储系统,具备如下功能:
- 运用自定义的 image:// URI 方案,能够便捷地访问单个生成图像。
- 每个图像资源都有基于其提示词的名称,描述中包含创建日期,且媒体类型为 image/png。
提示词
服务器仅提供一个提示词:
- generate - image:用于借助 Stable Diffusion 生成图像。
- 可通过可选的 "style" 参数控制图像风格,风格选项包括现实主义、艺术、抽象。
- 会依据所选风格生成带有指导语句的提示词模板。
工具
服务器实现了三个实用工具:
- generate - image:利用 Replicate 的 Stable Diffusion 模型生成图像。
- 必须传入 "prompt" 作为字符串参数。
- 可选参数有 "negative_prompt"、"width"、"height"、"num_inference_steps" 和 "guidance_scale"。
- 返回生成的图像及其 URL。
- save - image:将生成的图像保存到本地文件系统。
- 必须传入 "image_url" 和 "prompt" 作为字符串参数。
- 为图像生成唯一 ID 并保存到 "generated_images" 目录。
- list - saved - images:列出所有已保存的图像。
📦 安装指南
Replicate API Token
若要使用此图像生成器,您需要获取一个 Replicate API Token,具体步骤如下:
- 在 Replicate 创建账户。
- 从 https://replicate.com/account 获取您的 API Token。
- 根据提供的
.env.example 模板创建一个 .env 文件:
REPLICATE_API_TOKEN=your_replicate_api_token_here
⚠️ 重要提示
.env 文件通过 .gitignore 排除在版本控制之外,以防止意外暴露您的 API Token。绝不要将敏感信息提交到您的仓库。
环境设置
- 克隆仓库:
git clone https://github.com/yourusername/image-generator.git
cd image-generator
- 创建并激活虚拟环境:
python -m venv .venv
.venv\Scripts\activate
source .venv/bin/activate
- 安装依赖项:
pip install -r requirements.txt
- 按照上述说明设置您的
.env 文件
💻 使用示例
安装
Claude Desktop
- 在 MacOS 上:
~/Library/Application\ Support/Claude/claude_desktop_config.json
- 在 Windows 上:%APPDATA%/Claude/claude_desktop_config.json%
开发/未发布的服务器配置
```
"mcpServers": {
"image-generator": {
"command": "uv",
"args": [
"--directory",
"B:\NEWTEST\image-generator",
"run",
"image-generator"
]
}
}
```
已发布的服务器配置
```
"mcpServers": {
"image-generator": {
"command": "uvx",
"args": [
"image-generator"
]
}
}
```
使用方法
服务器启动后,您可以按以下步骤操作:
- 利用 "generate - image" 工具和描述性的提示词生成图像。
- 使用 "save - image" 工具,结合图像 URL 和提示词保存生成的图像。
- 通过 "list - saved - images" 工具查看所有已保存的图像。
- 通过资源列表访问已保存的图像。
🔧 技术细节
构建与发布
若要准备分发包,可按以下步骤操作:
- 同步依赖项并更新锁文件:
uv sync
- 构建包发行版本:
uv build
这将在 dist/ 目录中创建源代码和轮发行。
- 发布到 PyPI:
uv publish
注意:您需要通过环境变量或命令行参数设置 PyPI 凭据:
调试
若要调试图像生成器,可按以下步骤操作:
- 在终端中运行服务器。
- 打开 http://localhost:8000 访问 MCP 仪表板。
- 使用 "image - generator" 服务进行交互。