PlayCanvas Editor MCP Server
OfficialThe PlayCanvas Editor MCP Server enables automation of the PlayCanvas Editor using an LLM (Large Language Model).
Entity Management: Create, modify, duplicate, reparent, delete, and list entities. Add or remove components to entities, and manage scripts within script components.
Asset Management: Create, list, delete, and instantiate various asset types (CSS, folder, HTML, material, script, shader, template, text). Modify material properties and update script text.
Scene Settings: Query and modify scene settings, including render and physics configurations.
Store Interaction: Search, retrieve, and download assets from the PlayCanvas store, managing licenses and attribution.
Allows automation of the PlayCanvas Editor, providing tools for entity management, asset handling, script creation/editing, material management, scene settings modification, and asset store interactions within the PlayCanvas development environment.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@PlayCanvas Editor MCP Servercreate a red cube at position 0, 2, 0"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
PlayCanvas Editor MCP Server
| User Manual | API Reference | Blog | Forum |
An MCP server for automating the PlayCanvas Editor with an LLM. The MCP client is built into the Editor — no browser extension needed. Install the server into your MCP client of choice (Claude Code, Codex, Claude Desktop, Cursor, …) and connect the Editor to it.
Installation
Requires Node.js 22.18+. The server is published to npm as @playcanvas/editor-mcp-server — a self-contained, zero-dependency bundle — so every client below runs it with npx. Nothing to clone or build.
Claude Code
claude mcp add playcanvas -- npx -y @playcanvas/editor-mcp-serverTo share the server with everyone working on a repo, commit a .mcp.json to the project root instead:
{
"mcpServers": {
"playcanvas": {
"command": "npx",
"args": ["-y", "@playcanvas/editor-mcp-server"]
}
}
}Codex
The Codex CLI and the Codex app share ~/.codex/config.toml, so one command covers both:
codex mcp add playcanvas -- npx -y @playcanvas/editor-mcp-serverOn Windows, usecodex mcp add playcanvas -- cmd /c npx -y @playcanvas/editor-mcp-server. If the server times out on first run (while npx downloads the package), raise startup_timeout_sec under [mcp_servers.playcanvas] in ~/.codex/config.toml. ChatGPT itself only supports remote MCP connectors, so Codex is the OpenAI surface to use.
Claude Desktop
Go to Claude > Settings > Developer > Edit Config and add to claude_desktop_config.json:
{
"mcpServers": {
"playcanvas": {
"command": "npx",
"args": ["-y", "@playcanvas/editor-mcp-server"]
}
}
}On Windows, use"command": "cmd" and "args": ["/c", "npx", "-y", "@playcanvas/editor-mcp-server"].
Cursor
Select File > Preferences > Cursor Settings > MCP > Add new global MCP server and add the same JSON as for Claude Desktop.
Custom Port
The server listens for the Editor on WebSocket port 52000 by default. To change it, append --port <number> to the npx args and set the same port in the Editor's MCP popover.
Related MCP server: HostBridge MCP Server
Connecting the Editor
Open your project in the PlayCanvas Editor.
Click the MCP button at the bottom of the toolbar (below the Publish button).
Check that the port matches your MCP config (default
52000) and clickCONNECT.
You can now issue commands from your MCP client.
Only one Editor instance can be connected to the MCP server at a time.
Editor Driver Coverage
All tools act on the project open in the connected Editor. The server does not discover, select, create, delete, transfer, or administer projects, and project IDs are not tool inputs.
Category | Driver coverage | Tools |
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, screenshots, logs, live state inspection and keyboard, mouse and touch input |
|
VCS | Branches, checkpoints, restore and hard reset, merges, conflict resolution and checkpoint diffs |
|
Asset transfers over 20 MiB use 1 MiB chunks. The server reads and writes local files incrementally, while the Editor spools uploads to browser storage and consumes downloads as streams instead of buffering the entire transfer in memory.
The Runtime tools drive a real Launch instance (the Editor's Launch button) so an agent can verify that a scene actually runs: screenshot the running app, read its console output, query live entity state, and inject keyboard/mouse/touch input. Allow pop-ups for the editor origin so launch_start can open the launch window — it reuses your existing PlayCanvas login session.
Every tool returns a consistent { data, meta } envelope: meta.status is ok or error (with an actionable message), list tools paginate via limit/offset and meta.nextCursor, and mutating tools return the resulting entity/asset summaries so follow-up list calls are rarely needed.
Development
To hack on the server itself, ensure you have Node.js 22.18 or later installed. Follow these steps:
Clone the repository:
git clone https://github.com/playcanvas/editor-mcp-server.git cd editor-mcp-serverInstall dependencies:
npm installStart the server (Node runs the TypeScript source directly — no build step):
npm run watchPoint your MCP client at the checkout instead of the npm package with
"command": "node"and"args": ["/path/to/editor-mcp-server/src/server.ts"].
npm run debug starts the server under the MCP Inspector and npm run build produces the self-contained bundle that gets published.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseDqualityDmaintenanceAn MCP server that enables LLMs to 'see' what's happening in browser-based games and applications through vectorized canvas visualization and debug information.Last updated1853MIT
- Alicense-qualityDmaintenanceAn MCP server that helps novice developers deploy web applications through conversational interfaces, bridging the gap between LLMs and various hosting environments.Last updated1MIT
- FlicenseBqualityCmaintenanceAn MCP server that bridges AI clients with a frontend 3D visualization application to control model properties, lighting, and camera settings via WebSocket. It enables real-time manipulation of 3D scenes through natural language commands for scaling, rotating, and coloring models.Last updated61
- Alicense-qualityBmaintenanceAn MCP server enabling AI agents to author Unreal Engine 5 scenes directly, with tools for spawning actors, building PCG graphs, validating physics, generating terrain, and more through a single MCP connection.Last updated11MIT
Related MCP Connectors
Generate, edit, and deploy immersive 3D/WebGL web projects from any MCP assistant.
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to control Unreal E…
MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/playcanvas/editor-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server