- Home
- MCP servers
- Vibe Blocks
Vibe Blocks
- python
66
GitHub Stars
python
Language
6 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Connect Roblox Studio to AI coding editors via the Model Context Protocol (MCP) to enable AI-assisted game development directly inside Studio. This setup runs a local Python MCP server and a Lua Companion Plugin that communicates with Studio, exposing Studio actions as tools your AI agent can invoke.
How to use
You run the local MCP server and install the companion plugin in Roblox Studio. Then connect your MCP client (such as Cursor or Windsurf) to the server’s SSE endpoint. With the connection active, you can address the AI agent by mentioning tools and actions like creating parts, editing scripts, inspecting properties, or running Luau code inside Studio. The agent returns results and Studio logs, enabling a conversational, interactive workflow for building and debugging your game.
Typical workflows you can perform include creating and positioning parts, cloning or moving objects, applying property changes to multiple children, running Luau snippets inside Studio, and retrieving Studio logs. If you enable Roblox Open Cloud features, you can also execute Luau in the cloud, manage DataStores, upload assets, publish places, and more.
How to install
# Step 1: Prerequisites
python --version
uv --version
roblox-studio --version
# Step 2: Prepare environment (optional for cloud features)
# Copy example env if you plan to use Cloud features
cp .env.example .env
# Edit the .env file to add your API key, universe, and place IDs as needed
# Step 3: Install the MCP server and dependencies
uv pip sync pyproject.toml
# Step 4: Install the Companion Plugin in Roblox Studio
# Build the plugin (Rojo is recommended)
cd roblox_mcp_plugin
rojo build default.project.json --output VibeBlocksMCP_Companion.rbxm
# Move the generated file into your Roblox Studio Plugins folder
# Step 5: Run the Python MCP server
cd /path/to/project/root
chmod +x server.sh
./server.sh
# The server starts and listens on http://localhost:8000 and SSE at http://localhost:8000/sse
Additional sections
Configuration and runtime notes:
- The server runs as a local FastAPI service and exposes actions to the MCP client via Server-Sent Events. The companion plugin inside Studio polls the local server and executes commands in the live Studio session, sending results back to the server.
Cloud features (optional) require a Roblox API key and appropriate permissions. If you enable them in your environment, the server can run Luau in the cloud, manage DataStores, upload assets, and publish places.
If you need to stop or restart, stop the server process and relaunch it with the steps above. The plugin will automatically reconnect when Studio is running and the server is reachable.
Available tools
get_property
Retrieves the value of a specific property from an object in Studio.
list_children
Retrieves direct children of an object in Studio.
find_instances
Finds instances within a defined root by class name or text in Studio.
create_instance
Creates a new instance (Part, Model, Script, etc.) in Studio.
delete_instance
Deletes an object from the Studio scene.
set_property
Sets a property's value on a Studio object, using a JSON string for the value.
set_primary_part
Sets the PrimaryPart property of a Model.
move_instance
Moves an object to a new position in Studio.
clone_instance
Clones an existing object in Studio.
create_script
Creates a new Script or LocalScript with provided code in Studio.
edit_script
Edits the source code of an existing Script or LocalScript in Studio.
delete_script
Deletes an existing Script or LocalScript in Studio.
set_environment
Sets properties on environment services (Lighting or Terrain) in Studio.
spawn_npc
Spawns an NPC by inserting a model from an asset or cloning a template.
play_animation
Loads and plays an animation on a Humanoid or AnimationController.
execute_luau_in_studio
Executes arbitrary Luau code in the LIVE Studio session and returns output and errors.
modify_children
Finds and updates properties on direct children of a parent based on name/class filters.
get_studio_logs
Retrieves recent Studio Output logs captured by the plugin.
execute_luau_in_cloud
Executes Luau code in the Roblox Cloud environment (cloud Luau).
list_datastores_in_cloud
Lists standard datastores via the Cloud API.
get_datastore_value_in_cloud
Gets a datastore value via the Cloud API.
set_datastore_value_in_cloud
Sets a datastore value via the Cloud API.
delete_datastore_value_in_cloud
Deletes a datastore entry via the Cloud API.
upload_asset_via_cloud
Uploads a local file as a Roblox asset via the Cloud API.
publish_place_via_cloud
Publishes the current place via the Cloud API.
get_asset_details_via_cloud
Retrieves details about an asset via the Cloud API.
list_user_assets_via_cloud
Lists assets owned by the authenticated user via the Cloud API.
send_chat_via_cloud
Sends a chat message to in-game chat via the Cloud API using execute_luau.
teleport_player_via_cloud
Teleports a player via the Cloud API using execute_luau.
queue_studio_command
Lower-level tool to queue a single raw command for the Studio plugin.
queue_studio_command_batch
Lower-level tool to queue a batch of raw commands for the Studio plugin.