
roblox-studio-mcp
Drive Roblox Studio from an AI agent via the built-in Studio MCP server - connecting Claude Code, Codex, Cursor, OpenCode, Gemini CLI; tools to explore the DataModel, read/edit scripts, run Luau in edit/server/client, playtest, read output, capture screenshots, simulate input, insert assets. Use when an agent should inspect, modify, or playtest an open Studio place, or to set up the connection.
- Installs
- 451
- Last 24h
- +23
- Trending rank
- #5231
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/el4cteo/roblox-skills --skill roblox-studio-mcp- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads roblox-studio-mcp automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
Working in Roblox Studio through MCP
Roblox Studio ships a built-in MCP server (stdio). With it, an agent can explore the open place, edit scripts, run Luau in edit/server/client contexts, playtest, read the Output, capture the viewport, and simulate player input. It is the fastest way to verify Roblox changes instead of guessing.
Setup
- Latest Studio → open Assistant → … → Manage MCP Servers → enable Enable Studio as MCP server.
- Use Quick connect (Claude Code, Claude Desktop, Codex CLI, Cursor, Gemini CLI, VS Code, Antigravity) or configure the client manually:
| OS | Command |
|---|---|
| macOS | /Applications/RobloxStudio.app/Contents/MacOS/StudioMCP |
| Windows | cmd.exe /c %LOCALAPPDATA%\Roblox\mcp.bat |
# Claude Code
claude mcp add Roblox_Studio -- /Applications/RobloxStudio.app/Contents/MacOS/StudioMCP
claude mcp add Roblox_Studio -- cmd.exe /c "%LOCALAPPDATA%\Roblox\mcp.bat" # Windows
{ "mcpServers": { "Roblox_Studio": { "command": "/Applications/RobloxStudio.app/Contents/MacOS/StudioMCP" } } }
Client-specific config (Codex config.toml, OpenCode opencode.json, Cursor/VS Code mcp.json):
references/client-setup.md. A green indicator in Manage MCP Servers
confirms the connection. Only connect clients you trust: they can read and modify your places.
Tools
| Group | Tools |
|---|---|
| Session | list_roblox_studios (every call takes a studio_id), get_studio_state (play state, available DataModels) |
| Explore | search_game_tree (filter by path/class/keyword, depth), inspect_instance (properties, attributes, children), script_search (fuzzy by name), script_grep (text across scripts, ≤ 50 hits), script_read (dot path like game.ServerScriptService.Main, line ranges) |
| Edit | multi_edit (several edits to one script, creates it if missing; datamodel_type = Edit) |
| Run | execute_luau (datamodel_type = Edit, Server, or Client; returns the result or error) |
| Playtest | start_stop_play, get_console_output, screen_capture (optional camera position/look-at), character_navigation, user_keyboard_input, user_mouse_input |
| Assets | search_asset (Creator Store / inventory), insert_asset, upload_image, store_image, generate_mesh, generate_material, generate_procedural_model + wait_job_finished |
| Delegation | subagent (explore or playtest types for multi-step investigations) |
| Knowledge | http_get (Roblox docs, API reference, Cloud docs), skill (Roblox-authored skills: debugging, device simulation, docs search, profiling, scene analysis, unit tests) |
The working loop
- Orient:
list_roblox_studios→ pickstudio_id;get_studio_state. Map the project withsearch_game_tree(depth-limited: services first), thenscript_grep/script_searchfor the feature. - Read before writing:
script_readevery script you'll touch and its requirers. Check for a Rojo/Script Sync setup (see below) before editing in Studio. - Edit with
multi_edit(exact, minimal edits; keep existing style). Create instances/attributes/ tags withexecute_luauinEditcontext — changes made this way are real edits to the place. - Verify statically: re-read the script; for pure modules,
execute_luaua quick check (requirethe module inEditand call functions). - Playtest:
start_stop_play(start) → wait →get_console_outputfor errors → drive the scenario withcharacter_navigation/ input tools →execute_luauinServer/Clientto assert state →screen_capturefor visual checks →start_stop_play(stop). Always stop play when done. - Report what changed and what was verified (and what wasn't).
-- Example execute_luau (Server context during play): assert game state instead of eyeballing.
local Players = game:GetService("Players")
local results = {}
for _, player in Players:GetPlayers() do
local leaderstats = player:FindFirstChild("leaderstats")
local coins = leaderstats and leaderstats:FindFirstChild("Coins")
table.insert(results, `{player.Name}: {if coins and coins:IsA("IntValue") then coins.Value else "missing"}`)
end
return table.concat(results, "\n")
Rules of thumb
execute_luauinEditmutates the place: prefer read-only queries while exploring, and batch intentional changes into one clear script. UseChangeHistoryServicerecording (TryBeginRecording/FinishRecording) so the user can undo your edit as one step.- Changes made during play (Server/Client contexts) are discarded when play stops — edit in
Edit. - Rojo projects: the file system is the source of truth — edit files on disk, let Rojo sync, and use
MCP to playtest/inspect. Editing synced scripts via
multi_editgets overwritten. Script Sync projects sync both ways, so either side works, but don't edit the same script in both at once. - Keep
search_game_treequeries narrow (path + depth); large places produce huge outputs. - Multiple Studio windows: always pass the right
studio_id; tell the user which place you touched. - Inserted assets from the Creator Store can contain scripts: inspect them (
search_game_tree+script_read) before keeping them; remove unexpected scripts (backdoors are common in free models). - Don't claim success without evidence: cite console output, assertion results, or screenshots.
Roblox-authored skills and conversions
Studio exposes Roblox-authored skills through the skill tool (e.g. rbx-debug, rbx-perf-profiling,
rbx-scene-analysis, rbx-unit-test, rbx-docs-search, rbx-device-simulator-lua). Roblox also
publishes an official streaming conversion skill (/rbx-convert-to-streaming, downloadable from the
"Techniques and conversion" streaming docs) that runs through this MCP server; back up the place first.
Related skills
roblox-testing (test runners), roblox-performance (profiling), roblox-tooling (Rojo/Script Sync),
roblox-architecture (where things belong), roblox-code-review.
FAQ
What does the roblox-studio-mcp skill do?
Drive Roblox Studio from an AI agent via the built-in Studio MCP server - connecting Claude Code, Codex, Cursor, OpenCode, Gemini CLI; tools to explore the DataModel, read/edit scripts, run Luau in edit/server/client, playtest, read output, capture screenshots, simulate input, insert assets. Use when an agent should inspect, modify, or playtest an open Studio place, or to set up the connection.
How do I install roblox-studio-mcp?
Run npx skills add https://github.com/el4cteo/roblox-skills --skill roblox-studio-mcp in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/roblox-studio-mcp/ (personal) or .claude/skills/roblox-studio-mcp/ (project).
Which AI agents can use roblox-studio-mcp?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is roblox-studio-mcp safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains roblox-studio-mcp?
It is published by el4cteo in el4cteo/roblox-skills. It has 451 recorded installs.
More from el4cteo/roblox-skills
roblox-world-building
el4cteo/roblox-skills
Building worlds with code - parts, models and pivots, materials, Lighting (LightingStyle, Atmosphere, post-processing), day/night, Terrain API, in-game CSG and destruction (GeometryService Subtract/Union/Fragment), ProceduralModel, EditableMesh/EditableImage, particles/beams/trails/highlights. Use when creating maps, environments, lighting, destructible objects, procedural levels, or visual effects.
roblox-ui
el4cteo/roblox-skills
Responsive cross-platform UI - ScreenGui and safe areas (ScreenInsets), Scale vs Offset, UIListLayout flex/UIFlexItem, constraints, StyleSheets/tokens/themes, RichText, gamepad/touch navigation, UIDragDetector, CanvasGroup, tweens, BillboardGui/SurfaceGui, React-lua/Fusion/Vide. Use when building HUDs, menus, shops, inventories, or fixing UI that breaks on mobile, console, or other screen sizes.
roblox-testing
el4cteo/roblox-skills
Open the skill to read its SKILL.md instructions.
roblox-performance
el4cteo/roblox-skills
Open the skill to read its SKILL.md instructions.
roblox-code-review
el4cteo/roblox-skills
Review Roblox/Luau code for exploits, data loss, memory leaks, performance problems, lifecycle bugs, policy issues, and deprecated or superseded APIs, using a severity-ranked checklist and the full 2026 deprecation map. Use when reviewing a PR or script, auditing a game before launch, modernizing legacy code, or asked what is wrong with some Roblox code.
Popular ai & agents skills
google-agents-cli-publish
google/agents-cli
This skill should be used when the user wants to "publish an agent", "publish my ADK agent", "register an agent with Gemini", "publish to Gemini" (formerly Gemini Enterprise), or needs guidance on the agents-cli publish gemini command. Also use when the user wants to "manage agents in Agent Registry", "list/update/delete registered agents", or "register an MCP server". Covers ADK vs A2A registration modes, programmatic and interactive usage, flag reference, auto-detection from deployment metadata, Agent Registry fleet management, and troubleshooting. Part of the agents-cli skills suite. Do NOT use for deployment (use google-agents-cli-deploy).
google-agents-cli-eval
google/agents-cli
This skill should be used when the user wants to "run an evaluation", "evaluate my agent", "evaluate my ADK agent", "write an eval dataset", "analyze eval failures", "compare eval results", "optimize agent", or needs guidance on the Gemini platform eval methodology and the Quality Flywheel. Covers eval metrics, dataset schema, LLM-as-judge scoring, and common failure causes. Applies to any agents-cli project, whatever framework the agent is written in. Do NOT use for agent API code patterns (ADK: use google-agents-cli-adk-code), deployment (use google-agents-cli-deploy), or project scaffolding (use google-agents-cli-scaffold).
skill-creator
anthropics/skills
Create new skills, modify and improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, edit, or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or optimize a skill's description for better triggering accuracy.
codex-pet
prime-skills/runcomfy-agent-skills
Codex Pet generator on RunComfy. Build a Codex-compatible Codex Pet spritesheet.webp + pet.json from a single reference image, drop it into ${CODEXHOME:-$HOME/.codex}/pets/ / and Codex picks it up as a custom Codex Pet next to the 8 built-ins. This skill produces the exact Codex Pet atlas Codex expects (1536x1872 PNG/WebP, 8 cols x 9 rows, 192x208 cells, 9 animation states — idle, running-right, running-left, waving, jumping, failed, waiting, running, review). Calls OpenAI GPT Image 2 edit ONCE via the local RunComfy CLI as runcomfy run openai/gpt-image-2/edit to produce a canonical Codex Pet pose, then assembles all 9 animation rows programmatically with ImageMagick micro-transforms — no Codex Pro, no $imagegen, no OPENAIAPIKEY required, only RUNCOMFYTOKEN. Triggers on "codex pet", "create codex pet", "make codex pet", "hatch codex pet", "/hatch image", "desktop pet codex", "codex pets", "spritesheet.webp", or any explicit ask to build a custom pet for OpenAI Codex.
full-output-enforcement
leonxlnx/taste-skill
Overrides default LLM truncation behavior. Enforces complete code generation, bans placeholder patterns, and handles token-limit splits cleanly. Apply to any task requiring exhaustive, unabridged output.
executing-plans
obra/superpowers
Use when executing an implementation plan in the current session as the implementer yourself — your human partner chose inline execution, or no subagent tool is available