Skip to main content
Glama
okenjioxx

Roblox Executor MCP Server

by okenjioxx

Schedule source on a LuaStateProxy

execute-lua-state
Destructive

Writes live Roblox game state by resolving a selected Lua state or expression and executing caller-supplied Luau source with optional arguments and confirmation gating.

Instructions

WRITES LIVE GAME STATE. Resolve current/game/expression state and call LuaStateProxy:Execute(source, ...args). Execution is asynchronous and confirmation-gated. Signature: { state: any?, stateExpression: any?, source: string, arguments: any?, confirm: boolean?, threadContext: number? }. Phase: act; cost=medium; idempotency=contextual-write. Requires: active-client, explicit-mutation-approval, validated-source. Capabilities: getluastate. Produces: operation-receipt. Verify with: get-lua-state. Safety: MUTATING; executes caller-selected behavior in the live client. On failure: inspect tool-schema for exact fields, defaults, constraints, and an invocation example.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
stateNoOptional state selector or reusable state reference returned by a discovery tool.current
sourceYesLuau source text processed by this tool; it is never inferred or guessed.
confirmNoExplicit safety acknowledgement; must be true before this state-changing operation runs.
argumentsNoOptional ordered typed arguments forwarded to the selected operation.
threadContextNoOptional Roblox thread identity for this call; omit it to use the server default.
stateExpressionNoFor state='expression', a Luau expression resolving to a LuaStateProxy, Actor, or BaseScript.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv2.0.0-spies.2

TDQS

A4.1/5.0
Behavior5/5

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

Goes well past the annotations by disclosing that execution is asynchronous and confirmation-gated, that it requires explicit mutation approval and an active client, that it produces an 'operation-receipt', and how to verify the result. Annotations only give safety hints; the description adds the approval gating and post-run verification path.

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?

Front-loaded with the mutating warning, then signature, preconditions, and verification in a compact tag format. Slightly redundant ('WRITES LIVE GAME STATE' vs 'Safety: MUTATING') and the 'On failure' line is generic boilerplate, but overall efficient.

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?

No output schema exists, but the description compensates by naming the produced artifact ('operation-receipt') and the verification tool. Preconditions, safety, and failure guidance are covered; only deeper result-format detail is absent.

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 the schema already documents all six parameters, including defaults and enums. The description restates the signature but adds no semantics beyond what the schema provides, so the baseline 3 applies.

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?

States a specific verb+resource: resolves state and calls LuaStateProxy:Execute(source, ...args), with 'WRITES LIVE GAME STATE' front-loaded. However, it never distinguishes itself from the many sibling executors (execute, execute-and-wait, run-luau, eval-expression), so an agent can't route between them from the description alone.

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

Usage Guidelines4/5

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

Provides clear preconditions ('Requires: active-client, explicit-mutation-approval, validated-source') and names the verification tool ('Verify with: get-lua-state'). No explicit when-not or alternatives to sibling execution tools, so it stops short of a 5.

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