article
README
🚀 通义万相 MCP 服务器
这是一个基于 TypeScript 的 Model Context Protocol (MCP) 服务器,专门提供阿里云通义万相的文生图(Text-to-Image)和文生视频(Text-to-Video)能力。该服务器通过 MCP 协议,允许大语言模型(LLM)直接调用通义万相的图像和视频生成 API。
🚀 快速开始
以百炼平台为例,展示如何使用该服务器:
{
"mcpServers": {
"tongyi-wanxiang": {
"command": "npx",
"args": [
"-y",
"tongyi-wanx-mcp-server@latest"
],
"env": {
"DASHSCOPE_API_KEY": "<你的通义万相 API 密钥>"
}
}
}
}
✨ 主要特性
- 文生图能力集成:接入阿里云通义万相文生图 API,支持高质量的 AI 图像生成。
- 文生视频能力集成:接入阿里云通义万相文生视频 API,支持高质量的 AI 视频生成。
- 异步任务处理:支持长时间运行的图像和视频生成任务,通过异步轮询获取最终结果。
- MCP 协议支持:符合 Model Context Protocol 规范,可与支持 MCP 的 LLM 无缝协作。
📦 安装指南
环境要求
- Node.js >= 16.x
- npm >= 8.x 或 pnpm
安装依赖
# 使用 npm
npm install
# 或使用 pnpm
pnpm install
构建与运行
# 构建项目
npm run build
# 或
pnpm run build
# 运行服务器
npm start
# 或
pnpm start
# 使用调试工具运行
npm run debug
# 或
pnpm run debug
💻 使用示例
基础用法
该服务器提供以下 MCP 工具:
1. 文生图生成(wanx-t2i-image-generation)
启动图像生成任务,返回任务 ID。
**参数**:
- `prompt`: 图像生成提示词
- `negative_prompt`: 负面提示词(不希望在图像中出现的元素)
**返回**:
- 包含 `task_id` 的任务信息
2. 获取生成结果(wanx-t2i-image-generation-result)
通过任务 ID 查询图像生成结果。
**参数**:
- `task_id`: 生成任务的唯一标识符
**返回**:
- 图像数据或错误信息
3. 文生视频生成(wanx-t2v-video-generation)
启动视频生成任务,返回任务 ID。
**参数**:
- `prompt`: 视频生成提示词
- `negative_prompt`: 负面提示词(不希望在视频中出现的元素)
- `duration`: 视频时长(可选,默认为 10 秒)
**返回**:
- 包含 `task_id` 的任务信息
4. 获取生成结果(wanx-t2v-video-generation-result)
通过任务 ID 查询视频生成结果。
**参数**:
- `task_id`: 生成任务的唯一标识符
**返回**:
- 视频数据或错误信息
📚 详细文档
项目结构
your-project
├── src/
│ ├── mcp-server.ts
│ └── utils/
│ └── config.ts
└── package.json
配置说明
环境变量
DASHSCOPE_API_KEY: 通义万相 API 访问密钥PORT: 服务器监听端口(默认为 3000)
示例配置文件(config.ts):
export const CONFIG = {
api_key: process.env.DASHSCOPE_API_KEY,
port: parseInt(process.env.PORT) || 3000,
}
⚠️ 注意事项
⚠️ 重要提示
- 请确保您已获取有效的通义万相 API 访问权限和密钥。
- 图像生成是一个异步过程,可能需要数秒到数十秒不等。
- 视频生成过程耗时较长,可能需要数分钟到十几分钟不等。
- 视频生成状态查询可能会多次失败,系统会自动重试,请耐心等待。
- 请合理设置轮询间隔和最大重试次数,以适应您的使用场景。
- 对于视频生成任务,建议增加最大重试次数和轮询间隔时间。
扫码联系在线客服