aetherwave-mcp について
aetherwave-mcpは、統一インターフェースでメディアを生成・編集したいエージェントやクリエイター向けのAetherWave Studio用MCPサーバーです。音楽、画像、動画、音声マスタリング、コミックのツールを備え、非同期ジョブの確認や作品ギャラリーにも対応します。
主な機能
- 01音楽・画像・動画の生成
- 02メディアの編集・拡大・リフレーム
- 03音声マスタリングのプリセット
- 04コミックの作成と書き出し
- 05ギャラリーへのアップロードと閲覧
- 06非同期ジョブの送信と状態確認
活用シーン
- 01プロンプトから音楽・画像・動画を生成
- 02画像の編集や背景除去
- 03コミックの作成と書き出し
- 04時間のかかる生成処理の状態確認
MCP 対応
このMCPサーバーは、AetherWave Studioのメディア生成・編集、ギャラリー、コミック、商品関連機能をツールとして対応クライアントに公開します。クライアントはAetherWave APIキーで接続し、非同期ジョブの送信と状態確認を行えます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y @aetherwave-studio/mcpAETHERWAVE_API_KEYシークレットAetherWave Studio API key (starts with aw_live_). Generate one at https://aetherwavestudio.com/developers - first key grants 50 free credits, no card required.ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
@aetherwave-studio/mcp
AetherWave Studio 用の Model Context Protocol サーバーです。MCP 対応クライアント(Claude Code、Cursor、Continue、Claude Desktop、カスタムエージェント)に追加するだけで、LLM は 1 つの API キーと 1 つのクレジットプールを通じて、主要なクリエイティブ AI プロバイダー全体で生成、編集、アップスケール、リフレーム、マスタリングを行えます。
インストールは 1 回。トークンは 1 つ。デフォルトの 33 個のツールで、以下に対応しています。
- 音楽 - Suno V3.5 / V4 / V4.5 / V5 / V5.5
- 画像生成 - Grok Imagine、GPT Image 2、Seedream V4、Wan 2.7、Nano Banana 2、Flux 2、Qwen Image、Z-Image Turbo
- 画像編集 - Grok Imagine I2I、Seedream V4 Edit、Flux Kontext、Wan 2.5 Spicy、Qwen Edit、GPT Image 1.5
- 画像ユーティリティ - 2x / 4x アップスケール、Recraft の背景削除(fal BiRefNet v2 によるフォールバック付き)、Ideogram V3 Reframe
- 動画 - Grok Imagine(KIE+fal フォールバック)、Wan 2.7、Hailuo 02、Seedance Pro/Lite、Kling 2.6(音声対応)、VEO 3.1、Happy Horse
- 動画ユーティリティ - Atlas アップスケーラー(1080p/2K)、rembg u2netp による背景削除、Luma Ray 2 Flash Reframe
- オーディオマスタリング - AetherWave Python サービスによる 12 種類のジャンル/スタイルプリセット
- ギャラリー - 独自の画像、音声、動画をアップロード(ローカルファイル、URL、データ URL に対応)し、保存した作品をページ分けして一覧表示
- ユーザーマニュアル - MCP、Graphic Novel Studio、UGC Studio、Project Studio のマニュアルへの PDF リンク(npx サーバーの Downloads に保存)
- コミックブック - AetherWave Graphic Novel Engine をエンドツーエンドで操作する 9 個のツール:キャスト、キャラクター参照、スクリプト、パネル、文字入れ済みページ、PDF / EPUB / CBZ のダウンロードリンク
- マーチ - 4 個のツール:衣類カタログ、デザインからモックアップの作成、さらに
PRINTFUL_API_TOKENがあれば独自の Printful ストアで商品を作成・一覧表示する 2 個のツールと、管理者向けのショップ掲載ツール 1 個
すべての生成ツールはジョブを送信し、最長 45 秒のソフトデッドラインまで結果を待ちます。すぐに完了するジョブは、1 回の往復で最終 URL を返します。それ以上かかるジョブは state: "running" と taskId を返し、aetherwave_get_job で画像、動画、音楽、マスタリング、コミック、マーチのすべてのパイプラインをポーリングできます。どのツールでも async: true を渡すと、すぐに結果を返します。結果は Cloudflare R2 ギャラリーに自動保存されるため、URL の有効期限が切れません。
コミックツールは、最初からこの仕組みに基づいて構築されています。本を描くには約 1 時間かかるため、時間のかかる各ステップは開始後すぐに戻り、エージェントは aetherwave_comic_status で進行状況を確認します。MCP でコミックブックを作成するをご覧ください。
クイックスタート
# 1. Get a key at https://aetherwavestudio.com/profile (Developer tab)
# 2. Add to your MCP client config (see below)
# 3. Restart the client
# 4. Ask your agent to "generate a synthwave album cover, then animate it"
Claude Code
claude mcp add aetherwave \
-e AETHERWAVE_API_KEY=aw_live_your_key_here \
-- npx -y @aetherwave-studio/mcp
Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json(macOS)または %APPDATA%\Claude\claude_desktop_config.json(Windows)を編集します。
{
"mcpServers": {
"aetherwave": {
"command": "npx",
"args": ["-y", "@aetherwave-studio/mcp"],
"env": {
"AETHERWAVE_API_KEY": "aw_live_..."
}
}
}
}
Claude Desktop を再起動します。
Cursor
Cursor Settings -> MCP -> Add new server で設定します。
{
"aetherwave": {
"command": "npx",
"args": ["-y", "@aetherwave-studio/mcp"],
"env": { "AETHERWAVE_API_KEY": "aw_live_..." }
}
}
Continue(VS Code / JetBrains)
~/.continue/config.yaml に設定します。
mcpServers:
- name: aetherwave
command: npx
args: ["-y", "@aetherwave-studio/mcp"]
env:
AETHERWAVE_API_KEY: aw_live_...
カスタム/プログラムから利用するクライアント
標準的な stdio MCP サーバーです。MCP 仕様に従って stdio 経由で JSON-RPC 2.0 を使用するクライアントであれば接続できます。
AETHERWAVE_API_KEY=aw_live_... npx -y @aetherwave-studio/mcp
ツール一覧
| ツール | 目的 |
|---|---|
aetherwave_list_characters | 保存済みのUGCキャラクター。アイデンティティブロック、リファレンスパック、音声、パーソナリティを含みます |
aetherwave_get_job | ツールが state: "running" として返したジョブ(または async: true を指定して送信したジョブ)の状態を確認します。また、呼び出しがタイムアウトしたジョブを復旧します。画像、動画、動画編集、音楽、マーチャンダイズのモックアップ、コミックのエクスポートに対応します |
aetherwave_balance | 現在のクレジット残高とプラン |
aetherwave_list_image_models | すべての画像モデルのコスト、速度、I2I 対応状況を一覧表示します |
aetherwave_list_video_models | すべての動画モデルの1秒あたりのコスト、長さ、解像度を一覧表示します |
aetherwave_list_master_presets | ターゲットLUFS、タグ、説明を含む12種類のマスタリングプリセットを一覧表示します |
aetherwave_generate_image | 8種類以上のモデルでT2IまたはI2Iを実行します。デフォルトは grok-imagine-t2i(6クレジット、2出力)です |
aetherwave_generate_video | 7種類以上のモデルファミリーでT2VまたはI2Vを実行します。ネイティブ音声、参照画像によるアイデンティティロック、非同期送信に対応します |
aetherwave_generate_music | デフォルトではSuno V5.5を使用します。1回の送信につき2曲を生成し、歌詞ありとインストゥルメンタルに対応します |
aetherwave_edit_image | I2I画像編集を行います。デフォルトは grok-imagine-i2i(10クレジット、画像1枚)です |
aetherwave_upscale_image | 2倍または4倍にアップスケールします。4クレジットです |
aetherwave_reframe_image | Ideogram V3 Reframeで新しいアスペクト比に変更します(端をアウトペイントします) |
aetherwave_remove_background | Recraftを優先し、フォールバックとしてfal BiRefNet v2を使用します(自動フェイルオーバー)。出力は自動的にギャラリーに保存されます |
aetherwave_upscale_video | Atlas(1080p、2K)またはBytePlus(1080pから8K)で動画をアップスケールします |
aetherwave_remove_background_video | rembg u2netpを使ってフレーム単位で背景を削除します。透明なWebMまたは単色の出力に対応します。1秒あたり2クレジットです |
aetherwave_reframe_video | Luma Ray 2 Flashで新しいアスペクト比に変更します |
aetherwave_master_audio | 12種類のジャンル/スタイルプリセットでAIマスタリングを行います。1トラックあたり20クレジットですが、Producer/Mogul/Ultimateプランでは無料です |
aetherwave_list_my_creations | ワークフローを連鎖させるためのページ分割されたギャラリー読み込み |
aetherwave_upload_to_gallery | ローカルファイル(npxのみ)、URL、またはデータURLから、自分の画像、音声、動画をギャラリーに追加します。無料ですが、ストレージを使用します。最大95 MBです |
aetherwave_get_user_manual | ユーザーマニュアルPDF(mcp、graphic-novel、ugc-studio、project-studio)へのリンクを取得します。npxサーバーでは、Downloadsにも保存します |
aetherwave_comic_estimate | ページ数に応じた脚本とコマのクレジット見積もりを無料で取得します |
aetherwave_comic_create | コミックプロジェクト(タイトル、あらすじ、キャスト、アートスタイル)を作成します。無料です |
aetherwave_comic_character_reference | キャラクターの参照画像を生成(1枚あたり6クレジット)するか、承認します |
aetherwave_comic_write_script | 脚本の執筆を開始します(2~3分、使用時に課金。12ページで約40クレジット) |
aetherwave_comic_draw | 未作画のすべてのコマの描画を開始します(1コマあたり9クレジット、成功時に課金)。再度呼び出しても安全です |
aetherwave_comic_status | 進行状況、停止した実行、失敗したコマとその理由、ページURL、次の手順を確認します。無料です |
aetherwave_comic_redraw_panel | 1コマを描き直します。必要に応じてシーンの表現を変更できます(成功時に9クレジット) |
aetherwave_comic_assemble | ページのレイアウトと文字入れを行います(1ページあたり約4秒)。無料です |
aetherwave_comic_export | 約1日間有効なダウンロードリンクとして、PDF、EPUB、CBZ、またはバンドルをエクスポートします。無料です |
すべての生成ツールの説明には、モデル選択の指針が含まれています。エージェントは list_image_models や list_video_models を呼び出して往復しなくても、プロンプトの意図に基づいて適切なモデルを選択できます。
MCP でコミックを作成する
9 つのツールが AetherWave Graphic Novel Engine を最初から最後まで動かすため、エージェントは一文から、文字入りの完成したコミックを作成できます。たとえば、次のように指示します。
14 歳の配達人の少女と、文句ばかり言う整備士の叔父が、夜のアルプスを村に残された最後の郵便気球で飛び、家がダムの洪水に襲われるのを防ぐ手紙を届ける、12 ページのフランコ・ベルギー風冒険コミックを作ってください。全年齢向けです。クレジットは 350 未満に抑えてください。
すると、エージェントは次の手順を実行します。
| 手順 | ツール | 処理内容 | 所要時間 | クレジット |
|---|---|---|---|---|
| 1 | aetherwave_balance | どのアカウントで支払うか、そのアカウントで作品の費用を賄えるかを確認します | 即時 | 0 |
| 2 | aetherwave_comic_estimate | 上限額を見積もります(1 ページあたり 4 コマとして計算します) | 即時 | 0 |
| 3 | aetherwave_comic_create | プロジェクトと登場人物を作成し、projectId と各 characterId を返します | 数秒 | 0 |
| 4 | action: "generate" を指定した aetherwave_comic_character_reference | 作品のスタイルに合わせて、各登場人物の全身リファレンス画像を描きます | 約 1 分以内 | 1 人につき 6 |
| 5 | action: "approve" を指定した aetherwave_comic_character_reference | 選んだ画像を確定します。すべてのコマでこの画像が使われ、顔が一貫して描かれます | 数秒 | 0 |
| 6 | aetherwave_comic_write_script | 章、ページ、コマ、セリフ、キャプションからなる脚本の作成を開始します | 2~3 分 | 使用時に課金 |
| 7 | aetherwave_comic_status | projectStatus が script-ready になるまでポーリングし、実際のコマ単価である creditsToFinishDrawing を確認します | 即時 | 0 |
| 8 | aetherwave_comic_draw | すべてのコマを 1 コマずつ描き始めます。maxCredits で実行の上限を設定します | 1 コマあたり 1.5~6 分 | 成功時、1 コマあたり 9 |
| 9 | aetherwave_comic_status | 数分おきにポーリングします。drawing: "stalled" は、コマを残したまま実行が終了したことを意味します。もう一度 aetherwave_comic_draw を呼び出してください | 即時 | 0 |
| 10 | aetherwave_comic_redraw_panel | コンテンツ拒否で繰り返し失敗するコマについて、シーンの表現を変更して描き直します | 1.5~6 分 | 成功時、9 |
| 11 | aetherwave_comic_assemble | すべてのページをレイアウトし、文字を入れます | 1 ページあたり約 4 秒 | 0 |
| 12 | aetherwave_comic_export | PDF(または EPUB/CBZ/バンドル)のダウンロードリンクを返します | 約 15~30 秒 | 0 |
実際の作品での計測結果
「The Last Balloon Post」(2026-09-25)は、これらのツールが呼び出すものと同じ API を通じて、まさにこの手順で作成されました。
- 12 ページ、27 コマ、301 クレジット:27 コマ × 9 = 243、脚本 40、登場人物のリファレンス 3 人分で 18。12 ページで 48 コマあると想定するため、見積もりは 462 クレジットでした。脚本の作成後に、
creditsToFinishDrawingを使って見積もり直してください。 - 描画時間は約 65 分で、1 コマあたり 1.5~6 分かかり、必ず 1 コマずつ順番に描画します。最初から最後まででは約 80 分です。
- 途中で 9 コマの描画に失敗しましたが、課金はありませんでした:コンテンツフィルターによる拒否が 3 回、上流の「Internal Error」による一時的な失敗が 4 回、サーバーの再起動時に描画が中断されたコマが 2 つでした。すべて後の実行で描画できました。
- 12 ページの組み立てには約 45 秒かかりました。PDF は 130 MB だったため、エクスポートではファイルではなくリンクが返されます。
エージェントが従うべきルール
- スクリプトを書く前に参照画像を承認してください。 承認によって、画像に描かれたキャラクターが再度説明され、その説明をもとにスクリプトが書かれます。承認済みの参照画像がないキャラクターは、テキストだけをもとに描かれるため、コマごとに顔が変わってしまいます。
- 停止した実行を完了扱いしないでください。 サーバーの再起動は、描画の実行を通知なく終了させます。パネルが保留中または失敗していて、実行中の処理がない場合、
aetherwave_comic_statusはdrawing: "stalled"を返します。aetherwave_comic_drawは再度呼び出しても安全です。不足しているものだけを描画し、二重に開始することはありません(2回目の開始ではalreadyDrawingが返されます)。 - 拒否されたパネルは再試行せず、表現を変えてください。 拒否の理由は、ステータスの
failedPanels[].errorMessageに含まれています。コンテンツが理由で拒否された場合、単純に再試行しても再び拒否されます。aetherwave_comic_redraw_panelに新しいpromptを指定すると、その描画のシーン説明が置き換わります。成人と子どもの身体的接触を描くシーンは、画像フィルターによって拒否されます。 - スクリプトを書き直すと、すべてのパネルが削除されます。 パネルがあるプロジェクトでは、
aetherwave_comic_write_scriptはreplaceExisting: trueが指定されていない限り拒否します。 - すでに組み立て済みのページで描き直した場合は、再度組み立ててください。
aetherwave_comic_statusは、そのようなページをpages.staleSinceAssemblyに一覧表示します。 - 参照画像にできるのは、永続的な画像だけです。
approveは一時的なリンク(生のプロバイダー結果の URL など)を拒否します。リンクが期限切れになると、ブックが壊れてしまうためです。 - コミックツールの結果にはすべて
accountが含まれます。これは支払いを行う AetherWave のユーザー名です。複数の MCP 接続を実行する場合は、これを確認してください。
自分のキャラクターを使ったプログラムによる動画制作
上記のツールを組み合わせると、これまで API ではできなかったことが可能になります。説明をエージェントに渡すだけで、すでに作成済みのキャラクターが主役となり、全編を通して顔と声が一貫した、複数ショットの完成映像を得られます。
UGC キャラクターとは、AetherWave に保存した、画面に繰り返し登場する人物のことです。固定された外見、承認済みの参照画像セット、声、性格を備えています。エージェントは aetherwave_list_characters を使って、そのキャラクターを見つけます。この機能がなければ、エージェントに 「私のAmyキャラクターでこれを撮影して」 と指示しても、Amy が誰なのかを知る方法がなく、クリップごとに別の顔を作り出してしまいます。
一連の手順
// 1. Discover the character. There is no other way to find them.
const { characters } = await listCharacters({ name: "amy" });
const amy = characters[0];
// 2. Build every prompt from her stored identity - VERBATIM, never paraphrased.
// Identical text is identical conditioning; that IS the consistency mechanism.
const prompt = [
shotDescription,
amy.identityBlock, // "CORE IDENTITY: same woman, Nordic, ..."
`Her speaking voice: ${amy.voiceSpec ?? amy.voiceDescriptor}`,
`She says exactly this and nothing else: "${line}"`,
].join("\n\n");
// 3. Submit async, anchored to her approved pack, with audio on.
const { taskId } = await generateVideo({
prompt,
model: "seedance-2-mini",
duration: 12,
resolution: "480p",
aspectRatio: "16:9",
generateAudio: true, // without this the clip is SILENT
referenceImages: amy.referenceImages, // NOT imageUrl - that drops the anchors
async: true, // returns in ~2s, survives the client timeout
});
// 4. Poll until the render lands.
let job;
do { await sleep(15000); job = await getJob({ taskId, kind: "video" }); }
while (!job.done && !job.error);
// 5. Repeat per shot, then assemble the clips in order.
キャラクターの一貫性を実際に保つための4つのルール
- すべてのプロンプトに
identityBlockをそのまま追加してください。 自分の言葉で書き換えるとロックが崩れます。一字一句同じテキストを使うことが、仕組みのすべてです。 imageUrlではなくreferenceImagesを渡してください。 最初のフレームを指定すると、エンジンは最初のフレームモードに切り替わり、参照画像が破棄されます。キャラクターに承認済みの画像セットがある場合、そのセットはヒーロー画像と併用されるのではなく、ヒーロー画像を置き換えます。両方を混ぜると、顔の見え方が引っ張られてしまいます。- 同じ理由から、クリップ間で音声のテキストを一字一句同じにしてください。
- セリフがあるものには
generateAudio: trueを設定してください。 デフォルトではオフで、Seedance 2.x では無料です。そのため、無音クリップを選んでも安くなるわけではなく、単に品質が落ちるだけです。
長さに合わせたセリフの作成
duration が基準になります。エンジンは指定された秒数を約0.1秒以内の精度で守り、早めに終えるのではなく、ペースを変えてセリフをその長さに合わせます。そのため、セリフに合わせてクリップを作るのではなく、クリップに合わせてセリフを書いてください。実測では、1秒あたり約2語が目安です。音声の説明にある1分あたりの語数はキャラクターの説明であり、エンジンの説明ではありません。その数値をもとに割り当てた結果、22クリップの制作で35%超過しました。
発音の難しい単語は、実際の発音どおりに綴ってください。"superintelligence" より "super intelligence" のほうが、安定して生成されます。
⚠️ 組み立てる前に音声を確認してください
テイクが誤った言葉を話しているのに、URL付きで success と返されることがあります。同じプロンプトを再レンダリングしたところ、きれいに仕上がったテイクが1つある一方で、文全体が抜け落ちたテイクも1つありました。これはテイクごとのランダム性によるもので、レスポンスから両者を見分けることはできません。22クリップの制作では、4つのクリップで誤読があり、再生しない限りどれも検出できませんでした。
無人で組み立てるものについては、各クリップを文字起こしし、使用する前に依頼したセリフと照らし合わせてスコアを付け、失敗したものは再撮影してください。確認に費用はかかりませんが、クリップにはすでにクレジットを使っています。スコアは、前のステップから渡された内容ではなく、スクリプトと照らし合わせてください。
会話からグッズを販売する(Printful)
作りたいものを頼むだけで、どんなデザインでもプリント・オン・デマンドの商品にできます。
「NIGHT SHIFT とクローム文字で書かれたTシャツを作って、黒の Bella+Canvas 3001 に載せて、モックアップを見せてから、Printful ストアに $29.99 で追加して。」
| ツール | コスト | 機能 |
|---|---|---|
aetherwave_merch_garments | 無料 | Tシャツ、タンクトップ、パーカー、帽子:カラー、米国内在庫のサイズ、インチ単位のプリント範囲、刺繍糸のカラー |
aetherwave_merch_prepare_design | 1クレジット | 任意の画像(AetherWave URL、data URL、またはローカルファイルパス)を、背景透過で余白を切り詰めたプリント用 PNG に変換します。knockout は、アート内の白い文字を消すことなく、単色の背景を除去します |
aetherwave_merch_mockup | 3クレジット | 実際のプリント範囲と DPI に合わせてプリントファイルを作成し、Printful のモックアップをレンダリングします。レンダリングに失敗した場合は返金されます。不適切な衣類、カラー、配置で課金されることはありません。1時間あたり20回 |
aetherwave_merch_mockup_status | 無料 | 90秒の待機時間を超えたレンダリングの状態を確認します |
aetherwave_printful_create_product | 無料 | ご自身の Printful ストアに商品を作成します |
aetherwave_printful_list_products | 無料 | ストアの商品を一覧表示します |
Printful ストアを接続する
Printful のトークンをサーバーの env に追加してください。これはお使いのマシンと api.printful.com の間でのみ使用され、AetherWave に送信されることはありません。
{
"mcpServers": {
"aetherwave": {
"command": "npx",
"args": ["-y", "@aetherwave-studio/mcp"],
"env": {
"AETHERWAVE_API_KEY": "aw_live_...",
"PRINTFUL_API_TOKEN": "your Printful private token",
"PRINTFUL_STORE_ID": "only needed for account-level tokens"
}
}
}
}
Printful の Settings > API でトークンを作成します(1つのストアにスコープを限定したプライベートトークンが最も簡単です)。aetherwave_printful_* ツールは PRINTFUL_API_TOKEN が設定されている場合にのみ、ローカルの npx サーバー上に表示されます。リモートコネクターがストアキーを求めることはありません。商品は Printful に登録されます。Shopify、Etsy、その他の接続済みチャネルへの公開は、通常どおり Printful 上で行います。
商品を宣伝する前に: Printful では注文ごとに料金が発生します(衣類、送料、米国では多くの場合、売上税)。販売価格で費用をまかなえることを確認してください。販売者はあなたです。権利を持つアートワークと文言のみを印刷してください。
Printify: 近日対応予定です。カタログの仕組みが異なり(同じ衣類でも複数のプリント業者があり、それぞれ価格や在庫が異なります)、中途半端なフラグではなく、専用のツールを用意します。
ツールリファレンス
aetherwave_balance
現在のクレジット残高を返します。入力はありません。
戻り値: { credits, plan, ... }
aetherwave_list_image_models
クレジットコスト、対応入力、解像度とアスペクト比のオプションを含む、すべての画像モデルを返します。入力はありません。
戻り値: { models: [...] }
aetherwave_list_video_models
秒あたりのクレジットコスト、再生時間、解像度、アスペクト比を含む、すべての動画モデルを返します。入力はありません。
戻り値: { models: [...] }
aetherwave_list_master_presets
ターゲット LUFS、タグ、説明、難易度を含む、すべてのマスタリングプリセットを返します。どのプリセットがトラックに適しているかわからない場合は、master_audio の前に呼び出してください。
戻り値: { presets: [...] }(各項目:{ id, name, description, target_lufs, tags, difficulty, icon })
aetherwave_generate_image
T2I または I2I です。送信してポーリングし、最終 URL を返します。
| Param | Type | Required | Default | Notes |
|---|---|---|---|---|
prompt | string | yes | - | 画像のテキストによる説明 |
model | string | no | grok-imagine-t2i | モデル ID。全一覧は list_image_models を使用してください |
aspectRatio | string | no | model default | 例:1:1、16:9、9:16 |
resolution | string | no | model default | 1K、2K。モデルによっては 480p/720p に対応 |
referenceImages | string[] | no | - | I2I 用の URL。モデルが I2I の場合は必須 |
numImages | int (1-8) | no | model default | 複数出力に対応するモデル用 |
negative_prompt | string | no | - | 一部のモデルでサポート |
seed | int | no | - | 決定論的な生成。一部のモデルでサポート |
選択の目安(ツールの説明に組み込み済み): 最適な画像を 1 枚 → gpt-image-2-t2i(1K で 9 cr、2K で 12 cr)。フォトリアル → gpt-image-2-t2i または nano-banana-2。画像内のテキスト → gpt-image-2-t2i。NSFW → wan-2.5-spicy-t2i。プレミアム → grok-imagine-quality-t2i(14 cr)。最安 → z-image-turbo(2 cr)。
戻り値: { taskId, state, images, autoSaved, creationIds }
aetherwave_list_characters
保存済みの UGC キャラクター(繰り返し登場する、名前の付いた撮影対象の人物)を一覧表示します。制作全体を通して同一人物として保つために必要な情報がすべて含まれます。ユーザーがすでに登録している人物をリクエストで指定した場合は、必ず最初にこれを呼び出してください。
| Param | Type | Required | Notes |
|---|---|---|---|
name | string | no | 名前またはハンドルに対する、大文字と小文字を区別しない部分一致フィルター。すべて一覧表示する場合は省略 |
戻り値: { count, characters[], usage }。各キャラクターには次の情報が含まれます。
| Field | Why it matters |
|---|---|
identityBlock | 固定された CORE IDENTITY 文字列。すべてのプロンプトにそのまま追加してください |
referenceImages | 承認済みの画像セット。generate_video の referenceImages として渡します |
hasApprovedPack | 画像セットが存在する場合は True です。heroImageUrl よりこちらを優先してください |
heroImageUrl | 画像セットがないキャラクター用の単一の代替アンカー |
voiceId / voiceSpec / voiceDescriptor | 音声条件付けのテキスト。クリップ間でバイト単位で同一に保ってください |
personality | ユーザーが記述したトーン、癖、speechStyle、つまり話し方の方向性 |
negativeLock | キャラクターのネガティブプロンプト |
engineParams | モードごとの参照強度 |
長時間のジョブも 45 秒以内に返ります
MCP クライアント(claude.ai、Claude Desktop、Cursor)は、約 60 秒でツール呼び出しを中断します。0.3.0 より前は、長時間のツールはすべて 6~15 分間ブロックしていたため、90 秒かかる画像レンダリングは、ジョブ自体は完了して課金されているにもかかわらず、クライアント上では「失敗」し、taskId は中断された呼び出しとともに失われていました。
現在、ジョブを送信するすべてのツール(generate_image、edit_image、upscale_image、reframe_image、remove_background、generate_video、upscale_video、reframe_video、remove_background_video、generate_music、merch_mockup、comic_export)は、最大約 45 秒間ポーリングしてから、次を返します。
{ "state": "running", "taskId": "…", "kind": "image", "checkWith": "aetherwave_get_job", "pollEverySeconds": 10, "next": "…" }
taskId と kind を使って aetherwave_get_job をポーリングし、done になるまで確認してください。これらの各ツールには、明示的な待機方法が 2 つあります。
| Arg | Effect |
|---|---|
async: true | ジョブを送信し、ポーリングせずに taskId をすぐに返します |
wait: true | 以前の長時間ブロック(6~15 分の予算)を使用します。クライアントが 60 秒を超える呼び出しを許可する場合にのみ使用してください |
master_audio にはジョブ ID がありません(リクエスト自体がジョブです)。これも約 45 秒以内に返ります。呼び出しの終了後も処理が続くマスター音源はギャラリーに保存されます。再送信せず、aetherwave_list_my_creations を audio タイプで呼び出して見つけてください。
aetherwave_get_job
taskId でジョブを確認します。state: "running" の結果が返された場合、async: true で送信した後、または呼び出しがタイムアウトした生成を復旧する場合に使用してください。クライアント側で何が起きたかにかかわらず、ジョブはサーバー側で実行を続け、ギャラリーに保存されます。
| Param | Type | Required | Notes |
|---|---|---|---|
taskId | string | yes | ツールが返した taskId(または taskKey / exportId) |
kind | enum | yes | image(生成、編集、アップスケール、リフレーム、背景の削除)、video、video-edit(動画のアップスケール/リフレーム/背景の削除)、music、merch-mockup、comic-export |
projectId | string | comic-export の場合 | エクスポート対象のコミックプロジェクト |
戻り値: { taskId, kind, state, done, failed, videoUrl, imageUrls, tracks, mockups, downloadUrl, autoSaved, creationIds, error, next, raw }
aetherwave_generate_video
T2V または I2V です。送信後、最大約45秒間ポーリングし、レンダリングが完了していれば URL を返します。完了していない場合は state: "running" と taskId を返します(動画の生成には1~8分かかるため、通常はこちらが返されます)。
| Param | Type | Required | Default | Notes |
|---|---|---|---|---|
prompt | string | yes | - | シーンのテキストによる説明 |
model | string | no | grok-imagine-t2v | モデル ID。list_video_models を使用してください |
duration | int (2-30) | no | model default | 秒数。Grok では6~15秒に対応 |
resolution | enum | no | model default | 480p、720p、1080p、2K |
aspectRatio | string | no | model default | 例:16:9、9:16、1:1 |
imageUrl | string | no | - | I2V モデルでは必須 |
endImageUrl | string | no | - | 一部の I2V モデルは最初と最後のフレームに対応 |
mode | enum | no | normal | Grok Imagine:fun、normal、spicy |
generateAudio | bool | no | false | 動画と一緒に音声/効果音をレンダリングします。 これを指定しない場合、クリップは無音です。Seedance 2.x では、すべての解像度で無料です |
referenceImages | string[] (max 9) | no | - | クリップ全体で一貫性を保つための、被写体の参照画像です。imageUrl とは同時に指定できません。https URL は取得され、自動的にエンコードされます |
async | bool | no | false | 待機せずに taskId をすぐに返します |
wait | bool | no | false | 最大8分間待機します。クライアントが60秒を超える呼び出しに対応している場合のみ使用してください |
戻り値(完了時): { taskId, state, videoUrl, fallbackProvider, autoSaved, creationId, kieTaskId }
戻り値(レンダリング中、または async の場合): { state: "running", taskId, kind: "video", checkWith, pollEverySeconds, next }
レンダリングには1~8分かかり、ほとんどの MCP クライアントは60秒で呼び出しを中断するため(
MCP error -32001)、このツールは約45秒以内にstate: "running"を返し、aetherwave_get_jobでポーリングできるようにします。クライアントの動作にかかわらず、ジョブは送信され、課金され、ギャラリーに保存されます。
⚠️
imageUrlとreferenceImagesは併用できません。 最初のフレームを指定すると、エンジンは最初のフレームモードに切り替わり、参照画像が除外されます。その結果、ドリフトを防ぐ唯一の方法が無効になります。両方を渡すと、一方を黙って優先するのではなく、明示的なエラーが返されます。
aetherwave_generate_music
Suno による音楽生成です。1回の送信で2つのトラックが生成されます。
| Param | Type | Required | Default | Notes |
|---|---|---|---|---|
prompt | string | yes | - | スタイル/ムード/テーマの説明 |
instrumental | boolean | no | false | true の場合、ボーカルなしで生成 |
model | enum | no | V5_5 | V3_5、V4、V4_5、V5、V5_5 |
title | string | no | - | トラックに付ける任意のタイトル |
lyrics | string | no | - | カスタム歌詞。Suno に作成させる場合は省略 |
戻り値: { taskId, status, tracks }
aetherwave_edit_image
テキストプロンプトに従って画像を編集する I2I です。
| Param | Type | Required | Default | Notes |
|---|---|---|---|---|
prompt | string | yes | - | 編集内容のテキストによる説明 |
imageUrl | string | yes | - | 元画像の公開 URL |
model | string | no | grok-imagine-i2i | 10 cr、画像 1 枚 |
aspectRatio | string | no | source ratio | 例:1:1、16:9 |
resolution | string | no | model default | 一部のモデル:1K、2K、4K |
quality | enum | no | model default | low、medium、high(GPT Image) |
maxImages | int (1-8) | no | - | 複数出力モデル用 |
renderingSpeed | enum | no | model default | turbo、balanced、quality |
negative_prompt | string | no | - | 一部のモデルでサポート |
選択の目安: 控えめな編集/キャラクターの一貫性 → flux-kontext-pro。NSFW → wan-2.5-spicy-i2i。最高品質 → gpt-image-1.5-i2i または grok-imagine-quality-i2i。単一出力/4K → seedream-v4-edit。
URL に関する注意: スペースや丸括弧を含む元画像の URL は、上流で失敗する場合があります。特殊文字を含まないシンプルな URL を使用してください。
戻り値: { taskId, state, images, autoSaved, creationIds }
aetherwave_upscale_image
一律 4 クレジットで 2 倍または 4 倍にアップスケールします。
| Param | Type | Required | Default | Notes |
|---|---|---|---|---|
imageUrl | string | yes | - | 元画像の公開 URL |
upscaleFactor | enum | no | 2x | 2x または 4x |
クレジット費用は、元画像の解像度 × 倍率に応じて変動します。
戻り値: { taskId, state, images, autoSaved, creationIds }
aetherwave_reframe_image
Ideogram V3 Reframe。新しいアスペクト比に合わせて画像の端を外側に描き足します。
| Param | Type | Required | Default | Notes |
|---|---|---|---|---|
imageUrl | string | yes | - | 元画像の公開 URL |
aspectRatio | string | yes | - | 目標の比率:1:1、16:9、9:16、4:3、3:4、21:9 |
speed | enum | no | balanced | turbo(5 cr)、balanced(10 cr)、quality(14 cr) |
戻り値: { taskId, state, images, autoSaved, creationIds }
aetherwave_remove_background
Recraft を優先して使用し、失敗時は fal.ai BiRefNet v2 にフォールバックします。画像 1 枚あたり約 5 cr です。
| Param | Type | Required | Default | Notes |
|---|---|---|---|---|
imageUrl | string | yes | - | 元画像の公開 URL |
戻り値: { taskId, state, images }(透明なアルファチャンネル付きの PNG)
aetherwave_upscale_video
2 つのエンジンを使用します。Atlas は 1080p と 2K に対応し、BytePlus は 1080p、2K、4K、8K に対応します。4K と 8K では BytePlus が自動選択されます。
ティアは寸法を表すものではありません。名称は 16:9 の規格に基づいているため、入力動画はティアの枠内に収まるように処理され、小さいほうの寸法が優先されます。正方形の入力を 4k で処理すると、3840x3840 ではなく 2160x2160 が返されます。ピクセル数を正確に指定する場合は、適切な最高ティアを選び、ffmpeg でリサイズしてください。
| Param | Type | Required | Default | Notes |
|---|---|---|---|---|
videoUrl | string | yes | - | 元動画の公開 URL(MP4) |
targetResolution | enum | no | 1080p | 1080p、2k、4k、8k。Atlas:1080p は 7 cr/s(最大 53 秒)、2k は 10 cr/s(最大 23 秒)、入力は 30fps 以下。BytePlus:4 / 8 / 16 / 62 cr/s |
upscaleProvider | enum | no | atlas at 1080p/2k | atlas または byteplus。4k と 8k は常に BytePlus で処理されます |
戻り値: { taskId, status, videoUrl, autoSaved, creationId }
aetherwave_remove_background_video
AetherWave の Python サービス上で rembg u2netp を使い、フレームごとに背景を除去します。2 cr/秒です。
| Param | Type | Required | Default | Notes |
|---|---|---|---|---|
videoUrl | string | yes | - | 元動画の公開 URL(MP4) |
bgType | enum | no | transparent | transparent = アルファチャンネル付き WebM、color = 単色で置き換え |
customColor | string | no | #00ff00 | bgType: "color" の場合に単色置き換えで使う 16 進数カラー |
戻り値: { taskId, status, videoUrl, autoSaved, creationId }
aetherwave_reframe_video
Luma Ray 2 Flash で新しいアスペクト比にリフレームします。1 秒あたり 17 クレジットです。
| パラメーター | 型 | 必須 | デフォルト | 備考 |
|---|---|---|---|---|
videoUrl | string | はい | - | 元の動画(MP4)の公開 URL |
reframeAspectRatio | enum | はい | - | 16:9、9:16、1:1、4:3、3:4、21:9 |
reframePrompt | string | いいえ | - | 新たに追加する映像端の内容を指定する任意のプロンプト(例:「夕焼け雲が広がる空を拡張する」) |
戻り値: { taskId, status, videoUrl, autoSaved, creationId }
aetherwave_master_audio
AetherWave Python サービスを使用した AI マスタリングです。同期応答(ルート内部でポーリングするため、30 秒~5 分かかります)。1 トラックあたり 20 クレジットです。Artist、Producer、Mogul、Ultimate プランでは無料です。出力は WAV(3 分のトラックあたり約 50MB)で、Cloudflare R2 に自動で再ホストされます。
| パラメーター | 型 | 必須 | デフォルト | 備考 |
|---|---|---|---|---|
audioUrl | string | はい | - | MP3 または WAV の公開 URL |
preset | string | はい | - | 12 種類から選択(下記参照) |
trackTitle | string | いいえ | - | ギャラリーの行に表示する任意のタイトル |
プリセット一覧(12 種類。/api/master-presets からリアルタイムで取得):
| プリセット | 名前 | 目標 LUFS | 用途 |
|---|---|---|---|
streaming | ストリーミング向け | -14 | Spotify、Apple Music、YouTube |
loud | ラウド&パンチー | -9 | 競争力のある音圧 |
gentle | ジェントルタッチ | -16 | アコースティック、クラシック、ジャズ |
hip_hop | ヒップホップ/トラップ | -11 | 重厚な低音+クリアな高音+808 |
edm | EDM/エレクトロニック | -10 | ハウス、テクノ、ダブステップ、ドロップ |
pop | ポップ/トップ40 | -12 | ラジオ向けの仕上がり |
rock | ロック/オルタナティブ | -12 | パンチのある中音域、ざらついた質感 |
lofi | ローファイ/チル | -14 | 温かみのある、リラックスしたサウンド |
rnb | R&B/ソウル | -13 | |
acoustic | アコースティック/フォーク | -16 | ダイナミクスを維持 |
cinematic | シネマティック/オーケストラ | -18 | 広いダイナミクス |
podcast | ポッドキャスト/音声 | -16 | 音声を前面に |
戻り値: { success, masteredUrl, preset, trackTitle, creditsCharged, isFree }
aetherwave_upload_to_gallery
ユーザーがすでに持っているファイルを AetherWave ギャラリーに保存し、ほかのすべてのツールで使用できる永続 URL を返します。無料(クレジット不要)です。アカウントのストレージ容量を使用します。プランのストレージ容量を超えるアップロードは、残り容量とともに拒否されます。
| パラメーター | 型 | 必須 | 備考 |
|---|---|---|---|
filePath | string | 3 つのうちいずれか | このコンピューター上のファイル。npx サーバーのみ。リモートコネクターはディスクを読み取れません |
url | string | 3 つのうちいずれか | 公開されている http または https リンク。サーバーが取得します。プライベートアドレスや内部アドレスに解決されるリンクは拒否されます |
dataUrl | string | 3 つのうちいずれか | data: URL |
title | string | いいえ | ギャラリーのタイトル。デフォルトはファイル名です |
description | string | いいえ | |
tags | string[] | いいえ | 最大 20 個 |
対応形式:画像 png jpg webp gif、音声 mp3 wav m4a flac ogg、動画 mp4 webm mov。1 ファイルあたり最大 95 MB。これを超えるファイルはウェブサイトのアップローダーからアップロードしてください。
戻り値: { success, creationId, url, type, title, sizeBytes }
aetherwave_get_user_manual
ユーザーマニュアル PDF のダウンロードリンクを返します。npx サーバーでは、PDF をユーザーの Downloads フォルダー(または saveTo)にも保存し、パスを返します。無料です。
| パラメーター | 型 | 必須 | デフォルト | 備考 |
|---|---|---|---|---|
manual | enum | いいえ | mcp | mcp、graphic-novel、ugc-studio、project-studio |
saveTo | string | いいえ | Downloads | npx サーバーのみ。フォルダー、またはリンクのみを返す場合は "none" |
戻り値: { manual, title, url, savedTo?, sizeBytes? }
aetherwave_list_my_creations
ページネーション対応のギャラリー読み取りです。処理を連鎖させる場合(「直近の画像5枚を9:16にリフレーム」など)に便利です。
| パラメーター | 型 | 必須 | デフォルト | 備考 |
|---|---|---|---|---|
type | enum | いいえ | all | image、video、audio |
limit | int (1-500) | いいえ | 100 | 最大アイテム数 |
offset | int | いいえ | 0 | ページネーションのオフセット |
favoritesOnly | boolean | いいえ | false | お気に入りに絞り込み |
戻り値: { items, total, offset, limit, hasMore }。各アイテム:{ id, type, title, prompt, model, createdAt, isFavorite, contentUrl, thumbnailUrl, visibility, rating, duration?, width?, height?, likeCount, totalPlays, metadata }。
コミックブックツール
9つすべてが、Graphic Novel Studioウェブアプリで使用される/api/graphic-novel/*ルートをラップしているため、MCP経由で作成した本はスタジオで開くことができ、その逆も可能です。各結果には、課金対象のユーザー名であるaccountが含まれます。
aetherwave_comic_estimate
無料の上限見積もりです。1ページあたり4コマを想定しているため、短い本は通常これより安くなります(12ページの場合:見積もり462、実際のコスト301)。
| パラメーター | 型 | 必須 | デフォルト | 備考 |
|---|---|---|---|---|
pageCount | int (4-64) | はい | - | スタジオでは12、16、24、32、48、64を選べます |
imageModel | enum | いいえ | gpt-image-2 | gpt-image-2(高速:GPT Image 1.5のコマ+GPT Image 2の表紙)またはgpt-image-2-5(高品質、低速)。どちらも1コマあたり9クレジット |
戻り値: { account, scriptCredits, panelCredits, assumedPanels, creditsPerPanel, totalCredits, imageModel, note }
aetherwave_comic_create
プロジェクトと登場人物を作成します。無料です。まだ何も生成されません。
| パラメーター | 型 | 必須 | デフォルト | 備考 |
|---|---|---|---|---|
title | string | はい | - | 表紙のコマに描かれます |
premise | string | はい | - | 状況、目標、賭けられているもの |
characters | array (1-12) | はい | - | 各要素は{ name, visualDescription, role?, personalityNotes?, backstoryNotes? }です。roleはprotagonist、antagonist、supporting(デフォルト)、またはminorです。表紙は主人公を中心に描かれます |
artStyle | enum | いいえ | marvel | manga、anime、marvel、dc-comic、comic-noir、franco-belgian、retro-silver-age、webtoon、underground-indie、painted-realism、pixar-3d、hyper-realistic、custom |
genre | enum | いいえ | fantasy | action、adventure、fantasy、sci-fi、horror、romance、mystery、thriller、slice-of-life、superhero、historical、literary |
contentRating | enum | いいえ | teen | all-ages、teen、mature |
pageCount | int (4-64) | いいえ | 24 | 目標ページ数 |
imageModel | enum | いいえ | gpt-image-2 | 前述のとおりです。作成後は変更できません |
settingDescription | string | いいえ | - | 場所、時代、ランドマーク。すべてのコマのプロンプトに含まれます |
toneNotes、keyScenes、chapterOutline、additionalNotes | string | いいえ | - | 脚本の作成方針を指定します |
referenceWorks | string[] | いいえ | - | 雰囲気を参考にするコミックや映画 |
aspectRatio | enum | いいえ | 2:3 | 2:3または4:5。作成後は変更できません |
stylePreset | enum | いいえ | default | 吹き出しのスタイル:default、cartoon-yellow、comic-classic、oblong-classic。作成後は変更できません |
戻り値: { account, projectId, status, characters: [{ characterId, name, role }], estimate, nextStep }
aetherwave_comic_character_reference
action: "generate" は、本のスタイルで全身の参照画像を count 枚(1~4枚)描画し、1枚につき6クレジットを消費して、キャラクターのオプションに追加します。editPrompt のみを指定すると新しい画像の描画を調整します。editPrompt と baseUrl(キャラクター画像のいずれか)を指定すると、その画像を編集し、同一人物のままにします。呼び出しに約50秒以上かかった場合も、画像はサーバー側に保存され、aetherwave_comic_status に表示されます。
action: "approve"(無料)は、imageUrl を参照画像に設定します。キャラクター自身の画像、または AetherWave の恒久ストレージ(media.aetherwavestudio.com)のみ指定できます。
| Param | Type | Required | Default | Notes |
|---|---|---|---|---|
projectId | string | はい | - | |
action | enum | はい | - | generate または approve |
characterId or characterName | string | いずれか1つ | - | 名前の照合では大文字と小文字を区別しません |
count | int (1-4) | いいえ | 1 | generate |
editPrompt | string (max 500) | いいえ | - | generate |
baseUrl | URL | いいえ | - | generate。editPrompt が必要です |
imageUrl | URL | approve | - |
戻り値(generate): { account, characterId, characterName, newImages, creditsCharged, stillGenerating, errors, referenceOptions, nextStep }。戻り値(approve): { account, approved, characterId, characterName, referenceImageUrl }
aetherwave_comic_write_script
スクリプトの作成を開始し、すぐに戻ります。所要時間は約2~3分です。完了時に実際の使用分として課金されます(12ページの本で40クレジット)。すでにパネルがあるプロジェクトでは、replaceExisting: true を指定しない限り処理を拒否します。新しいスクリプトを作成すると、既存のパネルがすべて削除されるためです。
| Param | Type | Required | Default | Notes |
|---|---|---|---|---|
projectId | string | はい | - | |
replaceExisting | boolean | いいえ | false | すでにパネルがあるスクリプトを書き換える場合に必要です |
戻り値: { account, started, status, message, warning?, nextStep }。warning には、承認済みの参照画像がないキャラクターが示されます。
aetherwave_comic_draw
action: "start"(デフォルト)は、未処理または失敗したすべてのパネルの描画を1つずつ開始し、すぐに戻ります。1パネルにつき9クレジットを消費し、成功した場合にのみ課金されます。開始時に、実行全体に必要な残高が必要です。実行中に呼び出した場合は何も開始せず、alreadyDrawing を返します。action: "stop" は、現在のパネルの処理後にアクティブな実行を停止するよう要求します。
| Param | Type | Required | Default | Notes |
|---|---|---|---|---|
projectId | string | はい | - | |
action | enum | いいえ | start | start または stop |
maxCredits | int | いいえ | - | start:残りのパネルの描画に必要なクレジット数がこれを超える場合、開始を拒否します |
戻り値: { account, started, panelsQueued, creditsPerPanel, upToCredits, message, expectedMinutes, nextStep }、または { started: false, alreadyDrawing: true }
aetherwave_comic_status
無料です。状態を確認するためのツールはこれだけです。projectId を指定しない場合は、最近のコミックプロジェクトが一覧表示されます。
| Param | Type | Required | Default | Notes |
|---|---|---|---|---|
projectId | string | いいえ | - | プロジェクト一覧を表示するには省略します |
detail | enum | いいえ | summary | panels を指定すると、すべてのパネル(panelId、ページ、ステータス、画像 URL、シーン、エラー)が追加されます |
戻り値: { account, projectId, title, projectStatus, projectError, drawing, drawingDetail, panels: { total, completed, failed, pending, generating, batchRunning }, creditsToFinishDrawing, failedPanels: [{ panelId, page, panelIndex, errorMessage, scene }], pages: { total, assembled, missing, staleSinceAssembly, urls }, characters: [{ characterId, name, role, approvedReference, referenceOptions }], nextStep }
drawing は no_script、not_started、drawing、redrawing、stalled、done のいずれかです。stalled は、パネルが未処理または失敗の状態で、実行がアクティブではないことを意味します。再度 aetherwave_comic_draw を呼び出してください。
aetherwave_comic_redraw_panel
1 つのパネルを描き直します。成功時は 9 クレジット、失敗時は消費なしです。prompt を指定すると、この描画でパネルのシーン説明が置き換わります(セリフとキャプションは保持されます)。これにより、コンテンツの拒否を回避できます。全体の実行中は拒否されます。描き直しに約 50 秒以上かかると、ツールは stillDrawing: true を返し、結果は aetherwave_comic_status に表示されます。
| パラメーター | 型 | 必須 | デフォルト | 備考 |
|---|---|---|---|---|
projectId | string | はい | - | |
panelId | string | はい | - | failedPanels または detail: "panels" から取得 |
prompt | string(最大 4000) | いいえ | - | 新しいシーン説明 |
戻り値: { account, redrawn, panelId, status, imageUrl }、{ redrawn: false, stillDrawing: true }、またはパネルの errorMessage を含む拒否応答
aetherwave_comic_assemble
無料です。すべてのページをレイアウトして文字を配置し、1 ページあたり約 4 秒で、完了後すぐに返します。パネルの描画中は拒否されます。また、未描画のパネルがある場合も allowPartial: true でない限り拒否されます(未描画パネルのあるページはスキップされ、ブックは pages-partial としてマークされます)。
| パラメーター | 型 | 必須 | デフォルト | 備考 |
|---|---|---|---|---|
projectId | string | はい | - | |
allowPartial | boolean | いいえ | false | 未描画のページがあっても完全なページを組み立てます |
戻り値: { account, started, pages, message, nextStep }
aetherwave_comic_export
無料です。組み立て済みのブックを作成し、AetherWave のストレージ上に約 1 日有効なダウンロードリンクを返します。通常は呼び出し中に完了します(テストでは 12 ページの PDF の作成とアップロードに約 15 秒かかりました)。それ以外の場合は exportId が返され、2 回目の呼び出しで確認できます。アカウントごとに同時に作成できるエクスポートは 1 つです。すでに作成中のものがある場合、新たに開始する代わりにそのエクスポートを報告します(alreadyExporting: true と projectId を含みます)。サービスが混雑している場合は retryAfterSeconds とともに拒否されます。
| パラメーター | 型 | 必須 | デフォルト | 備考 |
|---|---|---|---|---|
projectId | string | はい | - | |
format | enum | いいえ | pdf | pdf、epub(固定レイアウト、Kindle 対応)、cbz、bundle(上記 3 形式すべてとページ PNG) |
includeBackMatter | boolean | いいえ | true | 有効になっている場合、プロジェクトの宣伝用巻末ページを追加します |
exportId | string | いいえ | - | 以前に開始したエクスポートを確認します |
戻り値: { account, exportId, format, status, url, megabytes, note }。status は building、complete、または error です。
クレジットと料金
AetherWave では、クレジットプールを 1 つ使用します。$4.99/500 クレジットからのクレジットバンドル(バンドルのクレジットに有効期限はありません)を購入するか、Studio に登録できます(月額 $9.99、1,700 クレジット。無料トライアルはなく、登録時に請求が開始されます)。どちらも API 呼び出しに使用できます。
一般的な料金:
- 画像生成 - 2 クレジット(Z-Image Turbo)から 34 クレジット(4K のプレミアムモデル)。デフォルトは 2 枚で 6 クレジット
- 画像編集 - 6〜34 クレジット。デフォルトは 10 クレジット(Grok Imagine I2I)
- 画像ユーティリティ - 4 クレジット(2x または 4x アップスケール)、5 クレジット(背景削除)、5/10/14 クレジット(速度別のリフレーム)
- 動画 - 1 秒あたり 4 クレジット(480p の Grok Imagine)から 143 クレジット(1080p の Seedance 2)。VEO 3.1 は 8 秒のクリップあたり 42/84/350 クレジットの固定料金です
- 音楽 - 1 回の生成(2 トラック)あたり 20 クレジット
- マスタリング - 1 トラックあたり 20 クレジット(Artist/Producer/Mogul/Ultimate では無料)
- コミックブック - 1 パネルあたり 9 クレジット(成功時に請求)、キャラクター参照 1 件あたり 6 クレジット、スクリプトは使用時に請求(12 ページで約 40 クレジット)。12 ページ、27 パネルのブックは 301 クレジットでした
料金の最新情報は https://aetherwavestudio.com/buy-credits または aetherwave_list_*_models で確認できます。
環境変数
| 変数 | 必須 | デフォルト | 説明 |
|---|---|---|---|
AETHERWAVE_API_KEY | はい | - | API キーです。/profile -> Developer タブで取得できます。aw_live_ で始まる必要があります。 |
AETHERWAVE_BASE_URL | いいえ | https://aetherwavestudio.com | API のベース URL を上書きします(ステージング環境やセルフホスト環境で便利です)。 |
トラブルシューティング
「AETHERWAVE_API_KEY 環境変数が必要です」
MCP クライアントから環境変数が渡されていません。クライアント設定の env ブロックで AETHERWAVE_API_KEY が設定されていることを確認してください。設定を編集した後は、クライアントを完全に再起動してください。
「AetherWave API ... が失敗しました:401 - 無効な API キー」 キーが取り消されたか、再生成されています。https://aetherwavestudio.com/profile -> Developer タブにアクセスし、新しいキーをコピーしてください。
「AetherWave API ... が失敗しました:402 - クレジット不足」
残高がリクエストされた操作を実行するには不足しています。aetherwave_balance を呼び出して確認し、https://aetherwavestudio.com/buy-credits でチャージしてください。
「AetherWave の生成が X 秒後にタイムアウトしました」
プロバイダーでキューに入っています。サーバー側ではジョブが完了する可能性があります。https://aetherwavestudio.com/gallery.html の AetherWave ギャラリーを確認してください。特定のモデルでタイムアウトが続く場合は、別のモデルを試してください(例:grok-imagine-t2v から wan-2-7-t2v に切り替える、または gpt-image-1.5-i2i から grok-imagine-i2i に切り替える)。
リフレーム時の「処理できないエンティティ」 Ideogram の URL フェッチャーは、スペース、括弧、その他の特殊文字を含むソース URL を処理できません。問題のない URL を使用してください(必要に応じて、ダウンロードしてクリーンな R2 パスに再アップロードしてみてください)。
remove_background の「内部エラーが発生しました。後でもう一度お試しください」 KIE Recraft の一時的な障害です。再試行時にはツールが自動的に fal.ai BiRefNet v2 にフォールバックしますが、このエラーが 1 回の呼び出しで返された場合は、両方のプロバイダーがリクエストを拒否したことを意味します。1 分待ってから再試行してください。
コミックのステータスに drawing: "stalled" と表示される
描画処理が終了し、パネルが未完成のまま残っています。サーバーの再起動、残高切れ、または処理の停止が原因です。aetherwave_comic_draw をもう一度呼び出してください。不足しているパネルだけが描画され、成功したパネル分のみ課金されます。
コミックのパネルで「コンテンツポリシーに違反する可能性があります」というエラーが繰り返し発生する
同じシーンを再試行しても、同じ拒否が返されます。aetherwave_comic_redraw_panel と新しい prompt を使って、表現を変えてください。全年齢向けの本でも、大人と子どもの身体的接触は拒否されます。
aetherwave_comic_export でサーバーが「まだエクスポートリンクに対応していません」と表示される
接続先の AetherWave サーバーは、エクスポートリンクが導入される前のバージョンです。ウェブアプリの Graphic Novel Studio から本をダウンロードしてください。
Soul Forge のバンド生成 MCP では公開されていません。Soul Forge は https://aetherwavestudio.com/soul-forge のウェブサイトで利用できるコンシューマー向け機能です。
バージョニング
このパッケージはセマンティックバージョニングに従います。互換性を損なう変更を伴うツールの動作変更ではメジャーバージョンが上がります。新しいツールや後方互換性のあるパラメーターの追加ではマイナーバージョンが上がります。バグ修正ではパッチバージョンが上がります。
0.3.1(未リリース):aetherwave_upload_to_gallery と aetherwave_get_user_manual、デフォルトツール 33 個。
0.3.0(2026-09-30):すべての長時間実行ツールにソフトタイムアウト 45 秒を設定(クライアントをタイムアウトさせる代わりに state: "running" と taskId を返す)、すべてのツールで async: true を使用、aetherwave_get_job がすべてのパイプラインに対応、コミック用ツール 9 個、マーチャンダイズ用ツール 4 個(PRINTFUL_API_TOKEN を使用する Printful ツール 2 個と管理者用ツール 1 個を追加)、デフォルトツール 31 個。
MCP プロトコルのバージョン(現在は 2024-11-05)自体は、SDK によってハンドシェイク時にネゴシエートされます。クライアント設定は不要です。
リンク
- AetherWave Studio:https://aetherwavestudio.com
- 開発者向けドキュメント:https://aetherwavestudio.com/developers
- API キーの取得:https://aetherwavestudio.com/profile(Developer タブ)
- クレジットの購入:https://aetherwavestudio.com/buy-credits
- GitHub:https://github.com/AetherWave-Studio/aetherwave-mcp
- npm:https://www.npmjs.com/package/@aetherwave-studio/mcp
ライセンス
MIT。LICENSE を参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。