Raven Roblox 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
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| statusA | Check local Raven MCP health and active Roblox client without contacting the game. |
| list_clientsA | List every Roblox client connected to the private local bridge. |
| set_active_clientA | Route future tool calls to a specific connected Roblox client. |
| get_game_infoA | Read current place, universe, server, creator, and local-player metadata. |
| performance_modeC | Read or set the cooperative client work budget. Smooth is the default and minimizes frame hitches. |
| console_streamA | Control live console forwarding. Errors mode keeps warnings/errors only; all can add overhead in noisy games. |
| smart_snapshotA | Capture game info, player state, nearby instances, visible UI, and recent console entries in one client round trip. |
| get_player_stateB | Read character, humanoid, position, velocity, camera, backpack tools, and selected attributes. |
| query_instancesA | Fast bounded instance search by root, class, name substring, tags, attributes, depth, and distance from the player. |
| inspect_instanceA | Inspect one instance with safe common properties, attributes, tags, children, and optional properties. |
| get_treeA | Return a depth- and breadth-bounded hierarchy below any Roblox instance. |
| dump_visible_uiA | Read a flat, bounded tree of visible PlayerGui/gethui/CoreGui elements including text, geometry, and interaction state. |
| click_uiB | Activate a visible GuiButton by exact path, exact text, or text substring. |
| get_consoleA | Read buffered Roblox LogService messages with sequence-based incremental polling. |
| execute_luauA | Execute authorized Luau in the selected client, serialize returned values safely, and report compile/runtime timings. |
| batchA | Run up to 50 supported client operations in one round trip, sequentially or concurrently, with optional stop-on-error. |
| wait_for_instanceA | Poll inside the client until an instance path appears or disappears, avoiding repeated MCP calls. |
| teleportB | Move the local character to coordinates or an instance path with an optional offset. |
| interactA | Trigger an authorized ProximityPrompt, ClickDetector, or TouchTransmitter by path. |
| benchmarkB | Measure local bridge latency and bounded client-side instance traversal throughput. |
| list_roblox_windowsA | List visible Roblox OS windows available for private local screenshot capture. |
| screenshot_windowA | Capture a real PNG of a visible Roblox window through local Windows APIs and return it directly as MCP image content. |
| dashboard_infoA | Return the private local dashboard URL and its current availability. |
| recording_controlB | Start, stop, or clear the bounded in-memory RPC record/replay trace. |
| get_recordingB | Read bounded recorded calls including parameters, outcome, timing, and client routing. |
| replay_recordingC | Replay up to 100 selected recorded RPC calls against their original or a selected client. |
| index_scriptsA | Build an in-memory, local-only script/module index with stable path, bytecode hash/size when available, and no external decompiler. |
| search_scriptsA | Search the private in-memory script index by path/name/class/hash. |
| analyze_scriptA | Analyze one indexed script locally using closure debug info, constants and nested prototypes when executor introspection is available. |
| disassemble_scriptB | Read one script's serialized Luau bytecode locally, decode instructions, generate register-level pseudo code, build a control-flow graph, and extract behavioral evidence. |
| explore_closureB | Recursively inspect runtime closure metadata, constants, nested prototypes, and bounded upvalue values. |
| build_script_graphA | Infer a cross-script dependency graph from exact runtime Instance constants and unique string evidence, with confidence on every edge. |
| remote_monitorA | Start, stop, clear, or inspect a bounded local monitor for FireServer and InvokeServer calls. |
| get_remote_eventsC | Read locally captured remote calls with incremental sequence filtering. |
| infer_remote_schemasA | Cluster captured remote calls into structural argument signatures with frequency and sequence ranges. |
| capture_re_snapshotB | Capture an in-memory versioned snapshot of script hashes, inferred remote schemas, and selected instance properties. |
| list_re_snapshotsA | List the up to 20 reverse-engineering snapshots retained in client memory. |
| diff_re_snapshotsA | Diff script versions, remote schemas, and selected runtime state between two in-memory snapshots. |
| replay_remote_eventA | Replay one locally captured remote call by sequence on the same live client. |
| profile_runtimeB | Sample FPS/frame time, instance class counts, Lua/engine memory, network ping, physics and client metadata locally. |
| set_propertiesA | Set up to 100 instance properties with typed values; automatically rolls back earlier changes if any write fails. |
| wait_for_propertyB | Wait client-side until a property equals a serialized expected value. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| live-status | Current local bridge and connected-client status |
TDQS
Scored across 42 tools
Most tools have clearly distinct purposes (e.g., click_ui vs interact vs teleport), but there is some overlap in state-reading utilities like get_tree, dump_visible_ui, query_instances, and smart_snapshot. Script analysis tools (analyze_script, disassemble_script, explore_closure) are specialized but could confuse an agent unfamiliar with their boundaries.
The majority follow a verb_noun pattern (get_tree, execute_luau, set_properties), but a few outliers like 'batch', 'status', and 'performance_mode' break the convention. The overall style is consistent enough to be predictable, with only minor deviations.
With 42 tools, this is well above the 25-tool threshold for 'heavy' servers. While the domain is broad, the count is excessive and risks overwhelming agents; a more focused set of 20-25 tools would better serve the purpose.
The tool surface is remarkably comprehensive, covering UI interaction, Lua execution, script analysis, remote event monitoring, profiling, screenshots, and client management. Minor gaps exist (e.g., no dedicated local player list tool) but core workflows are fully supported.