| npm | Developer Site | Editor Manual | API Reference | Blog | Forum |
An MCP server that lets AI agents automate the PlayCanvas Editor and check that scenes actually run. The MCP client is built into the Editor, so no browser extension is needed.
Add the server to your MCP client. For Claude Code:
claude mcp add playcanvas -- npx -y @playcanvas/editor-mcp-serverRequires Node.js 22.18+. Add the server once per agent: two servers take turns owning the Editor port.
Claude Desktop, Cursor, and a shared project .mcp.json
{
"mcpServers": {
"playcanvas": {
"command": "npx",
"args": ["-y", "@playcanvas/editor-mcp-server"]
}
}
}Add this to claude_desktop_config.json (Settings > Developer > Edit Config), to Cursor's
global MCP servers (Cursor Settings > MCP), or to a .mcp.json committed to the project root
for Claude Code. On Windows, use "command": "cmd" with "args": ["/c", "npx", "-y", "@playcanvas/editor-mcp-server"].
Codex CLI and app
codex mcp add playcanvas -- npx -y @playcanvas/editor-mcp-serverOn Windows, insert cmd /c before npx. If the first run times out while npx downloads, raise
startup_timeout_sec under [mcp_servers.playcanvas] in ~/.codex/config.toml.
Then open your project in the Editor, click the MCP button below Publish, and click CONNECT. To
start with no project open, use the MCP button next to NEW PROJECT on playcanvas.com/editor. Allow
Chrome's Apps on device permission when prompted; if the Editor stays on Connecting, it is
blocked. The default port is 52000; to change it, pass --port <number> to the server and set the
same port in the Editor.
Ask your agent for the outcome you want in the open project. For example:
Add a spinning cube with a rotate script to the current scene, launch it, and capture a screenshot
of the running app to confirm it turns.
| Category | Coverage |
|---|---|
| Projects | Listing, exact reads, creation, name, description and visibility edits, and opening a project in the connected Editor |
| Entity | Exact reads, filtered lists, resolution, search, script lookup, creation, schema-safe batch edits, duplication, hierarchy changes, deletion and component lifecycle |
| Scripts | Asset text reads and writes, parsing, attachment, attributes, ordering and removal |
| Assets | Exact reads, reference graphs, native creation, streamed upload and atomic download up to 512 MiB, schema-safe edits, moves, duplication, source replacement, reimport, deletion and materials |
| Templates | Instantiation and instance override inspection, application, reversion and unlinking |
| Animation | Animation state graph reads and edits, mapping-safe state renames and animation events |
| Processing | Lightmaps, model unwrap and cancellation, texture conversion, atlases, cubemaps, fonts, metadata, compressed variants, prefiltering, sprites and bundles |
| Scene | Exact reads, listing, loading, creation, duplication, rename, deletion and scene settings |
| Settings | Scoped project, private, user, session and scene settings reads and edits |
| Viewport | Camera and viewport state, visibility, capture and focus |
| Editor | Selection, edit-time logs, transform gizmo state, undo and redo |
| Builds | Listing, exact reads, creation options, streamed downloads, primary build selection and deletion |
| Store | PlayCanvas Store search and import, licenses, Sketchfab search and import, and My Assets search and import |
| Runtime | Launch lifecycle and options, engine version discovery, screenshots, logs, live state inspection and keyboard, mouse and touch input |
| VCS | Branches, checkpoints, restore and hard reset, merges, conflict resolution and checkpoint diffs |
Tools act on the project open in the connected Editor, one Editor at a time. Project tools also
work from the project manager at playcanvas.com/editor with no project open; opening a project
reloads the tab into it and reconnects automatically. Projects can't be deleted. Runtime tools open
a Launch window, so allow pop-ups for the Editor.
The 130 tool definitions total about 43,000 tokens (4 characters per token). Claude Code's MCP tool search is on by default and loads only tool names at start, about 1,000 tokens.
The server has no telemetry. It listens on 127.0.0.1:52000 for playcanvas.com and localhost
pages, stops any other process holding that port, touches local files only for upload and download
tools, and makes one outbound request: download_build fetches the archive URL the Editor reports.
git clone https://github.com/playcanvas/editor-mcp-server.git
cd editor-mcp-server
npm install
npm run watchPoint your MCP client at src/server.ts with "command": "node". npm run debug opens the MCP
Inspector and npm run build produces the published bundle. Report bugs in
GitHub Issues.
The PlayCanvas Editor MCP Server is released under the MIT License.