关于 Three.js DevTools MCP
Three.js DevTools MCP 是一个 MCP 服务,可通过浏览器检查和修改 Three.js 场景,支持原生 Three.js 和 React Three Fiber。它将临时实时预览与源码修改区分开,并为应用更改提供可直接使用的代码。
主要功能
- 01检查场景对象、材质、着色器和纹理
- 02在浏览器中实时预览场景更改
- 03从待处理更改生成代码
- 04审查网站渲染和性能
- 05捕获平滑的视频帧序列
- 06连接 Playwright 和 Puppeteer 工作流
适用场景
- 01查找模型或对象不可见的原因
- 02预览材质、灯光或相机调整
- 03将场景试验转为源码修改
- 04检查 Three.js 网站的渲染问题
- 05录制用于宣传的场景片段
MCP 相关
该 MCP 服务提供检查和修改 Three.js 场景、审查网站、捕获帧以及连接浏览器自动化的工具。MCP 客户端可通过浏览器开发者工具桥接来调用这些工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
npx -y threejs-devtools-mcpDEV_PORTDev server port to proxy (auto-detected from package.json if not set)BRIDGE_PORTBridge proxy port (default: 9222)BROWSERSet to 'none' to disable auto-opening browserHEADLESSSet to 'true' for headless browser mode (CI)CHROME_PATHCustom Chrome/Edge executable path本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
51收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| depth | number | 否 | 最大树深度(默认值:3) |
| types | array | 否 | 按类型筛选:Mesh、Light、Group 等。 |
| compact | boolean | 否 | 精简文本树(默认值:true)。设置 false 可返回包含位置/几何信息的完整 JSON。 |
| maxChildren | number | 否 | 每个节点的最大子节点数(默认值:精简模式为 15,JSON 模式为 100) |
详细介绍
threejs-devtools-mcp
用于实时检查 Three.js 场景、在浏览器中即时尝试更改并将其转换为代码的 MCP 服务。69 个工具涵盖对象、材质、着色器、纹理、动画、性能和内存,以及网站审计、视频帧捕获和 Playwright 辅助工具。
无需更改项目。 适用于原生 Three.js 和 React Three Fiber,支持 WebGLRenderer 和 WebGPURenderer。

设置
1. 添加 MCP 服务
Claude Code
claude mcp add threejs-devtools-mcp -- npx threejs-devtools-mcp
Claude Desktop
添加到 claude_desktop_config.json:
{
"mcpServers": {
"threejs-devtools-mcp": {
"command": "npx",
"args": ["-y", "threejs-devtools-mcp"]
}
}
}
Cursor
添加到项目中的 .cursor/mcp.json:
{
"mcpServers": {
"threejs-devtools-mcp": {
"command": "npx",
"args": ["-y", "threejs-devtools-mcp"]
}
}
}
或者使用 HTTP 传输方式 — 查看 Cursor 设置指南。
Windsurf
添加到 ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"threejs-devtools-mcp": {
"command": "npx",
"args": ["-y", "threejs-devtools-mcp"]
}
}
}
VS Code (Copilot)
添加到 .vscode/mcp.json:
{
"servers": {
"threejs-devtools-mcp": {
"command": "npx",
"args": ["-y", "threejs-devtools-mcp"]
}
}
}
OpenCode
添加到项目中的 opencode.json:
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"threejs-devtools-mcp": {
"type": "local",
"command": ["npx", "-y", "threejs-devtools-mcp"],
"enabled": true
}
}
}
2. 启动开发服务并打开浏览器
照常启动 Three.js 开发服务(npm run dev)。MCP 服务会自动从 package.json 检测端口,并打开 localhost:9222,注入开发者工具桥接程序。
保持浏览器标签页打开。 MCP 服务通过 WebSocket 桥接程序与场景通信。关闭标签页 = 工具停止工作。
3. 向 AI 询问场景相关问题
"show me the scene tree"
"why is my model invisible?"
"try the car in red" ← live preview, nothing saved
"keep it" ← written into your code
"audit this site for mobile"
"record a 5-second clip at 60 fps"
仅查看效果 vs. 更改代码
每个工具都带有标签,方便你和 AI 始终了解哪些操作会影响文件:
| 工具 | 代码 | |
|---|---|---|
| 检查 | scene_tree、material_details、web_audit、截图…… | 不受影响 |
| 实时预览 | set_material_property、set_light、set_camera…… | 不受影响;页面重新加载后更改会丢失 |
| 调试可视化 | 线框、边界框、辅助对象、叠加层 | 不受影响;无需写入代码 |
| 用于代码 | pending_changes、gltf_to_r3f | AI 会将代码写入源文件 |
每项实时预览更改都会被记录。pending_changes 会返回每项更改的之前 → 之后状态、可直接粘贴的代码(原生 Three.js 和 React Three Fiber),以及在项目中的位置。revert_changes 可在浏览器中撤销这些更改。
用于网站和视频
web_audit:检查画布模糊(像素比率、缺少尺寸调整)、耗电过多(空闲或画面移出屏幕时仍在渲染)、纹理过大(尺寸超限、未使用 KTX2)、阴影开销过高、色彩空间错误以及绘制调用过多。每项问题都会附带修复方法。capture_frames:录制用于宣传短片和 Reels 的连续帧。时间经过虚拟化处理,因此即使场景渲染缓慢,输出也能以 30/60 fps 完美流畅。你会获得用于生成 MP4/WebM 的ffmpeg命令。
技能
在 Claude Code、Cursor 和其他客户端中,这些现成工作流会显示为斜杠命令:inspect-scene、try-look、apply-to-code、web-perf-audit、prepare-video、debug-invisible、playwright-setup。
Playwright & Puppeteer
三种连接方式,使用的工具都相同:你自己的浏览器(默认)、由服务启动的 Chrome(HEADLESS / CDP_PORT,可与 Playwright MCP 共享),或你自己的测试:
import { attachDevtools, waitForScene, threeCall } from 'threejs-devtools-mcp/playwright';
await attachDevtools(context, { connect: false });
await page.goto('http://localhost:5173');
await waitForScene(page);
expect((await threeCall(page, 'object_details', { name: 'Car' })).visible).toBe(true);
参见 Browsers, Puppeteer & Playwright。
浏览器内叠加层
内置的开发者工具面板,提供实时性能统计、交互式场景图、材质编辑器和 3D 对象预览。自动激活,也可通过 toggle_overlay 工具激活。

提示:为对象命名
未命名的对象在场景树中显示为 (unnamed)。为对象命名后,更容易查找和修改:
// Three.js
mesh.name = "player";
// React Three Fiber
<mesh name="player" geometry={geometry} material={material} />
文档
- 工具参考 — 按模式分类的全部 69 个工具、技能和参数
- Browsers, Puppeteer & Playwright — 连接模式、端到端测试和 CI 提示
- 高级设置 — 动画、场景导出、配置和传输方式
- Cursor 设置 — Cursor 分步指南
- 节省令牌的工作流 — 节省上下文的最佳实践
许可证
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。