Roblox Studio MCP Server

Roblox Studio MCP Server

Bridges AI assistants to Roblox Studio with 51 tools for exploring, editing, and automating game development, all locally via HTTP polling.

Category
Visit Server

README

Roblox Studio MCP Server

Bridge AI assistants to Roblox Studio — 51 tools for exploring, editing, and automating your game.

Works with Claude Code, Claude Desktop, Cursor, Gemini, Codex, and any MCP-compatible client.


What It Does

An MCP (Model Context Protocol) server that gives AI full access to your Roblox Studio session. Explore game hierarchies, read and edit scripts, manipulate properties, create instances, build terrain, run playtests — all locally via HTTP polling. No external servers, no data collection.

Quick Start

1. Install the Studio Plugin

Option A — Creator Store (easiest): Install from Roblox Creator Store

Option B — Manual: Download MCPPlugin.rbxmx from Releases and drop it into your Plugins folder:

  • Windows: %LOCALAPPDATA%/Roblox/Plugins/
  • macOS: ~/Documents/Roblox/Plugins/

2. Enable HTTP Requests

Game Settings > Security > Allow HTTP Requests = ON

3. Connect Your AI

Claude Code:

claude mcp add robloxstudio -- npx -y robloxstudio-mcp@latest

Codex:

codex mcp add robloxstudio -- npx -y robloxstudio-mcp@latest

Gemini:

gemini mcp add robloxstudio npx --trust -- -y robloxstudio-mcp@latest

<details> <summary>Claude Desktop, Cursor, Windsurf, or other MCP clients</summary>

Add to your MCP config file:

{
  "mcpServers": {
    "robloxstudio-mcp": {
      "command": "npx",
      "args": ["-y", "robloxstudio-mcp@latest"]
    }
  }
}

Windows users — if you encounter issues, wrap with cmd:

{
  "mcpServers": {
    "robloxstudio-mcp": {
      "command": "cmd",
      "args": ["/c", "npx", "-y", "robloxstudio-mcp@latest"]
    }
  }
}

</details>

Plugin shows "Connected" when ready.


51 Tools

Exploration & Queries (10)

Tool Description
get_file_tree Browse instance hierarchy as a tree
search_files Search instances by name, class, or script content
get_place_info Get place ID, name, and game settings
get_services List available Roblox services
search_objects Find instances by name, class, or property
search_by_property Find instances with specific property values
get_instance_properties Get all properties of an instance
get_instance_children List children with class types
get_class_info Get available properties/methods for a class
get_project_structure Full hierarchy with configurable depth

Instance Management (8)

Tool Description
create_object Create a new instance
create_object_with_properties Create instance with initial properties
mass_create_objects Bulk create instances
mass_create_objects_with_properties Bulk create with properties
delete_object Delete an instance
smart_duplicate Duplicate with naming, positioning, property variations
mass_duplicate Multiple duplication operations at once
reparent_instance Move instance to a new parent (no delete/recreate)

Cloning & Assets (2)

Tool Description
clone_instance Deep copy an instance to a different parent
insert_asset Insert a Roblox asset by ID (models, meshes, images)

Properties (5)

Tool Description
set_property Set any property on an instance
mass_set_property Set same property on multiple instances
mass_get_property Read same property from multiple instances
set_calculated_property Set properties via math formulas
set_relative_property Modify properties relative to current values

Scripts (6)

Tool Description
get_script_source Read script source (supports line ranges)
set_script_source Replace entire script source
edit_script_lines Replace specific lines
insert_script_lines Insert lines at a position
delete_script_lines Delete specific lines
search_replace_scripts Find/replace text across all scripts

UI Building (1)

Tool Description
create_ui Batch-create UI elements with proper UDim2 sizing

Terrain (4)

Tool Description
fill_terrain Fill rectangular region with terrain material
fill_terrain_sphere Fill spherical region with material
clear_terrain Clear terrain (region or all)
get_terrain_materials List available terrain materials

Attributes & Tags (8)

Tool Description
get_attribute / set_attribute Read/write instance attributes
get_attributes Get all attributes on an instance
delete_attribute Remove an attribute
get_tags / add_tag / remove_tag Manage CollectionService tags
get_tagged Find all instances with a specific tag

Undo/Redo (2)

Tool Description
undo Undo last action (Ctrl+Z)
redo Redo last undone action (Ctrl+Y)

Code Execution & Playtest (5)

Tool Description
execute_luau Run arbitrary Luau code in Studio
get_selection Get currently selected objects
start_playtest Start play/run session with log capture
stop_playtest Stop session and return output
get_playtest_output Poll logs without stopping

Architecture

AI Assistant <--stdio--> MCP Server (Node.js)
                            <--HTTP--> Bridge (Express on port 58741)
                                          <--polling--> Studio Plugin (roblox-ts)
                                                           <--API--> Roblox Studio
  • Stateless HTTP bridge with UUID-tracked requests
  • 500ms polling — reliable, no WebSocket complexity
  • 30-second timeouts per request
  • ChangeHistoryService integration — every mutation creates an undo waypoint
  • All local — nothing leaves your machine

Development

npm install                  # Install dependencies
npm run build:all            # Build server + plugin
npm run dev                  # Dev mode with tsx
npm test                     # Run tests
npm run build:plugin         # Rebuild Studio plugin only

Troubleshooting

Issue Fix
Plugin missing from toolbar Verify .rbxmx is in Plugins folder, restart Studio
HTTP 403 errors Enable "Allow HTTP Requests" in Game Settings > Security
Plugin shows "Disconnected" Normal until MCP server is running — start your AI client
Connection timeout Check firewall isn't blocking localhost:58741

License

MIT

Report Issues

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured