Raywake について
Raywakeは、AI画像・動画・音声モデルを検索して利用するオープンソースのTypeScript製MCPサーバーです。モデルのスキーマや米ドル見積もりを確認し、ユーザー承認後に生成するワークフローをMCPクライアントに提供します。
主な機能
- 01画像・動画・音声モデルの検索
- 02モデル入力スキーマと価格の確認
- 03入力内容に応じた米ドル見積もり
- 04承認後のコンテンツ生成
- 05ジョブの確認と出力取得
- 06米ドル残高とジョブ履歴の確認
活用シーン
- 01モデルと参考開始価格の比較
- 02生成を送信する前に費用を確認
- 03生成ジョブを追跡して結果を取得
- 04最近のジョブと利用可能残高を確認
MCP 対応
モデル検索、スキーマ確認、見積もり、生成、ジョブ追跡、アカウント残高のツールを公開します。同じツールをホスト型Streamable HTTPエンドポイントまたはローカルstdioパッケージから利用できます。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://mcp.raywake.com/v1claude mcp add --transport http si-raywake https://mcp.raywake.com/v1{"mcpServers":{"si-raywake":{"type":"http","url":"https://mcp.raywake.com/v1"}}}Cursor で開く{"servers":{"si-raywake":{"type":"http","url":"https://mcp.raywake.com/v1"}}}VS Code で開く{"mcpServers":{"si-raywake":{"type":"http","url":"https://mcp.raywake.com/v1"}}}{"mcpServers":{"si-raywake":{"serverUrl":"https://mcp.raywake.com/v1"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
Raywake MCP
Claude、ChatGPT、Cursor、およびあらゆる MCP クライアントで利用できる、500 種類以上の AI 画像・動画・音声モデルです。
Raywake 用のオープンソース TypeScript MCP サーバーです。インストール不要のホステッドコネクター https://mcp.raywake.com/v1 を使うか、Node.js 20 以降の環境で npx を使って、このパッケージを stdio 経由でローカル実行します。
API キーを取得する
raywake.si/api-keys でキーを作成します。すべてのツールで models:read、generate、jobs:read、wallet:read を有効にします。生成するには、raywake.si/billing で USD 残高を追加します。閲覧、見積もり、ジョブの確認は無料です。
以下の設定にある YOUR_RAYWAKE_API_KEY を置き換えます。キーは非公開にし、キーを含む設定ファイルをバージョン管理の対象にしないでください。
Claude Code
claude mcp add raywake -e RAYWAKE_API_KEY=YOUR_RAYWAKE_API_KEY -- npx -y @raywake/mcp
Cursor
~/.cursor/mcp.json(またはプロジェクトの .cursor/mcp.json)に追加し、MCP 設定で Raywake を有効にします。
{
"mcpServers": {
"raywake": {
"command": "npx",
"args": ["-y", "@raywake/mcp"],
"env": { "RAYWAKE_API_KEY": "YOUR_RAYWAKE_API_KEY" }
}
}
}
Claude Desktop
Settings > Developer > Edit Config を開き、claude_desktop_config.json に追加します。保存後、Claude Desktop を再起動します。
{
"mcpServers": {
"raywake": {
"command": "npx",
"args": ["-y", "@raywake/mcp"],
"env": { "RAYWAKE_API_KEY": "YOUR_RAYWAKE_API_KEY" }
}
}
}
Windsurf
~/.codeium/windsurf/mcp_config.json に追加し、MCP サーバーを更新します。
{
"mcpServers": {
"raywake": {
"command": "npx",
"args": ["-y", "@raywake/mcp"],
"env": { "RAYWAKE_API_KEY": "YOUR_RAYWAKE_API_KEY" }
}
}
}
VS Code
.vscode/mcp.json に追加します。VS Code がキーの入力を求め、入力内容を安全に保存します。
{
"inputs": [
{
"type": "promptString",
"id": "raywake-api-key",
"description": "Raywake API key",
"password": true
}
],
"servers": {
"raywake": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@raywake/mcp"],
"env": { "RAYWAKE_API_KEY": "${input:raywake-api-key}" }
}
}
}
これらの JSON の例は、必要最小限の完全な設定です。他のサーバーを維持するには、既存の設定に raywake エントリーを統合してください。Windows でクライアントが npx を起動できない場合は、"command": "cmd" と "args": ["/c", "npx", "-y", "@raywake/mcp"] を使用してください。
リモート(インストール不要)
Raywake は Streamable HTTP 経由でも同じツールをホストしています。
https://mcp.raywake.com/v1
- Claude.ai / Claude Desktop: Settings > Connectors > Add custom connector を開き、URL を貼り付けてから、Raywake アカウントでサインインします。
- ChatGPT: Settings > Connectors > Create(developer mode)を開き、URL を貼り付けてから、Raywake アカウントでサインインします。
- Claude Code:
claude mcp add --transport http raywake https://mcp.raywake.com/v1を実行してから、/mcpを実行してサインインします。代わりに API キーを使う場合は、--header "Authorization: Bearer YOUR_RAYWAKE_API_KEY"を追加します。
OAuth 接続では、サインイン時に生成ごとの支出上限を設定し、30 日後に期限切れになります。Raywake の設定からいつでも接続を解除できます。
ツール
| ツール | 費用 | 目的 |
|---|---|---|
search_models | 無料 | query、category、modality(image、video、audio)、page(1 から開始、1 ページあたり 20 件)で検索します |
list_categories | 無料 | 利用可能なカテゴリーを一覧表示します |
get_model | 無料 | 正確な入力スキーマと、参考となる開始価格を USD で確認します |
quote | 無料 | 正確な model と input の価格を見積もります。quote_id、price_usd、expires_at を返します |
generate | 有料 | 承認済みの正確な model、input、quote_id を送信します。復旧用の idempotency_key は任意です |
get_job | 無料 | job_id、出力、ステータスを確認します。wait_seconds は 0 から 45 まで指定できます |
list_jobs | 無料 | アカウントの履歴を一覧表示します。limit(1~500)、offset、status は任意です |
get_account | 無料 | USD で利用可能残高、予約残高、債務残高を確認します |
get_playbook | 無料 | 簡潔なワークフローと支出ルールを確認します |
search_models は query を API の search に、page を limit/offset に対応付けます。API にモダリティのパラメーターがないため、モダリティによる絞り込みはページネーションの前にカテゴリーとタグを使ってローカルで行います。複数のモダリティに一致するモデルもあります。get_model はゲートウェイの openapi スキーマをそのまま保持し、必要に応じて小売価格ガイドから開始価格を算出します。開始価格は、画像や秒など、返された単位あたりの価格です。実行全体の見積もりではありません。開始価格を取得できない場合は null が返されます。
プロンプトの例
- 「商品写真向けの画像モデルを探し、初期価格を米ドルで比較してください。」
- 「このモデルのスキーマを表示し、入力を準備して見積もりを取得してください。費用が発生する前に確認してください。」
- 「この公開 HTTPS 画像 URL を使って短い動画の見積もりを取得してください。生成する前に価格を表示してください。」
- 「この見積もり価格と入力を承認します。生成してから、既存のジョブが完了するまで確認してください。」
- 「最近のジョブを表示し、最新の結果を取得してください。」
- 「利用可能な米ドル残高はいくらですか?」
費用が発生する操作
Raywake の残高を使うのは generate のみです。検索、スキーマ、見積もり、ウォレットの確認、ジョブのポーリングは無料です。アシスタントは次の手順に従う必要があります。
- モデルを検索し、
get_modelでそのスキーマを確認します。 - 完全な入力内容を指定して
quoteを呼び出します。 - 米ドルでの価格、有効期限、従量課金の最大予約かどうかを提示し、承認を得ます。
- そのモデル、入力、見積もり ID をそのまま指定して
generateを呼び出します。 get_jobで処理を続けます。ポーリングによって別の生成が開始されることはありません。
見積もりの settles_on_usage フラグは、最大予約を示します。実際に請求されるのは利用分で、未使用の残高は返金されます。見積もりの有効期限が切れた場合、または入力を変更した場合は、新しい見積もりを取得して承認を得てください。残高が不足している場合は、チャージしてください。
承認は、説明と組み込みのプレイブックを通じてアシスタントに伝えるルールです。サーバーが会話で人間の承認があったことを独自に検証することはできません。MCP クライアントの確認設定では、有料の generate ツールに対して承認を必須にしてください。見積もりの所有者、有効期限、入力との厳密な紐付けは Raywake のゲートウェイによって強制され、このプロセスが把握している見積もりについては、追加の照合チェックも行われます。
待機と安全な再試行
generate は送信処理を含めて最大 45 秒待機し、その後、既知の job_id、最新のステータス、生成された idempotency_key を返します。ポーリングに失敗した場合でも、ジョブ参照は保持されます。wait_seconds に最大 45 を指定して get_job を使い、処理を続けてください。終端状態は succeeded、failed、needs_review、submission_unknown、needs_reconciliation です。確認と照合が必要な状態では対応が必要です。代替の実行を自動的に送信しないでください。
エラー結果に含まれる場合も含め、idempotency_key を保存してください。送信への応答が失われた場合は、同じキー、モデル、入力、見積もり ID を使って generate を再試行してください。完全に同じ内容で再試行すると、見積もりの有効期限が切れた後でも、ゲートウェイは既存のジョブを返します。不確実な送信を復旧するために、新しいキーを使わないでください。サーバーの実行中に同じ生成リクエストを繰り返した場合も、保存済みのキーが再利用されます。再起動後は保存済みのキーを指定してください。ローカルメモリにない見積もりの復旧についても、ゲートウェイが引き続き正となります。キーと見積もりのフィンガープリントはメモリ内にのみ保持されます。ツールの応答とプロセスの両方が失われた場合は、再度費用が発生する可能性のある操作を行う前に list_jobs で既存のジョブを探してください。
メディア入力
アップロードツールはありません。メディアアセットのアップロードは API キーでは利用できません。画像、動画、音声を URL で受け付けるモデルでは、get_model で指定されたフィールドに、誰でもアクセスできる HTTPS URL が必要です。ローカルファイルは、まず公開 URL からアクセスできるようにしてください。ローカルパス、file://、プライベート URL、data: URL は、アップロードするメディアとして使用できません。出力リンクは一時的な場合があります。最新のリンクを取得するには、再度 get_job を呼び出してください。
設定
| 環境変数 | 必須 | デフォルト |
|---|---|---|
RAYWAKE_API_KEY | はい | なし。Bearer トークンとして送信 |
RAYWAKE_API_BASE | いいえ | https://api.raywake.com |
ベース URL の上書きには HTTPS が必要ですが、ローカルモックで使用する場合は localhost 上の HTTP も利用できます。認証情報、クエリ、フラグメントを含めることはできません。信頼できる上書き先のみを使用してください。API キーがその送信先に渡されます。リダイレクトは拒否されます。サーバーは stdout を MCP 専用として使用し、キーや上流からのエラー本文をそのままログに記録することはありません。
プライバシー
リクエストを処理するため、プロンプトと入力はRaywakeおよび選択したモデルプロバイダーに送信されます。MCP クライアントも会話とツールの結果を処理します。モデルへの入力に秘密情報を含めないでください。このローカルパッケージはアナリティクスを追加せず、プロンプト、キー、見積もり、結果をディスクに書き込みません。クライアントのログ記録と各サービスの保持ポリシーは別途適用されます。
開発
npm install
npm run build
npm test
npm run smoke
npm testはCLIをビルドし、モック化したfetchとダミーの認証情報を使用してVitestを実行し、APIにアクセスせずに実際のstdioによるツール検出を確認します。別途実行するnpm run smokeのSDKテストでは、ダミーキーを使って127.0.0.1上で専用のHTTPサーバーを起動し、コンパイル済みCLIを起動して、9つのツールすべてを一覧表示し、検出、見積もり、生成、ジョブ取得をテストします。どちらのコマンドもapi.raywake.comを呼び出しません。HTTPスモークテストではローカルポートのバインド許可が必要です。制限付きサンドボックスではEPERMで拒否される場合があります。
公開前のこのチェックアウトにMCP クライアントを接続するには、npxの設定を"command": "node"および"args": ["/absolute/path/to/raywake-mcp/dist/index.js"]に置き換え、同じ環境設定を維持します。ビルド後にターミナルから起動するには:
RAYWAKE_API_KEY=YOUR_RAYWAKE_API_KEY node dist/index.js
server.jsonは、公式MCP Registryにsi.raywake/mcpとして公開されるメタデータです。リリースとレジストリへの公開は、それぞれ別途手動で行います。npmパッケージのmcpNameはsi.raywake/mcpと一致します。バージョンフィールドは同期を保つ必要があります。
小規模なTypeScript/npm/stdioの構成は、Wiro-MCP(MIT)に着想を得ています。Raywakeは独自のBearer認証、生成前の見積もりワークフロー、ゲートウェイ契約を使用しています。Wiroのソースコードはコピーしていません。
ライセンス
MIT、著作権はRaywakeに帰属します。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。