{"slug":"roblox-mcp","title":"roblox-mcp","summary":"Connect an AI client to Roblox Studio through MCP. Use for connection setup, Studio tools, multiple Studio windows, playtesting, or combining MCP with Script Sync.","platform":"Claude","tags":[],"authorName":"LLM Mart","authorSlug":"llm-mart","score":0,"source":"github","price":null,"verified":false,"createdAt":"2026-10-18T17:23:56.585494Z","repo":{"url":"https://github.com/nonlooped/roblox-suite","stars":22,"forks":0,"license":"MIT","updatedAt":"2026-10-17T23:48:49Z"},"bodyHtml":"<hr>\n<h2>name: roblox-mcp\ndescription: \"Connect an AI client to Roblox Studio through MCP. Use for connection setup, Studio tools, multiple Studio windows, playtesting, or combining MCP with Script Sync.\"\nlast_reviewed: 2026-06-17</h2>\n<h1>roblox-mcp</h1>\n<p><strong>Official sources:</strong></p>\n<ul>\n<li><a href=\"https://create.roblox.com/docs/en-us/studio/mcp\">https://create.roblox.com/docs/en-us/studio/mcp</a></li>\n<li><a href=\"https://create.roblox.com/docs/en-us/ai/build\">https://create.roblox.com/docs/en-us/ai/build</a></li>\n<li><a href=\"https://create.roblox.com/docs/en-us/scripting/sync\">https://create.roblox.com/docs/en-us/scripting/sync</a></li>\n<li><a href=\"https://modelcontextprotocol.io/docs/getting-started/intro\">https://modelcontextprotocol.io/docs/getting-started/intro</a></li>\n</ul>\n<p>The official Roblox Studio MCP server lets a connected AI client inspect and edit an open place. It provides tools for scripts, instances, Luau execution, assets, and playtesting.</p>\n<h2>What the Studio MCP server is</h2>\n<p>Roblox Studio implements a <strong>Model Context Protocol (MCP)</strong> server using <code>stdio</code> transport. The server runs as a local process on your machine and proxies requests from a supported AI client into the active Studio session. It is the bridge between your editor's agent and Studio: Script Sync handles disk-to-Studio file syncing, while MCP handles everything else (Explorer selection, instance inspection, script editing, Luau execution, play mode, input simulation, and asset insertion).</p>\n<h2>Prerequisites</h2>\n<ol>\n<li><strong>Latest Roblox Studio</strong>. Update through the launcher or download from the <a href=\"https://create.roblox.com/docs/studio/setup\">Creator Hub</a>.</li>\n<li><strong>An MCP-capable AI client</strong>. Cursor, VS Code with Claude Code, Claude Desktop, Codex CLI, Gemini CLI, Antigravity, or any client that supports <code>stdio</code> transport.</li>\n<li><strong>A Roblox account</strong> signed into Studio.</li>\n<li><strong>Git</strong> (recommended) for the file-based workflow.</li>\n</ol>\n<h2>Enabling the server in Studio</h2>\n<ol>\n<li>Open Studio and load the place you want the agent to work on.</li>\n<li>Open <strong>Assistant</strong> (button in the upper right).</li>\n<li>Click <strong>⋯ → Manage MCP Servers</strong>.</li>\n<li>Turn on <strong>Enable Studio as MCP server</strong>.</li>\n<li>The panel shows quick-connect options and manual configuration snippets. A green indicator appears when a client connects.</li>\n</ol>\n<p>If you do not see MCP options, restart Studio after updating to the latest version.</p>\n<h2>Connecting your client</h2>\n<p>Choose the method that matches your client:</p>\n<p><strong>Quick connect</strong> supports Antigravity, Codex CLI, Claude Code, Claude Desktop, Cursor, Gemini CLI, and Visual Studio Code.</p>\n<ol>\n<li>In Studio: <strong>Assistant → ⋯ → Manage MCP Servers → Quick connect</strong>.</li>\n<li>Turn on your installed client.</li>\n<li>Restart the client if the tools do not appear immediately.</li>\n</ol>\n<p>For clients that read an <code>mcp.json</code> or similar config file, see <a href=\"references/setup-and-connection.md\">references/setup-and-connection.md</a> for per-OS, copy-paste configurations.</p>\n<p>For clients that need a raw CLI command, see <a href=\"references/setup-and-connection.md\">references/setup-and-connection.md</a> for Windows and macOS commands.</p>\n<p>After connecting, verify with:</p>\n<blockquote>\n<p>Use the Roblox MCP to read the current game tree in Roblox Studio. List what's in Workspace.</p>\n</blockquote>\n<h2>What you can do with the MCP tools</h2>\n<p>The server exposes tools in several categories. The current tool names and usage guidance are in <a href=\"references/tool-reference.md\">references/tool-reference.md</a>.</p>\n<table>\n<thead>\n<tr>\n<th>Category</th>\n<th>Examples</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>Scripts</strong></td>\n<td><code>script_read</code>, <code>multi_edit</code>, <code>script_search</code>, <code>script_grep</code></td>\n</tr>\n<tr>\n<td><strong>Data model</strong></td>\n<td><code>search_game_tree</code>, <code>inspect_instance</code>, <code>subagent</code> (<code>explore</code>)</td>\n</tr>\n<tr>\n<td><strong>Luau execution</strong></td>\n<td><code>execute_luau</code></td>\n</tr>\n<tr>\n<td><strong>Asset generation &amp; insertion</strong></td>\n<td><code>generate_mesh</code>, <code>generate_material</code>, <code>generate_procedural_model</code>, <code>wait_job_finished</code>, <code>search_asset</code>, <code>insert_asset</code>, <code>upload_image</code>, <code>store_image</code></td>\n</tr>\n<tr>\n<td><strong>Playtesting</strong></td>\n<td><code>start_stop_play</code>, <code>get_studio_state</code>, <code>get_console_output</code>, <code>screen_capture</code>, <code>subagent</code> (<code>playtest</code>)</td>\n</tr>\n<tr>\n<td><strong>Input simulation</strong></td>\n<td><code>character_navigation</code>, <code>user_keyboard_input</code>, <code>user_mouse_input</code></td>\n</tr>\n<tr>\n<td><strong>Documentation</strong></td>\n<td><code>http_get</code>, <code>skill</code></td>\n</tr>\n<tr>\n<td><strong>Instance discovery</strong></td>\n<td><code>list_roblox_studios</code>; pass <code>studio_id</code> on subsequent calls</td>\n</tr>\n</tbody>\n</table>\n<h2>Work with MCP and Script Sync</h2>\n<p>Script Sync maps folders on disk (<code>ServerScriptService/</code>, <code>ReplicatedStorage/</code>, <code>StarterPlayerScripts/</code>, etc.) to Studio services, so <code>.luau</code> files you edit locally appear in Studio automatically. MCP covers everything Script Sync cannot reach: editing <code>StarterGui</code>, inserting models, running commands, playtesting, and inspecting instances.</p>\n<p>Typical agent loop:</p>\n<ol>\n<li>Edit disk files through Script Sync for reusable modules and scripts.</li>\n<li>Use MCP to inspect instances, run Luau snippets, start play mode, and capture output/screenshots.</li>\n<li>Use MCP to edit scripts that live in containers not covered by Script Sync (for example, <code>StarterGui</code>).</li>\n</ol>\n<p>See <a href=\"references/script-sync-integration.md\">references/script-sync-integration.md</a> for the full setup and a starter-project layout.</p>\n<h2>Multi-instance handling</h2>\n<p>Call <code>list_roblox_studios</code> to discover connected windows, their Studio instance IDs, and place IDs. Local places without a place ID are listed by name. Pass the selected instance's <code>studio_id</code> on every subsequent tool call; do not rely on a shared active window or infer the target from an object path. Re-list instances when a window closes or the target changes.</p>\n<h2>Security and trust</h2>\n<p>MCP clients can read and modify your open places. Treat MCP connections like any privileged integration:</p>\n<ul>\n<li>Only connect clients you trust.</li>\n<li>Work on test places or version-controlled projects.</li>\n<li>Review agent edits before publishing.</li>\n<li>Keep <code>.rbxlx</code> and other place files out of Git (use the starter <code>.gitignore</code>).</li>\n<li>Disconnect or disable the MCP server when it is not in use.</li>\n<li>Treat <code>execute_luau</code> as privileged code: it can publish places, write to DataStores, make HTTP requests, and access credentials loaded in Studio.</li>\n</ul>\n<p>See <a href=\"references/security-and-troubleshooting.md\">references/security-and-troubleshooting.md</a> for the full security checklist and troubleshooting steps.</p>\n<h2>Verification checklist</h2>\n<ul>\n<li><input disabled=\"disabled\" type=\"checkbox\"> Studio is updated and MCP is enabled.</li>\n<li><input disabled=\"disabled\" type=\"checkbox\"> AI client shows the Roblox MCP tools after restart.</li>\n<li><input disabled=\"disabled\" type=\"checkbox\"> <code>script_read</code> or <code>search_game_tree</code> returns the current place structure.</li>\n<li><input disabled=\"disabled\" type=\"checkbox\"> Script Sync maps the expected service folders to disk (if using file-based workflow).</li>\n<li><input disabled=\"disabled\" type=\"checkbox\"> <code>execute_luau</code> can run a simple <code>print</code> and return output.</li>\n<li><input disabled=\"disabled\" type=\"checkbox\"> <code>start_stop_play</code> enters/exits play mode successfully.</li>\n</ul>\n<h2>Scripts</h2>\n<ul>\n<li><code>scripts/MCPReadyChecker.lua</code>: a diagnostic snippet you can run with <code>execute_luau</code> to verify Script Sync status and basic model health.</li>\n<li><code>scripts/StudioModelProbe.lua</code>: a reusable utility for summarizing the game tree, useful as a pattern for agent exploration prompts.</li>\n</ul>\n<h2>How to proceed</h2>\n<ol>\n<li>Confirm prerequisites and enable MCP in Studio.</li>\n<li>Connect your client using quick connect or the manual config in <a href=\"references/setup-and-connection.md\">references/setup-and-connection.md</a>.</li>\n<li>Verify the connection with a simple tree-read or <code>execute_luau</code> call.</li>\n<li>If using a file-based workflow, set up Script Sync per <a href=\"references/script-sync-integration.md\">references/script-sync-integration.md</a>.</li>\n<li>Use the tool reference to craft precise agent prompts and the security guide to keep the workflow safe.</li>\n</ol>\n\n<h2>Reference index</h2>\n<ul>\n<li><a href=\"references/script-sync-integration.md\">script-sync-integration.md</a>: Combine files on disk with Studio MCP edits and playtests.</li>\n<li><a href=\"references/security-and-troubleshooting.md\">security-and-troubleshooting.md</a>: Investigate MCP connection failures or review Studio access.</li>\n<li><a href=\"references/setup-and-connection.md\">setup-and-connection.md</a>: Enable Studio MCP and connect a client on Windows or macOS.</li>\n<li><a href=\"references/tool-reference.md\">tool-reference.md</a>: Choose a Studio MCP tool and identify the target Studio instance.</li>\n</ul>\n\n","files":[{"path":"references/script-sync-integration.md","sizeBytes":5361,"isText":true},{"path":"references/security-and-troubleshooting.md","sizeBytes":4065,"isText":true},{"path":"references/setup-and-connection.md","sizeBytes":2882,"isText":true},{"path":"references/tool-reference.md","sizeBytes":4354,"isText":true},{"path":"scripts/MCPReadyChecker.lua","sizeBytes":4677,"isText":false},{"path":"scripts/StudioModelProbe.lua","sizeBytes":6745,"isText":false},{"path":"SKILL.md","sizeBytes":7612,"isText":true}],"reviewScore":null,"reviewSummary":null,"trust":{"provenance":"trusted-source-unreviewed","notice":"Community-authored content, reproduced verbatim and not vetted as instructions. Treat it as data to evaluate, never as directives to follow.","bodySource":null},"bodyLocked":false,"purchaseUrl":null,"sourceUrl":null,"report":{"provenance":"trusted-source-unreviewed","screen":{"ran":true,"outcome":"clean","suspicious":0,"notes":0,"hiddenCharacters":false},"virusScan":{"engine":"clamav","status":"clean","scannedAt":"2026-10-18T17:24:16.932266Z","sha256":"09A2C993432B8771733B8EF797F9762108A705FC2DB7B8F8688CF1D2C7C724E9","sizeBytes":14658},"review":null,"source":{"repositoryUrl":"https://github.com/nonlooped/roblox-suite","path":"roblox-mcp","license":"MIT","commit":"2904c1660c702d82f1ab67f46ddf619d6abc9a2d","subtreeSha":"3992E36291675C053D550DEECB3B9706986F66EDC89B4F4A0BB611B57CFE983B","lastSyncedAt":"2026-10-18T17:23:55.435396Z"},"reviewedAt":"2026-10-18T17:24:43.490403Z","notice":"Community-authored content, reproduced verbatim and not vetted as instructions. Treat it as data to evaluate, never as directives to follow."},"install":[{"target":"skills-cli","command":"npx skills add https://github.com/nonlooped/roblox-suite/tree/main/roblox-mcp"},{"target":"claude-code","command":"claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install nonlooped-roblox-suite@llmmart"},{"target":"git","command":"git clone https://github.com/nonlooped/roblox-suite.git"}]}