Skip to main content
Glama

Version Python MCP License

AI 图片/视频生成与处理工具,支持文本/图生图、文本/图生视频、图片分析与常用编辑(裁剪、缩放、转换、调参),可作为命令行工具或 MCP Server 使用

https://github.com/user-attachments/assets/92749d6f-727e-4874-a008-6ded8b4d9e7b

功能特性

  • 文本生成图片: 根据文本描述生成图片

  • 图片生成图片: 基于输入图片和文本描述生成新图片

  • 文本/图片生成视频: 支持提示词生成视频,或基于首尾帧生成视频

  • 图片下载/视频下载: 将生成的图片或视频URL下载并保存到本地

  • 图片处理工具: 提供完整的图片处理功能

    • 图片信息获取: 查看图片格式、尺寸、模式等信息

    • 图片裁剪: 按指定区域裁剪图片(支持小数比例坐标)

    • 尺寸调整: 调整图片大小,支持保持宽高比

    • 格式转换: 支持PNG、JPEG、JPG、WEBP格式转换

    • 图像调整: 调整亮度、对比度、饱和度

    • 图片粘贴: 将图片粘贴到背景图片的指定位置

  • 图片理解与分析: 基于视觉模型分析图片内容,输出结构化或文本结果

  • 多种分辨率支持: 支持 1K、2K、4K 分辨率以及多种自定义像素尺寸

  • 插件化架构: 基于工厂模式设计,支持扩展新的图片生成服务提供商

  • MCP 协议支持: 兼容 Model Context Protocol 标准

当前支持的服务提供商

  • 豆包 (Doubao): 基于火山引擎的图片生成服务

  • 阿里云 (Aliyun): 基于阿里云通义千问的图片生成服务

安装

配置环境变量

IMAGENX_IMAGE_TO_IMAGE="provider:model" IMAGENX_TEXT_TO_IMAGE="provider:model" IMAGENX_IMAGE_TO_VIDEO="provider:model" IMAGENX_TEXT_TO_VIDEO="provider:model" IMAGENX_INSPECT_IMAGE="provier:model" IMAGENX_<provider>_API_KEY="api-key"

或写入 .env 文件中

安装步骤

方式一:pip 安装(推荐)

pip install imagenx

方式二:从源码安装

git clone https://github.com/NewToolAI/imagenx.git cd imagenx pip install -e .

使用方法

作为命令行运行

# 生成图片(文本或图生图) imagenx image "一只在云上飞翔的猫" # 生成视频(文本或基于首尾帧) imagenx video "一个人在运动" imagenx video "一个人在运动" --first_frame logo.jpg

作为 MCP 服务器运行

标准输入输出模式 (stdio)

{ "mcpServers": { "imagenx-cli": { "command": "uvx", "args": [ "-U", "imagenx", "server", "--diable_tools", "text_to_video image_to_video" ], "env": { "IMAGENX_IMAGE_TO_IMAGE": "doubao:doubao-seedream-4-0-250828", "IMAGENX_TEXT_TO_IMAGE": "doubao:doubao-seedream-4-0-250828", "IMAGENX_IMAGE_TO_VIDEO": "doubao:doubao-seedance-1-0-pro-fast-251015", "IMAGENX_TEXT_TO_VIDEO": "doubao:doubao-seedance-1-0-pro-fast-251015", "IMAGENX_INSPECT_IMAGE": "aliyun:qwen3-vl-flash", "IMAGENX_DOUBAO_API_KEY": "api-key", "IMAGENX_ALIYUN_API_KEY": "api-key" } } } }

HTTP 服务器模式

imagenx server --transport streamable-http --host 0.0.0.0 --port 8000 imagenx server --transport streamable-http --disable_tools text_to_video image_to_video # 禁用视频生成工具
{ "mcpServers": { "imagenx-mcp-aliyun": { "url": "http://127.0.0.1:8000/mcp", "headers": { "IMAGENX_IMAGE_TO_IMAGE": "aliyun:qwen-image-edit-plus", "IMAGENX_TEXT_TO_IMAGE": "aliyun:qwen-image-plus", "IMAGENX_IMAGE_TO_VIDEO": "aliyun:wan2.5-i2v-preview", "IMAGENX_TEXT_TO_VIDEO": "aliyun:wan2.5-t2v-preview", "IMAGENX_INSPECT_IMAGE": "aliyun:qwen3-vl-flash", "IMAGENX_ALIYUN_API_KEY": "api-key" } } } }

Cloud 免安装 (没有工具 download)

{ "mcpServers": { "imagenx-mcp-cloud": { "url": "https://imagenx.fastmcp.app/mcp", "headers": { "IMAGENX_IMAGE_TO_IMAGE": "aliyun:qwen-image-edit-plus", "IMAGENX_TEXT_TO_IMAGE": "aliyun:qwen-image-plus", "IMAGENX_IMAGE_TO_VIDEO": "aliyun:wan2.5-i2v-preview", "IMAGENX_TEXT_TO_VIDEO": "aliyun:wan2.5-t2v-preview", "IMAGENX_INSPECT_IMAGE": "aliyun:qwen3-vl-flash", "IMAGENX_ALIYUN_API_KEY": "api-key" } } } }

