
Roblox Studio MCP Server (chrrxs): Setup for Claude Code, Cursor and Other Apps
Not the official Roblox Studio MCP server. This one is built by the community. Roblox Studio makes its own: Roblox Studio built-in MCP server →
Lets Claude, Cursor and other assistants edit Roblox places in Studio, run Luau and playtest your game.
This community server connects your assistant to Roblox Studio through a plugin it installs for you. It can edit scripts and objects, run Luau code, start solo and multiplayer playtests, and collect logs, screenshots and profiler captures. Studio must be open on your computer. It can change your place and run any Luau you send it, so back up your place first, or use the separate read-only Inspector edition.
Good for
- Roblox developers who want an assistant to edit scripts and objects in Studio
- Teams debugging live games with logs, breakpoints and screenshots
- Developers profiling slow frames and memory in server and client playtests
- Anyone who wants a read-only look at a place through the Inspector edition
Works in
12 should work
Tap an app to see how to set it up and any known problems.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Client does not support this transport.
Client does not support this transport.
Install Roblox Studio MCP (chrrxs)
Claude Code
- 1
Copy this prompt.
Add the Roblox Studio MCP (chrrxs) server to Claude Code. Run this command: claude mcp add robloxstudio -- npx -y @chrrxs/robloxstudio-mcp@latest --auto-install-plugin Then check that it loaded and tell me if I need to sign in or restart.
- 2
Paste it into Claude Code. It shows the change and asks before running it.
Requires Roblox Studio, Node.js.
Read-only mode: Install the separate Inspector edition (@chrrxs/robloxstudio-mcp-inspector) instead of this package: it makes no changes to the place or scripts. Its selection tool can still change Studio's selection and camera, and its export and profiler tools write files to local paths.
Roblox Studio must be installed. The --auto-install-plugin flag copies the matching Studio plugin into your Studio Plugins folder (set MCP_PLUGINS_DIR to use another folder), so fully close and reopen Studio afterwards. When the plugin shows Connected, you are ready. The @latest tag always pulls the newest release; pin a version to stay on one. For monetization and experience tools, add a Roblox Open Cloud API key in ROBLOX_OPEN_CLOUD_API_KEY with only the scopes you want an agent to use. Skip that key for everything else. The Claude Code command is the README's own; other tabs adapt it.
From the project README. Source.
Tools
Shows the open place's identity and settings
Returns the identity and settings of the place open in Studio.
Try: “What place do I have open in Studio?”
Read ·
get_place_infoFinds objects in the place
Finds instances by name, class or property value.
Try: “Find every Part named Spawn.”
Read ·
search_objectsShows an object's current properties
Reads the current properties of one instance.
Try: “What are the properties of Workspace.Baseplate?”
Read ·
get_instance_propertiesShows the object tree under a node
Returns a subtree of the place and its hierarchy.
Try: “Show the structure of ServerScriptService.”
Read ·
get_project_structureChanges several properties on one object
Updates several properties of one instance in a single call.
Try: “Set Baseplate.Color to dark gray and Anchored to true.”
Write ·
set_propertiesReads a script's code
Returns all or part of a script's source.
Try: “Show me the code of ServerScriptService.GameManager.”
Read ·
get_script_sourceReplaces a script's whole code
Overwrites the entire source of one script. Use it only when you mean to replace everything.
Try: “Replace GameManager with this new version.”
Delete ·
set_script_sourceMakes exact edits inside one script
Replaces exact text in one script. A batch of edits applies all together or not at all.
Try: “Rename the variable score to points in GameManager.”
Delete ·
edit_script_linesAdds code after a line in a script
Inserts new source after a known line in one script.
Try: “Add a print statement after line 12 of GameManager.”
Write ·
insert_script_linesRemoves lines from a script
Deletes an inclusive range of lines from one script.
Try: “Delete lines 20 to 30 of GameManager.”
Delete ·
delete_script_linesLists an object's attributes
Returns every attribute on one instance.
Try: “What attributes does the Boss model have?”
Read ·
get_attributesReads or changes what is selected in Studio
Gets or sets the Studio selection and can frame it in the viewport, for example before a screenshot. This changes the editor selection and camera.
Try: “Select the Boss model and frame it.”
Read ·
selectionRuns Luau code in Studio
Runs any Luau code you give it in Studio's edit context or on a connected peer. It can read or change anything in the place.
Try: “Use Luau to list all scripts that have no comments.”
Delete ·
execute_luauRuns Luau in the live game server
Runs Luau in the live server of a playtest, sharing the require cache of your game scripts.
Try: “Check the value of the round timer on the server.”
Delete ·
eval_server_runtimeRuns Luau in a live game client
Runs Luau in a playtest client, sharing the require cache of your game scripts.
Try: “Print the local player's health on client 1.”
Delete ·
eval_client_runtimeSearches the code of all scripts
Searches script sources for text.
Try: “Find every script that uses RemoteEvent:FireServer.”
Read ·
grep_scriptsOpens, closes or checks Studio windows
Launches Studio from a baseplate, a local place file, a published place or an older revision, closes Studio, checks status, or lists place versions.
Try: “Open the published place 123456 in Studio.”
Delete ·
manage_instanceStarts, stops or checks a one-player playtest
Starts, stops or inspects a single-player playtest in Studio.
Try: “Start a solo playtest.”
Write ·
solo_playtestSimulates bad network for a client
Simulates client latency, jitter or packet loss.
Try: “Simulate 200 ms latency on client 1.”
Write ·
set_network_profileShows current network and device simulation
Reports which network and device simulation settings are active.
Try: “Is any network simulation active?”
Read ·
get_simulation_stateClears network and device simulation
Turns off any simulated network or device settings.
Try: “Reset all simulation settings.”
Write ·
reset_simulation_stateShows device simulation or presets
Reports the current device simulation or lists available device presets.
Try: “List device presets.”
Read ·
get_device_simulator_stateSimulates a phone or tablet screen
Sets a simulated device in edit mode or in a playtest client.
Try: “Simulate a small phone screen.”
Write ·
set_device_simulatorCompares screenshots across up to six devices
Takes viewport screenshots for up to six device settings so you can compare layouts.
Try: “Screenshot the menu on three phone sizes and a tablet.”
Write ·
capture_device_matrixRuns or checks a multi-client playtest
Starts, inspects or stops a playtest with a server and several clients.
Try: “Start a 3-client playtest.”
Write ·
multiplayer_playtestReads the output log
Reads output from edit mode, the server or a specific client, including messages logged during startup.
Try: “Show errors from the server since the playtest started.”
Read ·
get_runtime_logsFinds slow Luau code
Records CPU timings for scripts on a running server or client.
Try: “Profile the server for 10 seconds and show the hottest functions.”
Read ·
capture_script_profilerProfiles frame time or reads a saved capture
Records engine and game frame time on a live peer, or analyzes a saved MicroProfiler dump. It keeps its 10 most recent captures in your system temp folder.
Try: “Capture a MicroProfiler trace of client 1.”
Write ·
capture_micro_profilerTraces script lines without pausing
Sets breakpoints or logpoints that record each hit while the playtest keeps running.
Try: “Log every time line 42 of Combat runs.”
Write ·
breakpointsLists the Studio windows it can reach
Discovers standalone Studio instances and the temporary ones inside multiplayer groups.
Try: “Which Studio instances are connected?”
Read ·
get_connected_instancesChecks on a long-running operation
Checks, waits for or recovers an operation that was started earlier.
Try: “What happened to the last capture request?”
Read ·
get_request_statusSearches the Creator Store
Finds public Creator Store assets by type or keyword.
Try: “Search the Creator Store for a medieval castle model.”
Network ·
search_assetsShows details for a Creator Store asset
Reads the full catalog details of one asset.
Try: “Show details for asset 123456.”
Network ·
get_asset_detailsGets a thumbnail of an asset
Fetches an asset's thumbnail so it can be reviewed visually.
Try: “Show the thumbnail for asset 123456.”
Network ·
get_asset_thumbnailAdds a Creator Store asset to your place
Strips scripts and package links from the asset, checks the cleaned result, then places it in Studio.
Try: “Insert asset 123456 into Workspace.”
Write ·
insert_assetStages a model from text or an image
Generates a Roblox model from a prompt or an image file and stages it in Studio.
Try: “Generate a wooden crate model.”
Write ·
generate_modelInspects an asset without adding it
Shows an asset's hierarchy, media information and security scan before you insert it.
Try: “Preview asset 123456.”
Network ·
preview_assetUploads a local file to Roblox
Uploads an audio, decal, model, animation or video file from your computer to your Roblox account or a group.
Try: “Upload ./sfx/jump.ogg as audio named Jump.”
Write ·
upload_assetTakes a picture of the Studio viewport
Captures the Studio viewport, and can map input coordinates. If Studio's own capture fails it can capture the Studio window through the operating system, which on macOS needs Screen Recording permission.
Try: “Take a screenshot of the current view.”
Files ·
capture_screenshotLists, creates or edits products and game passes
Lists, creates and updates developer products and game passes. New items stay off sale unless you ask, and an existing name is refused. Needs an Open Cloud API key.
Try: “List the developer products in my experience.”
Write ·
manage_monetizationReads or changes experience settings
Reads and changes the title, description, server size, devices, voice chat, private server price and social links. It cannot make an experience public or private. Needs an Open Cloud API key.
Try: “Change the experience description to this text.”
Write ·
manage_experienceClicks and scrolls in a playtest
Sends mouse clicks, moves or scrolls to a live playtest viewport.
Try: “Click the Play button in the menu.”
Write ·
simulate_mouse_inputTypes and presses keys in a playtest
Sends key presses or text to a live playtest client.
Try: “Press W for two seconds.”
Write ·
simulate_keyboard_inputShows memory use by category
Compares memory categories across the Studio server and clients.
Try: “Which category uses the most memory on the client?”
Read ·
get_memory_breakdownShows which objects cost the most
Attributes the cost of the scene to instances and content.
Try: “Which models cost the most to render?”
Read ·
get_scene_analysisSaves selected objects to a file
Saves selected instances as a local .rbxm file at a path you give.
Try: “Export the selected model to ./exports/crate.rbxm.”
Write ·
export_rbxmLoads a .rbxm file into the place
Loads a local, remote or inline .rbxm under a parent you choose.
Try: “Import ./exports/crate.rbxm into Workspace.”
Write ·
import_rbxmReplaces text across many scripts
Previews or applies one replacement across scripts.
Try: “Replace the old remote name with the new one in all scripts.”
Delete ·
find_and_replace_in_scriptsReads Roblox's Studio Assistant skills
Lists and reads the Roblox-written skills installed with Studio.
Try: “List the installed Roblox Studio skills.”
Read ·
get_roblox_skillsFetches Roblox API documentation
Returns official engine or Luau reference pages for a class, enum, datatype or library as Markdown.
Try: “Get the docs for TweenService.”
Network ·
get_roblox_docs
Read from the source code
Permissions
high risk · 7 things to watch
High risk
It can run any Luau code, rewrite or delete scripts, and with an Open Cloud key change your live monetization and experience settings. Work on a saved copy of your place, or switch to the read-only Inspector edition, and give any API key only the scopes you want an agent to use.
What it can do
- Read your data
- Create and change things
- Delete things
- Read-only modeHow to turn it on
Watch out for
It can run any Luau code in Studio and live games
execute_luau, eval_server_runtime and eval_client_runtime run whatever code the assistant sends, and can change or delete anything in the place. Save a copy of your place first. github.com
It can edit and delete script code
set_script_source, edit_script_lines, delete_script_lines and find_and_replace_in_scripts rewrite or remove script code. Keep your place in version control or a saved copy. github.com
An Open Cloud key lets it change your live experience
With a key, manage_monetization creates and edits developer products and game passes, and manage_experience changes title, description, server size and private server price. The README says the agent can use every permission the key grants, so give it only the scopes you want. github.com
It can launch and close Studio
manage_instance opens Studio from a place, and closes the Studio process. Save your work before an agent uses it. github.com
It can click and type inside a playtest
simulate_mouse_input and simulate_keyboard_input send input to a live playtest. Screenshot fallback also captures the Studio window and on macOS needs Screen Recording permission. github.com
It installs a plugin into Studio
The --auto-install-plugin flag copies a Studio plugin into your Plugins folder on every start. Installing again replaces the plugin file. github.com
Local bridge on your machine
The plugin talks to the server over HTTP on 127.0.0.1 port 58741 by default, with a token. Setting ROBLOX_STUDIO_HOST to another address exposes it to the network, and ROBLOX_STUDIO_NO_AUTH turns the token off. github.com
Security advisories
No published security advisories as of Nov 1, 2026.
Technical details
| Turning on read-only | Install the separate @chrrxs/robloxstudio-mcp-inspector package instead of the main one. The README says it makes no DataModel or script edits. |
|---|---|
| Talks to | Roblox (Creator Store, docs and, with an Open Cloud key, Open Cloud APIs) |
| Sign-in and keys | No sign-in for most tools. The optional ROBLOX_OPEN_CLOUD_API_KEY sits in your MCP client config. A local HTTP bridge for the Studio plugin uses an auto-generated token file. |
Questions
Is this the official Roblox Studio MCP server?
No. It is a community project by chrrxs, based on boshyxd/robloxstudio-mcp, not made by Roblox. Roblox ships its own server built into Roblox Studio (setup in its Creator Hub page, "Connect to the Roblox Studio MCP server"). Roblox's older standalone server, Roblox/studio-rust-mcp-server, is archived and says it is no longer actively developed.
Is there a read-only version?
Yes. The README offers an Inspector edition, @chrrxs/robloxstudio-mcp-inspector, with read-only access to the DataModel. Its selection tool can still change selection and camera, and its export and profiler tools can write files to paths you name. Install only one edition at a time.
Do I need a Roblox API key?
Not for most tools. Monetization, experience settings, place versions and audio preview need an Open Cloud key in ROBLOX_OPEN_CLOUD_API_KEY. The key needs scopes such as developer-product and game-pass read and write, plus the experience added to the key.
Why does it install something into Roblox Studio?
The server talks to Studio through a plugin. The setup command with the auto-install flag copies the matching plugin into your Studio Plugins folder. Fully close and reopen Studio, then wait for the plugin to show Connected.
Can it run Luau in my live game?
Yes. It can run Luau on the playtest server and on any client, and in Studio's edit mode. It uses the same require cache as your game scripts.
Does it work on Linux?
On native Linux, Studio runs under Wine. You set ROBLOX_STUDIO_WINE_LAUNCHER and ROBLOX_STUDIO_EXE so the server can start Studio, and some features such as host window capture are not available.
Is it free?
Yes. The server is open source under the MIT license. Roblox Studio is free to use.
How do I add it to Claude Code?
Use the command in the Claude Code tab of the install box above, then fully restart Studio so the plugin loads.
Information
updated Nov 2, 2026
- Publisher
- Community
- Package
@chrrxs/robloxstudio-mcp- Registry
- npm
- Transport
- stdio
- Auth
- None
- Version
- 3.4.2
- License
- MIT
- Last commit
- Oct 26, 2026
- Open issues
- 8
Other Roblox Studio MCP servers
Sources
Docs, issue trackers and discussions this page is built from. Issues, quotes and findings above link to their own source.
Show all 5Hide
- github.com · github.com
- github.com · github.com
- github.com · github.com
- create.roblox.com · create.roblox.com
- github.com · github.com