three.ws Scenes について
three.ws Scenes は、一文の説明を配置済みの 3D ジオラマのプランに変換し、単一の glTF 2.0 バイナリとして書き出す MCP サーバーです。ブラウザを使えない AI アシスタントやエージェントで 3D ワールドを生成したい場合に向いています。
主な機能
- 01一文からのシーンプラン生成
- 02プロンプトから GLB 出力までを一括実行
- 03生成したオブジェクトの単一 glTF への統合
- 04ID による保存済みシーンの取得
- 05最近と注目のシーン一覧の閲覧
活用シーン
- 01AI アシスタントで text の説明から 3D シーンを構築
- 02ブラウザなしでエージェントが回転表示可能な 3D ワールドを生成
- 03生成したジオラマを Scene Studio で確認するための書き出し
MCP 対応
MCP サーバーとして、シーンの生成、書き出し、検索のツールを MCP クライアントに公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y @three-ws/scene-mcpTHREE_WS_BASEBase URL of the three.ws API that serves /api/diorama. Override only when self-hosting or targeting a preview deployment.THREE_WS_TIMEOUT_MSPer-request timeout in milliseconds. compose_scene runs a server-side LLM chain, so the default is generous.ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
5掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| prompt | string | はい | 構築する世界を一文で簡潔に説明します。例:"a lonely lighthouse on a stormy cliff"。 |
詳細
@three-ws/scene-mcp
3D の世界を言葉で生み出しましょう。どの AI エージェントからでも、ひと言で配置済みのジオラマを作成できます。
Model Context Protocol サーバーです。stdio 経由で、three.ws のジオラマパイプラインをあらゆる AI アシスタントに提供します。ひと言で世界を描写すると、
compose_sceneが配置済みのプラン(ムード、パレット、地面、複数の単一オブジェクト用 forge プロンプト)を返します。これは、オービット操作可能な 3D シーンへ構築する準備が整った状態です。build_worldはパイプライン全体(compose → すべてのオブジェクトを forge → マージ)を 1 回の呼び出しにまとめ、操作するブラウザーがないエージェントでも利用できます。export_sceneは、すでに forge 済みのジオラマを 1 つの glTF 2.0 バイナリにマージします(各オブジェクトは名前付きで選択可能なノードとなり、地面とムードに合わせたライティングも含まれます)。Scene Studio ですぐに開けます。get_sceneとlist_scenesで、保存済みの世界を閲覧できます。
three.ws のアバターをひと言で作成する機能に対応するツールです。アバターが キャラクター を提供するのに対し、シーンは 世界 を提供します。API キーも署名者も支払いも不要です。すべての呼び出しはパブリックな /api/diorama エンドポイントに送信されます。
インストール
npm install @three-ws/scene-mcp
または、インストールせずに npx で実行します。
npx @three-ws/scene-mcp
クイックスタート
Claude Code の場合は、1 行で設定できます。
claude mcp add scene -- npx -y @three-ws/scene-mcp
Claude Desktop / Cursor の場合(claude_desktop_config.json または mcp.json):
{
"mcpServers": {
"scene": {
"command": "npx",
"args": ["-y", "@three-ws/scene-mcp"]
}
}
}
MCP Inspector で機能を確認できます。
npx -y @modelcontextprotocol/inspector npx @three-ws/scene-mcp
ツール
| ツール | 種類 | 機能 |
|---|---|---|
compose_scene | 生成 | ひと言からジオラマのプランを作成します。タイトル、ムード、パレット、地面、配置済みの単一オブジェクト用 forge プロンプト(2~8 個)が含まれます。 |
build_world | 生成 | ひと言から、完全に forge・エクスポートされた 3D の世界を 1 回の呼び出しで作成します。compose → すべてのオブジェクトを forge(無料レーン)→ 1 つの GLB にマージします。ブラウザーは不要ですが、数分かかる場合があります。 |
export_scene | 生成 | すでに forge 済みのジオラマ(実際の glbUrl を持つオブジェクト)を 1 つの glTF 2.0 バイナリにマージします(名前付きで選択可能なノード、地面、ムードに合わせたライティングを含みます)。Scene Studio ですぐに開けます。 |
get_scene | 読み取り専用 | ID を指定して保存済みの世界(GLB URL を含む)と、そのオービット操作可能なビューアー URL を取得します。 |
list_scenes | 読み取り専用 | 最近のジオラマギャラリーまたは注目のジオラマギャラリーを閲覧します。 |
compose_scene が返すのは プラン のみです。メッシュは forge されず、何も保存されません。各オブジェクトを /api/forge で forge したあと、export_scene を呼び出すか、POST /api/diorama {action:"save"} を実行して、共有可能なパーマリンク https://three.ws/diorama?id=… を作成します。build_world は compose、forge、export の一連の処理を 1 回のツール呼び出しで実行します。build_world と export_scene は、一部で失敗した場合も適切に処理します。forge されなかったオブジェクトはスキップされ、レスポンスの skipped 配列に名前が記録されます。残りのオブジェクトは引き続きエクスポートされます。
入力パラメーター
compose_scene:prompt(必須、3~1024文字:世界を説明する1文)。
build_world:prompt(必須、3~1024文字:世界を説明する1文)。
export_scene:diorama(必須:compose_scene/get_sceneが返すジオラマオブジェクト。含める各オブジェクトには、status:"ready"と実際のglbUrlが必要です)。
get_scene:id(必須:保存時に返されるジオラマID)。
list_scenes:list(recent | featured、デフォルトはrecent)、limit(1~50、デフォルトは24)。
例
// compose_scene
> { "prompt": "a lonely lighthouse on a stormy cliff at dusk" }
{
"ok": true,
"diorama": {
"title": "Beacon at Dusk",
"mood": "dusk",
"ground": "stone",
"island": "craggy",
"palette": { "sky": ["#2b2350", "#c76b4a"], "ground": "#5b5560", "fog": "#3a3550", "accent": "#ffb27a" },
"objects": [
{ "id": "obj-0", "label": "lighthouse", "prompt": "white-and-red striped stone lighthouse", "position": [0, 0, 0], "scale": 2.2, "rotationY": 0, "status": "pending", "glbUrl": null }
]
},
"object_count": 1,
"viewer_base": "https://three.ws/diorama"
}
// build_world: the whole pipeline in one call
> { "prompt": "a neon alley with a food cart and two streetlights" }
{
"ok": true,
"diorama": { "title": "Neon Alley", "mood": "night", /* ...forged objects with real glbUrl values... */ },
"object_count": 4,
"ready_count": 4,
"glb_url": "https://storage.googleapis.com/.../scene-neon-alley.glb",
"scene_studio_url": "https://three.ws/scene?model=https%3A%2F%2Fstorage.googleapis.com%2F...%2Fscene-neon-alley.glb",
"exported_count": 4,
"skipped": []
}
要件
- Node.js >= 20。
https://three.ws(または独自のTHREE_WS_BASE)へのネットワークアクセス。
環境変数
| 変数 | 必須 | デフォルト |
|---|---|---|
THREE_WS_BASE | いいえ | https://three.ws |
THREE_WS_TIMEOUT_MS | いいえ | 45000 |
リンク
- ホームページ:https://three.ws
- 変更履歴:https://three.ws/changelog
- 課題:https://github.com/nirholas/three.ws/issues
- ライセンス:Apache-2.0。詳細はLICENSEを参照してください。
3D AI エージェント、オンチェーンID、エージェント決済を提供するthree.ws SDKスイートの一部です。
ウェブサイト · 変更履歴 · GitHub
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。