Roblox Executor MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| set-active-clientA | Route future Roblox tool calls to the specified connected client. Use list-clients first if you need available clientIds. |
| list-clientsA | List connected Roblox game clients with clientId and session metadata. Use before set-active-client when multiple clients are connected or the target client is unknown. |
| executeA | Execute Luau in the active Roblox client without returning output. Use get-data-by-code instead when you need returned values. |
| execute-fileA | Execute a local .luau or .lua file in the active Roblox client without returning output. Use get-data-by-code instead when you need returned values. |
| get-script-contentA | Get decompiled source for a Roblox script by path, script proxy, or getter code. Use startLine/endLine for a focused range when the full script is large. |
| get-data-by-codeB | Execute Luau in the active Roblox client and return serialized raw Lua values. The code must return values; do not manually JSON-encode them. |
| get-console-outputC | Read recent Roblox developer console logs from the active client. Use limit and logsOrder to control volume and ordering. |
| search-instancesB | Search Roblox instances with QueryDescendants selector syntax. Use for class, name, tag, property, and attribute queries against a chosen root. |
| script-grepA | Search decompiled Roblox scripts with JavaScript regex or literal string matching. Use for exact identifiers or code patterns; use semantic-search-scripts when behavior is known but names are not. |
| semantic-search-scriptsA | Find decompiled Roblox scripts by behavior using semantic embeddings. Use when exact identifiers are unknown; use script-grep for exact text or regex. |
| get-game-infoA | Get current Roblox place and universe metadata such as PlaceId, GameId, and PlaceVersion. |
| get-descendants-treeA | Get a depth-limited hierarchy of descendants under a Roblox instance. Use for broad structure exploration; use search-instances for selector-based filtering. |
| ensure-remote-spyA | Load or verify the Cobalt remote spy in the active Roblox client. Call before reading, clearing, blocking, or ignoring remote spy logs. |
| get-remote-spy-logsA | List captured Cobalt remote and bindable call logs. Requires ensure-remote-spy first; supports direction and name filters to narrow noisy logs. |
| clear-remote-spy-logsA | Clear all captured Cobalt remote spy logs. Requires ensure-remote-spy first. |
| block-remoteA | Block or unblock a Roblox remote by exact name and direction. Requires ensure-remote-spy first; use get-remote-spy-logs to discover candidates. |
| ignore-remoteA | Ignore or unignore logging for a Roblox remote by exact name and direction. Requires ensure-remote-spy first; ignored remotes still fire. |
| type-text-boxA | Enter text into a Roblox TextBox by path. Can simulate keystrokes or set Text directly based on useKeyPress. |
| click-buttonA | Click a Roblox TextButton or ImageButton by firing its GUI signals. Use when direct UI activation is needed inside the active client. |
| screenshot-windowA | Capture an actual OS screenshot of a Roblox window via Windows APIs. Provide pid when multiple windows are open; secondary servers relay capture to the primary host. |
| list-roblox-windowsA | List visible Roblox OS windows with PIDs. Use before screenshot-window when multiple Roblox windows may be open. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 21 tools
Each tool has a clearly distinct purpose, from execution (execute, execute-file, get-data-by-code) to remote spy management (ensure-remote-spy, block-remote, ignore-remote) to UI interaction (click-button, type-text-box) and exploration (get-descendants-tree, search-instances, script-grep, semantic-search-scripts). No two tools overlap in functionality.
All tools follow a consistent verb_noun pattern in snake_case, such as block-remote, clear-remote-spy-logs, get-game-info, set-active-client. The naming is predictable and easy to understand.
With 21 tools, the server covers a broad but well-scoped set of operations for Roblox client automation, including execution, remote spy, UI interaction, and exploration. The count feels appropriate and not overwhelming.
The tool surface provides comprehensive coverage for the server's purpose: execution (with and without return), remote spy lifecycle (ensure, read, clear, block, ignore), UI manipulation, script analysis, and instance exploration. There are no obvious gaps that would hinder common workflows.