スタジオ MCP サーバー は、あなたの代わりに Open Cloud API を呼び出すことができます。あなたの MCP クライアントは、アセットをアップロードしたり、開発者製品やゲームパスを管理したり、ゲーム設定を変更したり、その他の操作を行ったりできますが、API キーを作成したり貼り付けたりする必要はありません。
あなたがクライアントに許可することを決定します。権限は各ゲームごとにあなたの Roblox アカウントに保存され、スタジオはすべてのリクエストでそれを強制します。
前提条件
スタジオ MCP サーバーで Open Cloud を使用する前に:
- スタジオ MCP サーバーを有効にし、クライアントを接続します。詳細については、Roblox Studio MCP サーバーに接続するを参照してください。
- 公開されたゲームに属する場所を開きます。権限はゲームごとに保存されるため、未公開のローカル場所では使用できません。
- ゲームを管理する権限を持っていること。グループがゲームを所有している場合、あなたのグループの役割はクライアントに付与するアクションを許可する必要があります。
仕組み
スタジオ MCP サーバーは open_cloud_invoke ツールを追加します。スタジオはあなたのためにアクセスを管理します。あなたのクライアントは、現在のゲームに対して有効にしたスコープのみを使用でき、資格情報を見たり扱ったりすることはありません。権限を変更できるのはあなただけです。クライアントは自分自身でそれらを有効にすることはできません。
各ゲームに対して、あなたはクライアントが呼び出すことができる Open Cloud スコープ、アップロード元のフォルダー、execute_luau からのデータストアおよびメモリストアの呼び出しが機能するかどうか、スクリプトが HTTP リクエストを行えるかどうか、そしてどのドメインに対して行えるかを制御します。
| パラメーター | 説明 |
|---|---|
| method | GET、POST、PUT、PATCH、または DELETE。 |
| endpoint | https://apis.roblox.com, の下のパスで、クエリ文字列を含みます。たとえば、/cloud/v2/universes/123`。 |
| body | JSON エンコードされたリクエストボディ。GET および DELETE の場合は省略します。 |
| scopes | エンドポイントが必要とするスコープ、たとえば ["universe:read"]。オプションですが、必要なスコープが有効でない場合は明確なエラーが返されます。 |
| files | multipart/form-data エンドポイント用のローカルファイル、たとえばアセットのアップロード。ファイルは承認された アップロードフォルダー に存在する必要があります。 |
権限の管理
開いているゲームの権限を管理するには、スタジオの右下隅にある MCP をクリックし、次に MCP 権限 タブを選択します。または、アシスタントから:
- アシスタント を開きます。
- … ⟩ 設定 をクリックします。
- MCP 権限 タブを選択します。
- 権限を有効または無効にします。変更はクライアントの次のリクエストに適用されます。
アクセスレベル
出発点としてアクセスレベルを選択し、次に個々の権限を有効または無効にします。各ゲームは バランス から始まります。
| アクセスレベル | 有効にする内容 |
|---|---|
| 安全 | 低リスクのスコープのみ。ほとんどの権限はオフです。 |
| バランス | 低リスクおよび中リスクのスコープ。 |
| フルアクセス | すべてのスコープ、高リスクのものを含む。これには Robux を消費したり、プレイヤーに影響を与えたり、ライブゲームに公開したりするものが含まれます。 |
| カスタム | レベルを選択した後に権限を変更すると表示されます。 |
Roblox は各スコープのリスクレベルを設定します。
権限セクション
権限は、クライアントができることによってグループ化されています。各セクションは、1 つ以上の Open Cloud スコープ またはスクリプト機能にマッピングされます。各スコープの詳細については、Open Cloud スコープ リファレンスを参照してください。
| セクション | 許可される内容 | スコープ |
|---|---|---|
| ゲームを確認する | ゲームおよび場所の設定、バージョン履歴、分析、インスタンスを読み取ります。 | universe:read、universe.place:read、universe.analytics:read、universe.place.instance:read |
| ゲームを編集する | ゲームおよび場所の設定を変更し、公開し、サーバーを再起動し、インスタンスをリモートで編集します。 | universe:write、universe.place:write、universe.place.instance:write |
| プレイヤーとソーシャル | プロフィールやインベントリを読み取り、通知を送信し、グループやフォーラムを管理し、イベントを管理し、保存されたクリエイター ストアアイテムを読み取ります。 | user.*、group:*、group-forum:read、universe.event:*、creator-store-save:* |
| データを保存および読み込む | execute_luau から DataStoreService および MemoryStoreService を使用します。 | universe-datastores.*、universe.ordered-data-store.*、memory-store.* |
| インターネットに接続する | Luau から許可したドメインに HTTP リクエストを行い、クロスサーバーメッセージを公開します。 | Network 機能、universe-messaging-service:publish |
| アセットを公開および管理する | アセットをアップロードし、そのステータスを確認し、アセットを共有し、クリエイター ストアのリストを管理し、場所のバージョンを公開し、サムネイルを管理します。 | asset:*、asset-permissions:write、creator-store-product:*、universe-places:write、universe.thumbnail:* |
| お金とマネタイズ | 開発者製品、ゲームパス、広告キャンペーンを作成および編集し、サブスクリプションを読み取ります。 | developer-product:*、game-pass:*、ad.campaign:*、ad.billing:read、universe.subscription-product.subscription:read |
| プレイヤーの結果 | 禁止を読み取り、作成し、削除します。 | universe.user-restriction:* |
| セキュリティと資格情報 | 秘密の名前を読み取り、秘密を作成し、クラウドで Luau を実行します。 | universe.secret:*、universe.place.luau-execution-session:* |
アップロードフォルダー
クライアントは、承認したフォルダーからのみファイルをアップロードできます。クライアントにアセットをアップロードさせる前にフォルダーを追加し、そこにエクスポートを保持してください。
クライアントは、この制限を回避するためにファイルを承認されたフォルダーにコピーまたは移動することはできません。ファイルが他の場所にある場合は、自分で移動するか、そのフォルダーを承認してください。
データストアとメモリストア
クライアントは、execute_luau 内の DataStoreService および MemoryStoreService を介してデータストアおよびメモリストアにアクセスします。Open Cloud を介してではありません。使用するには:
- データを保存および読み込む の下で必要なスコープを有効にします。読み取りには universe-datastores.objects:read が必要です。書き込みには universe-datastores.objects:update が必要です。
- ゲーム設定 ⟩ セキュリティ で、API サービスへのスタジオアクセスを有効にする を有効にします。このゲーム設定は、あなたの MCP 権限とは別です。
HTTP リクエスト
クライアントが実行するスクリプトに HttpService を使用して HTTP リクエストを行わせるには:
- クライアントが必要とする各ドメインを HTTP ドメイン許可リスト に追加します。
スタジオは、リストにないドメインへのリクエストを拒否します。
利用できない権限
一部のスコープは MCP クライアントに付与できません。これにはバッジスコープ、universe-datastores.control:*、universe-datastores.objects:create、分析アラート、およびすべての legacy-* スコープが含まれます。これらのタスクには クリエイターダッシュボード または API キー を使用してください。
一部のエンドポイントは、対応するスコープが有効になっていても、スタジオが使用するトークンを拒否します。その場合、クライアントはエラーを報告し、タスクを完了するための別の方法を提案します。
3D モデルのインポート
Blender、Maya、または他の 3D ツールからアセットをインポートすることは一般的なワークフローです。クライアントはモデルをエクスポートし、アップロードし、挿入し、結果をソースと比較してインポートによって変更された内容を修正します。
モデルをインポートするには:
アセットを公開および管理する ⟩ asset:read および asset:write を有効にします。
エクスポート先のフォルダーを承認します。
3D ツールでモデルを開くか、承認されたフォルダーに .glb または .fbx としてエクスポートします。
クライアントにプロンプトを表示します。たとえば:
開いている Blender ファイルからスタジオに城をインポートし、スポーンポイントの隣に配置します。
インポートスキルは、クライアントにアップロード前に確認するよう指示します。その後、次のことを行います:
- 各メッシュを三角形の制限と照合し、制限を超えるものを分割または簡略化するかどうかを尋ねます。
- モデルをアップロードし、モデレーションを待ちます。
- モデルを挿入し、スケール、回転、欠落しているテクスチャ、色、固定を修正します。
- モデルを地面に配置し、他のオブジェクトやスポーンポイントから離れた場所に配置します。
サポートされているアセットタイプ、フォーマット、およびサイズ制限については、アセットの使用ガイドを参照してください。
スキル
以下のスキルは、クライアントがこれらの権限を使用する方法を教えます。MCP を介して接続されたクライアントは自動的にこれらを取得し、skill ツールで読み込みます。これらを表示するには、アシスタントを開き、… ⟩ アシスタント設定をクリックし、次に スキル を選択します。ワークフローに合わせて調整するには、選択して 複製 をクリックし、コピーを編集します。コピーは元のものを置き換えますが、今後の更新は受け取りません。
| スキル | 説明 |
|---|---|
| rbx-open-cloud-usage | open_cloud_invoke で Open Cloud を呼び出し、正しいエンドポイントを選択し、エラーを処理します。 |
| rbx-permissions | タスクに必要な権限を判断し、有効になっているものを確認し、欠けているものだけをあなたに尋ねます。 |
| rbx-import-asset | 外部 3D ツールからモデルをインポートし、スタジオでチェックして修正します。 |
トラブルシューティング
リクエストがブロックされると、クライアントは不足しているものを報告します。無効にした権限を回避することは決してありません。
| エラー | 原因 | 修正 |
|---|---|---|
| Scope '<scope>' has not been granted | スコープが無効になっているか、名前が誤って入力されています。 | 対応するセクションでスコープを有効にします。 |
| HTTP 403 または 401、スコープが有効な場合 | エンドポイントが MCP トークンを受け入れません。 | このタスクにはクリエイターダッシュボードまたは API キーを使用してください。 |
| lacking capability <capability> | スクリプトが付与されていない機能を必要としています。 | Network のために インターネットに接続する を有効にします。他の機能は付与できません。 |
| domain <domain> is not in the Assistant HTTP allowlist | ドメインが許可リストにありません。 | インターネットに接続する ⟩ HTTP ドメイン許可リスト の下に追加します。 |
| 502 … Access forbidden データストア呼び出しから | 対応する データを保存および読み込む スコープが無効になっています。 | 読み取りまたは更新スコープを有効にします。 |
| Studio access to APIs is not allowed | このゲームではスタジオ API アクセスが無効になっています。 | ゲーム設定 ⟩ セキュリティ ⟩ API サービスへのスタジオアクセスを有効にする を有効にします。 |
| InternalError メモリストア呼び出しから | memory-store.* スコープが無効になっています。 | データを保存および読み込む の下でメモリストアスコープを有効にします。 |
| 承認されたアップロードディレクトリにファイルがありません | ファイルが承認されたフォルダーの外にあります。 | フォルダーを承認するか、ファイルをその中に移動します。 |