可用工具

1. text_to_image

根据文本描述生成图片。

2. image_to_image

基于输入图片和文本描述生成新图片。

3. download

下载图片或视频到本地。

4. get_image_info

获取图片信息。

5. crop_image

裁剪图片。

6. resize_image

调整图片尺寸。

7. convert_image

转换图片格式。

8. adjust_image

调整图片的亮度、对比度和饱和度。

9. text_to_video

根据文本提示生成视频。

10. image_to_video

基于首帧与可选尾帧生成视频。

11. paste_image

将图片粘贴到背景图片的指定位置。

12. inspect_image

分析图片内容,返回结构化或文本结果。

项目结构

imagenx/ ├── imagenx/ │ ├── server.py # MCP 服务器主文件(工具定义与运行) │ ├── factory.py # 预测器工厂(图片/视频/分析) │ ├── operator.py # 图片处理操作模块 │ ├── main.py # CLI 入口(imagenx) │ ├── script.py # 命令行生成图片/视频脚本 │ ├── utils.py # 工具函数模块 │ └── predictor/ │ ├── base/ │ │ ├── base_text_to_image.py # 文本生成图片接口 │ │ ├── base_image_to_image.py # 图片生成图片接口 │ │ ├── base_text_to_video.py # 文本生成视频接口 │ │ ├── base_image_to_video.py # 图片生成视频接口 │ │ └── base_image_inspector.py # 图片分析接口 │ └── generators/ │ ├── doubao/ # 豆包服务提供商 │ │ ├── text_to_image.py │ │ ├── image_to_image.py │ │ ├── text_to_video.py │ │ ├── image_to_video.py │ │ └── image_inspector.py │ └── aliyun/ # 阿里云服务提供商 │ ├── text_to_image.py │ ├── image_to_image.py │ ├── text_to_video.py │ ├── image_to_video.py │ └── image_inspector.py ├── pyproject.toml # 项目配置(入口脚本等) ├── uv.lock # 依赖锁(可选) └── README.md # 项目说明

扩展新的服务提供商

要扩展新的服务提供商:

  1. 实现相应的基类接口,例如 BaseTextToImage

from imagenx.predictor.base.base_text_to_image import BaseTextToImage class ProviderTextToImage(BaseTextToImage): def __init__(self, model: str, api_key: str): self.model = model self.api_key = api_key # 其他初始化代码 def text_to_image(self, prompt: str, size: str) -> List[Dict[str, str]]: # 实现文本生成图片逻辑 # 返回格式: [{"url": "图片URL"}] pass
  1. 工厂类会自动发现并加载新的实现(基于文件名),模型字符串需为 provider:model 格式,例如:doubao:doubao-seedream-4-0-250828

依赖项

  • fastmcp>=2.12.4: MCP 协议实现

  • python-dotenv>=1.1.1: 环境变量加载

  • volcengine-python-sdk[ark]>=4.0.22: 火山引擎 SDK(豆包服务)

  • dashscope>=1.25.1: 阿里云通义千问 SDK(阿里云服务)

  • requests>=2.25.0: HTTP 请求库(用于图片下载)

  • pillow>=12.0.0: 图片处理库(用于图片编辑操作)

更新日志

v1.0.0 (当前版本)

新增功能

  • 查询分析工具: 新增 analyze_query 工具,支持分析用户需求并制定工具调用计划

  • Cloud 服务: 新增云端免安装服务支持,可通过 HTTP 方式使用(不包含 download 工具)

功能优化

  • 统一版本号为 1.0.0,项目进入稳定版本阶段

  • 优化工具链调用流程,提升用户体验

v0.3.0

新增功能

  • 阿里云服务提供商: 新增基于阿里云通义千问的图片生成服务支持

  • 图片粘贴: 新增 paste_image 工具,支持将图片粘贴到背景图片的指定位置

  • 工具控制: 新增 --disable_tools 参数,支持在运行 MCP 服务器时禁用特定工具

功能优化

  • 完善图片处理工具集,增强图片编辑能力

  • 重构基类接口,提供更细分的功能模块

v0.2.0

新增功能

  • 视频生成: 支持 text_to_videoimage_to_video 两种方式

  • 图片分析: 新增 inspect_image 工具,支持视觉模型分析

  • 图片处理工具集完善: get_image_infocrop_image(比例坐标)、resize_imageconvert_imageadjust_image

技术改进

  • 工厂模式统一图片/视频/分析三类预测器的发现与加载

  • 环境变量分离为 IMAGENX_IMAGE_MODELIMAGENX_VIDEO_MODELIMAGENX_INSPECT_IMAGE

  • MCP 工具集扩展,HTTP 服务器提供 /health/healthy 健康检查路由

  • 支持本地文件与 URL 两种图片输入方式;下载工具统一图片/视频

许可证

本项目的许可证信息请查看项目仓库。

贡献

欢迎提交 Issue 和 Pull Request 来改进这个项目。

联系方式

  • Email: zhangslwork@yeah.net

-
security - not tested
A
license - permissive license
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/NewToolAI/imagenx'

If you have feedback or need assistance with the MCP directory API, please join our Discord server