Skip to main content
Glama
okenjioxx

Roblox Executor MCP Server

by okenjioxx

Get the content of a script in the Roblox Game Client

get-script-content
Read-onlyIdempotent

Retrieve decompiled Roblox script source by path or client-side getter code, optionally limiting results to a startLine/endLine range for large scripts.

Instructions

Get decompiled source for a Roblox script by path or getter code. Use startLine/endLine for a focused range when the full script is large. Signature: { scriptGetterSource: string?, scriptPath: string?, startLine: number?, endLine: number?, threadContext: number? }. Phase: orchestrate; cost=medium; idempotency=read-only. Requires: active-client, resolved-target. Capabilities: decompile. Produces: structured-observation. Safety: read-only. On failure: inspect tool-schema for exact fields, defaults, constraints, and an invocation example.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
endLineNoOptional end line number (1-based, inclusive) to return only a range of lines. Defaults to end of script if startLine is set but endLine is omitted.
startLineNoOptional start line number (1-based) to return only a range of lines from the decompiled script. If omitted, returns the full script.
scriptPathNoThe path to the script to get the content of (e.g. 'game.Workspace.MyScript').
threadContextNoOptional Roblox thread identity for this call; omit it to use the server default.
scriptGetterSourceNoThe code that fetches the script object from the game (should return a script object, and MUST be client-side only, will not work on Scripts with RunContext set to Server)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv2.0.0-spies.2

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description still adds non-annotation context: cost=medium, produces structured-observation, and the active-client/resolved-target prerequisites. It also points at tool-schema for constraints on failure, which is a helpful escape hatch.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The purpose is front-loaded and the metadata block is compact and scannable. It loses a little to redundancy, since 'idempotency=read-only' and 'Safety: read-only' echo the readOnlyHint/idempotentHint annotations already supplied.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description still covers prerequisites, cost, output category, range usage, and a fallback path to tool-schema. For a read-only decompilation tool whose parameters are fully documented in the schema, this is close to complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all five parameters are already documented in the schema, including the client-side-only restriction on scriptGetterSource. The description's inline signature restates optionality but adds nothing about format beyond what the schema provides, so it sits at the baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The opening sentence gives a specific verb and resource: 'Get decompiled source for a Roblox script by path or getter code.' It also distinguishes the two lookup modes (path vs getter code), which is useful. However, it never names or contrasts with nearby siblings like get-module-source or get-script-bytecode, so an agent must infer the boundary.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives one concrete usage rule ('Use startLine/endLine for a focused range when the full script is large') and lists prerequisites ('Requires: active-client, resolved-target'). It does not say when to prefer this over get-module-source, get-script-bytecode, or semantic-search-scripts, so alternative selection is left to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools