The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Roblox Studio MCP listing page.
A Model Context Protocol (MCP) server that connects AI coding assistants like Claude Code directly to Roblox Studio. Read, create, modify, and delete instances in the DataModel — all from your terminal.
The bridge has two halves:
localhost:3001All write operations are wrapped in ChangeHistoryService, so every change can be undone with Ctrl+Z in Studio.
| Tool | Type | Description |
|---|---|---|
get_descendants | Read | Get all descendants with paths, optional maxDepth |
get_children | Read | Get immediate children of an instance |
get_properties | Read | Get serialized properties of an instance |
find_instances | Read | Search by className and/or namePattern |
get_services | Read | List all DataModel services |
get_selection | Read | Get currently selected instances in Studio |
create_instance | Write | Create a new Instance with properties |
set_properties | Write | Modify properties on an existing instance |
delete_instance | Write | Destroy an instance (undo-supported) |
clone_instance | Write | Clone an instance to a new parent |
move_instance | Write | Reparent an instance |
set_selection | Write | Set the Studio selection |
insert_service | Write | Insert a service via game:GetService() |
execute_luau | Write | Execute arbitrary Luau code in the plugin context |
Paths use dot-notation starting from game, e.g. game.Workspace.SpawnLocation.
Or install directly from npm:
Using Rojo:
Then copy the plugin file to your Roblox plugins folder:
| OS | Path |
|---|---|
| macOS | ~/Documents/Roblox/Plugins/MCPBridge.rbxmx |
| Windows | %LOCALAPPDATA%\Roblox\Plugins\MCPBridge.rbxmx |
Or build directly to the plugins folder:
Open Roblox Studio, then:
Home → Game Settings → Security → Allow HTTP Requests → ON
This is required for the plugin to communicate with the local MCP server.
Add the server to your MCP client configuration.
Claude Code (~/.claude/settings.json):
Claude Desktop (claude_desktop_config.json):
Replace /absolute/path/to/ with the actual path where you cloned the repo.
Once connected, your AI assistant can manipulate Studio directly:
The assistant uses the MCP tools to read the DataModel, create instances, set properties, and more — all reflected live in Studio with full undo support.
| Environment Variable | Default | Description |
|---|---|---|
MCP_BRIDGE_PORT | 3001 | HTTP bridge port |
127.0.0.1 — it is never exposed to the networkChangeHistoryService for undo supportexecute_luau runs code in the plugin context with no sandboxing — only use with trusted inputThe serializer handles bidirectional conversion for:
Vector3 · Vector2 · CFrame · Color3 · BrickColor · UDim · UDim2 · Rect · NumberSequence · ColorSequence · NumberRange · Enum · Instance · Font · PhysicalProperties · Ray
All types use a { _type: "TypeName", ... } JSON format for lossless round-tripping.
Plugin shows red dot / "Disconnected"
npm start)3001)"Plugin not connected" error in Claude Code
Port already in use
https://www.npmjs.com/package/@jamesworkbenchcrm/roblox-studio-mcp
MIT