npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@hamaster/sora2-mcp-server

v1.0.4

Published

MCP Server for Sora2 image-to-video generation

Readme

Sora2 MCP Server

基于 Sora2 API 的 MCP (Model Context Protocol) 服务器,支持通过文字或图片生成高质量视频。

功能特性

  • 文字生成视频:通过文本提示词生成视频
  • 图片生成视频:基于参考图片生成视频
  • 多种模型支持:支持 sora-2 基础版和 sora-2-pro 高级版
  • 灵活的分辨率设置:支持多种视频分辨率(最高支持 1792x1024)
  • 可配置的视频时长:支持 10秒、15秒、25秒三种时长
  • 多种视频风格:支持动漫、漫画、新闻、复古等多种风格
  • MinIO 缓存集成:自动缓存生成的视频到 MinIO,提高访问速度

安装

前置要求

  • Node.js 18 或更高版本
  • npm 或 yarn 包管理器
  • Sora2 API 密钥

安装步骤

  1. 克隆或下载本项目:
git clone <repository-url>
cd sora2-mcp-server
  1. 安装依赖:
npm install
  1. 配置环境变量(详见下方配置说明)

  2. 测试运行:

npm start

环境变量配置

创建 .env 文件,参考 .env.example 文件配置以下环境变量:

必需配置

# Sora2 API 密钥(必需)
SORA2_API_KEY=sk-your-api-key-here

# Sora2 API 基础地址(可选,默认为 https://api.apiyi.com/v1/videos)
SORA2_BASE_URL=https://api.apiyi.com/v1/videos

可选配置(MinIO 缓存)

MinIO 用于缓存生成的视频,配置后可提高重复访问速度。

# MinIO 服务器地址
MINIO_ENDPOINT=your-minio-server.com

# MinIO 端口(默认为 9000)
MINIO_PORT=9000

# 是否使用 SSL(true/false,默认为 false)
MINIO_USE_SSL=false

# MinIO 访问密钥
MINIO_ACCESS_KEY=your-access-key

# MinIO 密钥
MINIO_SECRET_KEY=your-secret-key

# MinIO 存储桶名称(默认为 tmp)
MINIO_BUCKET=tmp

# MinIO 公开访问 URL(用于返回视频 URL)
MINIO_PUBLIC_URL=https://your-public-url.com

注意:如果不配置 MinIO,服务器仍然可以正常工作,但不会缓存视频。

使用方法

使用 npx 快速安装(推荐)

如果您已经将此包发布到 npm,可以直接使用 npx 快速安装和运行,无需手动克隆项目:

{
  "mcpServers": {
    "sora2": {
      "command": "npx",
      "args": [
        "-y",
        "@hamaster/sora2-mcp-server"
      ],
      "env": {
        "SORA2_API_KEY": "sk-your-api-key-here",
        "SORA2_BASE_URL": "https://api.apiyi.com/v1/videos",
        "MINIO_ENDPOINT": "cdn.hamaster.cn",
        "MINIO_PORT": "9000",
        "MINIO_USE_SSL": "false",
        "MINIO_ACCESS_KEY": "11333333333333",
        "MINIO_SECRET_KEY": "NK5iGmOZHheeqVEd69mueqXyIUrtWTMmNQdymWSS",
        "MINIO_BUCKET": "tmp",
        "MINIO_PUBLIC_URL": "https://cdn.deepix.hk"
      }
    }
  }
}

参数说明:

  • -y:自动确认安装,避免交互式提示
  • @hamaster/sora2-mcp-server:包名称(对应 package.json 中的 name 字段)

优点:

  • 无需手动克隆和安装项目
  • 自动使用最新版本
  • 配置简单,只需指定包名

使用本地路径安装

如果您想使用本地开发版本或未发布到 npm 的版本,可以直接指定本地路径:

{
  "mcpServers": {
    "sora2": {
      "command": "node",
      "args": [
        "d:\\workspace\\MCPs\\sora2-mcp-server\\index.js"
      ],
      "env": {
        "SORA2_API_KEY": "sk-your-api-key-here",
        "SORA2_BASE_URL": "https://api.apiyi.com/v1/videos",
        "MINIO_ENDPOINT": "cdn.hamaster.cn",
        "MINIO_PORT": "9000",
        "MINIO_USE_SSL": "false",
        "MINIO_ACCESS_KEY": "11333333333333",
        "MINIO_SECRET_KEY": "NK5iGmOZHheeqVEd69mueqXyIUrtWTMmNQdymWSS",
        "MINIO_BUCKET": "tmp",
        "MINIO_PUBLIC_URL": "https://cdn.deepix.hk"
      }
    }
  }
}

配置步骤

  1. 打开 Claude Desktop 的配置文件:

    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows: %APPDATA%\Claude\claude_desktop_config.json
  2. 根据您的需求选择上述两种配置方式之一(npx 或本地路径)添加到配置文件

  3. 重启 Claude Desktop

可用工具

1. submit_video_task

提交视频生成任务。

参数:

  • prompt(必需):视频生成的提示词描述
  • imageUrl(可选):输入图片的 URL 地址,不提供则为文字生成视频
  • model(可选):模型名称
    • sora-2:基础版(默认)
    • sora-2-pro:高级版,支持更高分辨率和更长时长
  • size(可选):视频分辨率
    • sora-2 支持:1280x720720x1280
    • sora-2-pro 支持:1280x720720x12801024x17921792x1024
    • 默认值:1280x720
  • seconds(可选):视频时长(秒)
    • sora-2 支持:1015
    • sora-2-pro 支持:101525
    • 默认值:10
  • style(可选):视频风格
    • 可选值:thanksgiving(感恩节)comic(漫画)news(新闻)selfie(自拍)nostalgic(复古)anime(动漫)
    • 默认:无风格

示例:

文字生成视频:

请使用 sora2 工具生成一个视频:提示词为"一只可爱的猫咪在阳光下打滚",模型使用 sora-2,分辨率 1280x720,时长 10 秒,风格为动漫。

图片生成视频:

请使用 sora2 工具生成一个视频:参考图片 URL 为 https://example.com/image.jpg,提示词为"让画面中的人物微笑",模型使用 sora-2-pro,分辨率 1792x1024,时长 15 秒。

2. check_task_status

查询视频生成任务的状态和结果。

参数:

  • taskId(必需):视频生成任务的 ID

示例:

请查询任务 ID "task_xxxxxx" 的状态。

返回状态说明:

  • submitted:任务已提交,等待处理
  • in_progress:视频生成中
  • completed:视频生成完成,返回视频 URL
  • failed:视频生成失败

使用流程

  1. 提交任务:使用 submit_video_task 工具提交视频生成请求
  2. 获取任务 ID:从返回结果中获取 taskId
  3. 等待处理:视频生成通常需要 3-5 分钟
  4. 查询状态:使用 check_task_status 工具定期查询任务进度
  5. 获取结果:任务完成后获取视频 URL

注意:如果配置了 MinIO,视频会自动缓存到 MinIO,后续查询相同任务时会直接返回缓存的视频 URL。

模型对比

| 特性 | sora-2 | sora-2-pro | |------|--------|------------| | 分辨率 | 1280x720、720x1280 | 1280x720、720x1280、1024x1792、1792x1024 | | 视频时长 | 10秒、15秒 | 10秒、15秒、25秒 | | 描述 | 基础版模型 | 高级版模型,支持更高分辨率和更长时长 |

注意事项

  1. 视频 API 生成任务为异步处理,通常需要 3-5 分钟
  2. 建议定期(每 30-60 秒)查询任务状态,避免频繁调用
  3. MinIO 配置是可选的,不配置不影响核心功能
  4. 确保环境变量中的 API 密钥安全,不要泄露
  5. 分辨率和时长参数必须与所选模型兼容,否则会报错

开发和测试

运行服务器

npm start

测试脚本

项目中包含 Python 演示脚本 sora2-demo.py,可用于测试 API 功能。

许可证

MIT

贡献

欢迎提交 Issue 和 Pull Request!