mcp-sora について
mcp-soraは、AceDataCloud API経由でSoraの動画を生成するMCPサーバーで、MCPクライアントでの動画制作に使われます。この連携は終了しており、現在は積極的に提供されていません。
主な機能
- 01テキストから動画を生成
- 02参照画像から動画を生成
- 03シーン間でキャラクターを再利用
- 04コールバック付きの非同期動画生成
- 05単一または複数タスクの照会
- 06モデルとAPIアクションの一覧表示
活用シーン
- 01テキストの説明を動画にする
- 02参照画像に動きを付ける
- 03参照動画のキャラクターを新しいシーンに登場させる
- 04動画生成タスクの結果を確認
MCP 対応
MCP互換クライアントにSoraの動画生成、タスク照会、モデル一覧、アクション一覧のツールを提供していました。ホスト型接続またはローカル実行に対応していましたが、連携は終了し、現在は積極的に提供されていません。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://sora.mcp.acedata.cloud/mcpclaude mcp add --transport http acedatacloud-mcp-sora https://sora.mcp.acedata.cloud/mcp{"mcpServers":{"acedatacloud-mcp-sora":{"type":"http","url":"https://sora.mcp.acedata.cloud/mcp"}}}Cursor で開く{"servers":{"acedatacloud-mcp-sora":{"type":"http","url":"https://sora.mcp.acedata.cloud/mcp"}}}VS Code で開く{"mcpServers":{"acedatacloud-mcp-sora":{"type":"http","url":"https://sora.mcp.acedata.cloud/mcp"}}}{"mcpServers":{"acedatacloud-mcp-sora":{"serverUrl":"https://sora.mcp.acedata.cloud/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
SoraMCP
ステータス: この MCP 統合は終了しており、現在は提供されていません。
AceDataCloud API を通じて Sora を利用した AI 動画生成を行うための Model Context Protocol(MCP) サーバーです。
Claude、VS Code、または MCP 対応クライアントから直接 AI 動画を生成できます。
機能
- テキストから動画を生成 - テキストによる説明から動画を生成します
- 画像から動画を生成 - 画像をアニメーション化し、参照画像から動画を作成します
- キャラクター動画 - 異なるシーンでキャラクターを再利用します
- 非同期生成 - 本番環境のワークフロー向けの Webhook コールバック
- 複数の向き - 横向きおよび縦向きの動画
- タスク追跡 - 生成の進捗状況を監視し、結果を取得します
ツールリファレンス
| ツール | 説明 |
|---|---|
sora_generate_video | Sora を使用して、テキストプロンプトから AI 動画を生成します。 |
sora_generate_video_from_image | Sora を使用して、参照画像から AI 動画を生成します(画像から動画)。 |
sora_generate_video_with_character | 参照動画のキャラクターが登場する AI 動画を生成します。 |
sora_generate_video_async | コールバック通知を使って、AI 動画を非同期で生成します。 |
sora_generate_video_v2 | Sora Version 2 を使用して AI 動画を生成します(パートナーチャネル)。 |
sora_generate_video_v2_async | コールバックを使って、Sora Version 2 で AI 動画を非同期生成します。 |
sora_get_task | 動画生成タスクのステータスと結果を照会します。 |
sora_get_tasks_batch | 複数の動画生成タスクを一度に照会します。 |
sora_list_models | 利用可能なすべての Sora モデルとその機能を一覧表示します。 |
sora_list_actions | 利用可能なすべての Sora API アクションと対応するツールを一覧表示します。 |
クイックスタート
1. API トークンを取得する
- AceDataCloud Platform にサインインします
- Applications を開き、既存の API トークンをコピーします
2. ホスト型サーバーを使用する(推奨)
AceDataCloud はマネージド MCP サーバーをホストしているため、ローカルへのインストールは不要です。
エンドポイント: https://sora.mcp.acedata.cloud/mcp
すべてのリクエストで Bearer トークンが必要です。手順 1 で取得した API トークンを使用してください。
Claude.ai
OAuth を使用して Claude.ai に直接接続できます。API トークンは不要です。
- Claude.ai の 設定 → インテグレーション → さらに追加 に移動します
- サーバー URL を入力します:
https://sora.mcp.acedata.cloud/mcp - OAuth ログインフローを完了します
- 会話でツールを使い始めます
Claude Desktop
設定ファイル(macOS では ~/Library/Application Support/Claude/claude_desktop_config.json)に追加します。
{
"mcpServers": {
"sora": {
"type": "streamable-http",
"url": "https://sora.mcp.acedata.cloud/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_TOKEN"
}
}
}
}
Cursor / Windsurf
MCP 設定(.cursor/mcp.json または .windsurf/mcp.json)に追加します。
{
"mcpServers": {
"sora": {
"type": "streamable-http",
"url": "https://sora.mcp.acedata.cloud/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_TOKEN"
}
}
}
}
VS Code(Copilot)
VS Code の MCP 設定(.vscode/mcp.json)に追加します。
{
"servers": {
"sora": {
"type": "streamable-http",
"url": "https://sora.mcp.acedata.cloud/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_TOKEN"
}
}
}
}
または、Ace Data Cloud MCP extension を VS Code にインストールすると、ワンクリックでホスト型 MCP サーバーを登録できます。
JetBrains IDEs
- 設定 → ツール → AI Assistant → Model Context Protocol(MCP) に移動します
- 追加 → HTTP をクリックします
- 次の内容を貼り付けます。
{
"mcpServers": {
"sora": {
"url": "https://sora.mcp.acedata.cloud/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_TOKEN"
}
}
}
}
Claude Code
Claude Code は MCP サーバーをネイティブでサポートしています。
claude mcp add sora --transport http https://sora.mcp.acedata.cloud/mcp \
-h "Authorization: Bearer YOUR_API_TOKEN"
または、プロジェクトの .mcp.json に追加します。
{
"mcpServers": {
"sora": {
"type": "streamable-http",
"url": "https://sora.mcp.acedata.cloud/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_TOKEN"
}
}
}
}
Cline
Cline の MCP 設定(.cline/mcp_settings.json)に追加します。
{
"mcpServers": {
"sora": {
"type": "streamable-http",
"url": "https://sora.mcp.acedata.cloud/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_TOKEN"
}
}
}
}
Amazon Q Developer
MCP 設定に追加します。
{
"mcpServers": {
"sora": {
"type": "streamable-http",
"url": "https://sora.mcp.acedata.cloud/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_TOKEN"
}
}
}
}
Roo Code
Roo Code の MCP 設定に追加します。
{
"mcpServers": {
"sora": {
"type": "streamable-http",
"url": "https://sora.mcp.acedata.cloud/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_TOKEN"
}
}
}
}
Continue.dev
.continue/config.yaml に追加します。
mcpServers:
- name: sora
type: streamable-http
url: https://sora.mcp.acedata.cloud/mcp
headers:
Authorization: "Bearer YOUR_API_TOKEN"
Zed
Zed の設定(~/.config/zed/settings.json)に追加します。
{
"language_models": {
"mcp_servers": {
"sora": {
"url": "https://sora.mcp.acedata.cloud/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_TOKEN"
}
}
}
}
}
cURL Test
# Health check (no auth required)
curl https://sora.mcp.acedata.cloud/health
# MCP initialize
curl -X POST https://sora.mcp.acedata.cloud/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-03-26","capabilities":{},"clientInfo":{"name":"test","version":"1.0"}}}'
3. ローカルで実行する(代替方法)
サーバーを自分のマシンで実行する場合は、次の手順に従います。
# Install from PyPI
pip install mcp-sora
# or
uvx mcp-sora
# Set your API token
export ACEDATACLOUD_API_TOKEN="your_token_here"
# Run (stdio mode for Claude Desktop / local clients)
mcp-sora
# Run (HTTP mode for remote access)
mcp-sora --transport http --port 8000
Claude Desktop(ローカル)
{
"mcpServers": {
"sora": {
"command": "uvx",
"args": ["mcp-sora"],
"env": {
"ACEDATACLOUD_API_TOKEN": "your_token_here"
}
}
}
}
Docker(セルフホスト)
docker pull ghcr.io/acedatacloud/mcp-sora:latest
docker run -p 8000:8000 ghcr.io/acedatacloud/mcp-sora:latest
クライアントはそれぞれ独自の Bearer トークンで接続します。サーバーは各リクエストの Authorization ヘッダーからトークンを抽出します。
利用可能なツール
動画生成
| ツール | 説明 |
|---|---|
sora_generate_video | テキストプロンプトから動画を生成します |
sora_generate_video_from_image | 参照画像から動画を生成します |
sora_generate_video_with_character | 参照動画のキャラクターを使って動画を生成します |
sora_generate_video_async | コールバック通知付きで動画を生成します |
タスク
| ツール | 説明 |
|---|---|
sora_get_task | 単一タスクのステータスを確認します |
sora_get_tasks_batch | 複数のタスクを一度に確認します |
情報
| ツール | 説明 |
|---|---|
sora_list_models | 利用可能な Sora モデルを一覧表示します |
sora_list_actions | 利用可能な API アクションを一覧表示します |
使用例
プロンプトから動画を生成する
User: Create a video of a sunset over mountains
Claude: I'll generate a sunset video for you.
[Calls sora_generate_video with prompt="A beautiful sunset over mountains..."]
画像から生成する
User: Animate this image of a city skyline
Claude: I'll bring this image to life.
[Calls sora_generate_video_from_image with image_urls and prompt]
キャラクターベースの動画
User: Use the robot character in a new scene
Claude: I'll create a new scene with the robot character.
[Calls sora_generate_video_with_character with character_url and prompt]
利用可能なモデル
| モデル | 最大時間 | 品質 | 機能 |
|---|---|---|---|
sora-2 | 15 秒 | 良好 | 標準的な生成 |
sora-2-pro | 25 秒 | 最高 | より高品質で、長時間の動画 |
動画オプション
サイズ:
small- 解像度は低めで、生成が速くなりますlarge- 解像度が高くなります(推奨)
向き:
landscape- 16:9(YouTube、プレゼンテーション)portrait- 9:16(TikTok、Instagram Stories)
時間:
10秒 - すべてのモデル15秒 - すべてのモデル25秒 - sora-2-pro のみ
設定
環境変数
| 変数 | 説明 | デフォルト |
|---|---|---|
ACEDATACLOUD_API_TOKEN | AceDataCloud の API トークン | 必須 |
ACEDATACLOUD_API_BASE_URL | API のベース URL | https://api.acedata.cloud |
ACEDATACLOUD_OAUTH_CLIENT_ID | OAuth クライアント ID(ホストモード) | — |
ACEDATACLOUD_PLATFORM_BASE_URL | プラットフォームのベース URL | https://platform.acedata.cloud |
SORA_DEFAULT_MODEL | デフォルトのモデル | sora-2 |
SORA_DEFAULT_SIZE | デフォルトの動画サイズ | large |
SORA_DEFAULT_DURATION | デフォルトの時間(秒) | 15 |
SORA_DEFAULT_ORIENTATION | デフォルトの向き | landscape |
SORA_REQUEST_TIMEOUT | リクエストのタイムアウト(秒) | 3600 |
LOG_LEVEL | ログレベル | INFO |
コマンドラインオプション
mcp-sora --help
Options:
--version Show version
--transport Transport mode: stdio (default) or http
--port Port for HTTP transport (default: 8000)
開発
開発環境のセットアップ
# Clone repository
git clone https://github.com/AceDataCloud/SoraMCP.git
cd SoraMCP
# Create virtual environment
python -m venv .venv
source .venv/bin/activate # or `.venv\Scripts\activate` on Windows
# Install with dev dependencies
pip install -e ".[dev,test]"
テストの実行
# Run unit tests
pytest
# Run with coverage
pytest --cov=core --cov=tools
# Run integration tests (requires API token)
pytest tests/test_integration.py -m integration
コード品質
# Format code
ruff format .
# Lint code
ruff check .
# Type check
mypy core tools
ビルドと公開
# Install build dependencies
pip install -e ".[release]"
# Build package
python -m build
# Upload to PyPI
twine upload dist/*
プロジェクト構成
SoraMCP/
├── core/ # Core modules
│ ├── __init__.py
│ ├── client.py # HTTP client for Sora API
│ ├── config.py # Configuration management
│ ├── exceptions.py # Custom exceptions
│ ├── server.py # MCP server initialization
│ ├── types.py # Type definitions
│ └── utils.py # Utility functions
├── tools/ # MCP tool definitions
│ ├── __init__.py
│ ├── video_tools.py # Video generation tools
│ ├── task_tools.py # Task query tools
│ └── info_tools.py # Information tools
├── prompts/ # MCP prompt templates
│ └── __init__.py
├── tests/ # Test suite
│ ├── conftest.py
│ ├── test_client.py
│ ├── test_config.py
│ ├── test_integration.py
│ └── test_utils.py
├── deploy/ # Deployment configs
│ └── production/
│ ├── deployment.yaml
│ ├── ingress.yaml
│ └── service.yaml
├── .env.example # Environment template
├── .gitignore
├── CHANGELOG.md
├── Dockerfile # Docker image for HTTP mode
├── docker-compose.yaml # Docker Compose config
├── LICENSE
├── main.py # Entry point
├── pyproject.toml # Project configuration
└── README.md
貢献
貢献を歓迎します!以下の手順でお願いします。
- リポジトリをフォークします
- フィーチャーブランチを作成します(
git checkout -b feature/amazing) - 変更をコミットします(
git commit -m 'Add amazing feature') - ブランチにプッシュします(
git push origin feature/amazing) - プルリクエストを作成します
ライセンス
MIT ライセンスです。詳細は LICENSE をご覧ください。
リンク
AceDataCloud が心を込めて作成しました
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。