Skip to main content
Glama

dex-mcp

Debug and inspection tooling for Roblox projects, exposed as an MCP server so an AI agent can explore the instance tree, read/write properties, call remotes, and run Luau in a Roblox client driven by an executor.

Repository: https://github.com/972jesko/dex-mcp

Intended use: debugging, inspecting, and learning from your own Roblox projects locally. See GUIDELINES.md.

Install

npm install
npm run build

Run

node dist/index.js

On startup the server prints (to stderr) the local WebSocket URL and a shared token. The Luau bridge connects to that URL. Configure your MCP client to launch node /absolute/path/to/dist/index.js over stdio.

Configuration (environment variables)

Variable

Default

Purpose

DEX_MCP_PORT

8392

WebSocket hub port

DEX_MCP_TOKEN

auto-generated

Shared token required by the bridge

DEX_MCP_ENABLE_WRITE

true

Enable set_property

DEX_MCP_ENABLE_REMOTES

true

Enable remote calling/spying

DEX_MCP_ENABLE_RUN_LUAU

true

Enable run_luau

DEX_MCP_RPC_TIMEOUT_MS

15000

Per-request timeout

The bridge

The Luau bridge that runs inside the executor is documented in its own plan/spec. It connects to the printed WebSocket URL and answers the RPC protocol in docs/superpowers/specs/2026-06-07-dex-mcp-design.md §4.

Available Tools

14 tools
dex_statusA

Report whether the Roblox bridge is connected and basic game info (name, placeId, client version, capabilities).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.8/5.0
Behavior2/5

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

No annotations are provided, and the description does not state whether the tool is read-only, has side effects, or requires authentication. For a status check, it likely has no side effects, but this is not disclosed.

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

Conciseness5/5

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

A single, front-loaded sentence that efficiently conveys the tool's purpose and output. No unnecessary information.

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?

Given no parameters and no output schema, the description provides sufficient context for a simple status check. However, it could specify the return format or structure of the basic game info.

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

Parameters4/5

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

The tool has zero parameters, and the description explains what the tool returns, adding meaning beyond the empty schema. Baseline 4 is appropriate as per guidelines.

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

Purpose5/5

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

The description clearly states the tool reports bridge connection status and lists specific game info fields (name, placeId, client version, capabilities). This is distinct from sibling tools like fire_remote or get_properties.

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?

The description implies usage for checking bridge connectivity, but lacks explicit guidance on when to use vs alternatives or when not to use. Contextual signal from sibling tools doesn't provide differentiation.

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

fire_remoteC

Fire a RemoteEvent (FireServer) with the given arguments.

ParametersJSON Schema
NameRequiredDescriptionDefault
refYes
argsYes

TDQS

C2.5/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. It only states the basic action without disclosing side effects, error conditions, permission requirements, or what happens with invalid arguments. The description is too minimal to inform the agent about behavioral implications.

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

Conciseness2/5

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

The description is a single short sentence, but it under-specifies important details. It is concise but at the expense of clarity and completeness. The description does not earn its place; it could be expanded to provide value without becoming verbose.

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

Completeness1/5

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

With no output schema, no annotations, and minimal description, the tool definition is very incomplete. It does not explain how the 'ref' parameter is used (e.g., instance reference), the acceptable argument types (despite a detailed schema), or what the tool returns. The agent lacks critical information to use the tool correctly.

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

Parameters1/5

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

Schema description coverage is 0%, meaning the description does not explain the parameters. The phrase 'with the given arguments' adds no meaning beyond the schema. The 'ref' parameter (integer) and 'args' array structure are not described, leaving the agent to infer from the schema alone.

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

Purpose5/5

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

The description clearly states the verb 'fire' and the resource 'RemoteEvent', and mentions 'FireServer' which distinguishes it from sibling tools like 'invoke_remote' (likely for RemoteFunctions) and remote_spy_* (spying). The purpose is unambiguous.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. There is no mention of prerequisites, limitations, or context for use. The presence of sibling tools like 'invoke_remote' suggests a need for differentiation, but the description fails to provide it.

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

get_by_pathA

Resolve a dotted instance path (e.g. game.Workspace.Part) to a node with a ref.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYes

TDQS

A3.8/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. It states the tool resolves to a node with a ref but does not disclose error handling (e.g., invalid path), whether it is read-only, or any side effects. Minimal behavioral context is given.

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

Conciseness5/5

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

The description is a single concise sentence that includes a helpful example. Every word earns its place, and it is front-loaded with the action and resource.

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?

Given the tool's simplicity (1 parameter, no output schema, no annotations), the description covers the core purpose and parameter format. However, it omits details on what happens if the path is invalid or what the 'ref' entails, leaving minor gaps. It is largely complete for basic usage.

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

Parameters4/5

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

The input schema has one required parameter 'path' with 0% description coverage, so the description must add meaning. It provides an example format ('game.Workspace.Part'), clarifying the expected dotted path syntax, which adds significant semantic value beyond the raw schema.

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

Purpose5/5

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

The description clearly states the tool resolves a dotted instance path (e.g., game.Workspace.Part) to a node with a ref. The verb 'resolve' and the specific example make the purpose unambiguous. It is distinct from siblings like get_children or get_root.

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?

The description implies usage when one has a dotted path to resolve, but it does not provide explicit guidance on when to use this tool versus alternatives like get_root or search. No exclusions or alternative tools are mentioned.

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

get_childrenC

List the direct children of an instance by ref. Optionally filter by className.

ParametersJSON Schema
NameRequiredDescriptionDefault
refYes
classFilterNo

TDQS

C2.9/5.0
Behavior2/5

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

No annotations provided, and description does not disclose behavioral traits such as ordering, pagination, error behavior for invalid ref, or performance implications. Minimal behavioral context for a list operation.

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

Conciseness3/5

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

Description is a single sentence, but under-specified for a 2-parameter tool. Concise in length, but not optimally informative.

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

Completeness2/5

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

Given no output schema, no annotations, and 2 parameters, the description leaves out return format, pagination, error handling, and behavior on missing ref. Incomplete for effective invocation.

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

Parameters2/5

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

With 0% schema description coverage, the description must compensate but adds little: 'by ref' is vague for an integer parameter, and 'filter by className' doesn't specify exact matching or format. Does not clarify the purpose of each parameter beyond what the schema names imply.

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

Purpose5/5

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

Description clearly states verb 'List', resource 'direct children of an instance', and optional filtering by className. Distinct from sibling tools which handle other operations like getting properties or searching.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like search or get_by_path. No when-not-to-use or prerequisite information provided.

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

get_propertiesA

Read the properties of an instance by ref. Property names come from the cached Roblox API dump when available.

ParametersJSON Schema
NameRequiredDescriptionDefault
refYes

TDQS

A3.8/5.0
Behavior2/5

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

No annotations are provided, so the description must fully disclose behavior. It states the read operation and caching source, but lacks details on side effects, authorization, rate limits, or error handling for invalid refs.

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

Conciseness5/5

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

The description is a single sentence that efficiently communicates the action and key context with no extraneous words.

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?

For a simple read tool with one parameter and no output schema, the description covers core functionality and data source. Lacks explicit mention of return format but is otherwise sufficient.

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

Parameters4/5

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

With 0% schema description coverage, the description adds meaning to the 'ref' parameter by explaining it identifies an instance and that property names come from a cached dump. This compensates for the bare schema.

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

Purpose5/5

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

The description clearly states the verb 'Read' and the resource 'properties of an instance by ref', distinguishing it from sibling tools like set_property (write) and get_children (different resource). It also mentions the cached Roblox API dump for context.

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?

The description implies usage by specifying 'by ref' but does not explicitly state when to use this tool over alternatives like get_by_path or get_children, nor does it provide exclusions or prerequisites.

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

get_rootA

Get the root instance (game, ref 0) and its top-level services.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.8/5.0
Behavior3/5

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

With no annotations, the description must carry full behavioral transparency. It discloses the operation type (read) and the returned data (root and services) but omits potential side effects, error conditions, or authorization requirements.

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

Conciseness5/5

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

A single sentence with no unnecessary words. Front-loaded and 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?

Given no output schema, the description explains the return value (root and top-level services). It could be slightly more explicit about the structure, but it suffices for a simple getter.

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

Parameters4/5

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

The input schema has zero parameters, so the description does not need to explain parameters. The baseline for 0 params is 4, and the description adds value by explaining what the tool returns.

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

Purpose5/5

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

The description clearly states the tool fetches the root instance (game, ref 0) and its top-level services, distinguishing it from siblings like get_children or get_by_path.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. Sibling tools like get_children, get_by_path, or get_properties serve related but distinct purposes, and there is no mention of trade-offs.

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

get_sourceC

Read the Source of a Script/LocalScript/ModuleScript by ref, if readable.

ParametersJSON Schema
NameRequiredDescriptionDefault
refYes

TDQS

C2.4/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden. It mentions 'if readable', indicating potential failure scenarios, but does not disclose other behavioral traits such as side effects, permissions required, rate limits, or whether it is a safe read operation. The minimal disclosure leaves significant gaps.

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

Conciseness3/5

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

The description is a single sentence, which is concise and front-loads the action. However, it omits crucial details needed for correct usage, making it less effective. Conciseness is not beneficial if it sacrifices essential information.

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

Completeness2/5

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

Given the simple interface (one parameter, no output schema), the description should provide enough context for an agent to use it correctly. It lacks information on the return value, error cases, and how to interpret or use the 'ref'. The tool is not fully specified for autonomous use.

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

Parameters1/5

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

The input schema has one required integer parameter 'ref' with no description. The description says 'by ref' but does not explain what 'ref' represents or how to obtain it. With 0% schema description coverage, the description fails to add any meaningful semantics beyond the schema.

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 description clearly states the verb 'Read' and the resource 'Source of a Script/LocalScript/ModuleScript'. It specifies the action is by 'ref' and conditional on readability. This distinguishes it from sibling tools like get_properties which fetch different data. However, it does not explicitly differentiate from other tools, leaving some ambiguity.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It does not mention prerequisites, when not to use it, or any context that would help an agent decide between get_source and similar tools like get_by_path or get_properties.

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

invoke_remoteC

Invoke a RemoteFunction (InvokeServer) with the given arguments and return its result.

ParametersJSON Schema
NameRequiredDescriptionDefault
refYes
argsYes

TDQS

C2.9/5.0
Behavior2/5

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

Without annotations, the description carries the full burden of behavioral disclosure. It only states the basic function and return value, but omits side effects, auth requirements, error conditions, or rate limits. This is insufficient for safe and correct use.

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

Conciseness5/5

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

The description is a single, focused sentence that front-loads the core action. No extraneous words or repetition.

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

Completeness2/5

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

Despite having only 2 parameters and no output schema, the description is too sparse. It does not explain the ref parameter (presumably a reference to a remote function), the expected structure of args, or the return format. An agent would need to infer these from the schema or context.

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

Parameters1/5

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

Schema coverage is 0% and the description does not explain the parameters ('ref' and 'args') at all. The description merely says 'with the given arguments,' adding no semantic value beyond the schema types.

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

Purpose5/5

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

The description clearly states 'Invoke a RemoteFunction (InvokeServer) with the given arguments and return its result.' It specifies the action (invoke), the resource (RemoteFunction/InvokeServer), and that it returns a result, distinguishing it from fire-and-forget siblings like fire_remote.

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

Usage Guidelines2/5

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

No explicit guidance on when to use this tool versus alternatives (e.g., fire_remote). The description implies it returns a result, but does not state any prerequisites, constraints, or when not to use it.

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

remote_spy_dumpA

Return the remote traffic captured since the spy started.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.5/5.0
Behavior2/5

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

With no annotations, the description carries the burden. It reveals the tool returns captured traffic, but does not specify whether the spy continues or resets after dumping, nor does it describe the format or any side effects.

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

Conciseness5/5

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

The description is a single, front-loaded sentence with no extraneous information. Every word adds value.

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

Completeness3/5

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

For a simple dump tool with no parameters or output schema, the description is adequate but lacks context about prerequisites (e.g., spy must be started) and what the returned data looks like. Sibling tools provide some context but not explicitly.

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

Parameters4/5

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

There are zero parameters, and schema coverage is 100%. Per guidelines, baseline is 4. The description adds no additional parameter meaning, which is acceptable since there are none.

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

Purpose5/5

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

The description clearly states the tool returns captured remote traffic, using a specific verb and resource. It distinguishes itself from sibling tools like remote_spy_start and remote_spy_stop.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. The description implies the spy must be started, but there is no explicit context or mention of when not to use it.

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

remote_spy_startB

Start logging outgoing remote traffic. Returns an error if the executor lacks the required hooks.

ParametersJSON Schema
NameRequiredDescriptionDefault
filterNo

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations, the description must fully disclose behavioral traits. It only mentions an error condition, but does not explain the logging scope, performance impact, or the need for corresponding tools (remote_spy_stop, remote_spy_dump). The description is too minimal.

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

Conciseness5/5

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

The description is extremely concise—two sentences—with no extraneous words. It front-loads the primary action and adds a relevant error condition. Every sentence adds value.

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

Completeness3/5

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

Given the tool's simplicity (one optional parameter, no output schema), the description covers the basic purpose and a key error. However, it omits essential context: that logging can be stopped via remote_spy_stop and logs retrieved via remote_spy_dump, which are sibling tools.

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

Parameters1/5

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

The input schema has one parameter 'filter' with no description (0% schema coverage). The tool description does not explain what 'filter' does or how it affects logging. Since schema coverage is low, the description should compensate, but it fails to do so.

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

Purpose5/5

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

The description clearly states the action: 'Start logging outgoing remote traffic.' It uses a specific verb-resource pair and implicitly distinguishes from siblings like remote_spy_stop (stop) and remote_spy_dump (dump).

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?

The description provides some usage context by noting an error condition (missing hooks), but it lacks explicit guidance on when to use this tool versus alternatives. No comparison or when-not-to-use information is given.

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

remote_spy_stopB

Stop logging remote traffic.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.4/5.0
Behavior2/5

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

No annotations are provided, and the description does not disclose behavioral traits such as whether it clears data, is a no-op if not logging, or any side effects. Minimal disclosure.

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 description is a single concise sentence with no wasted words. It is appropriately sized for a simple tool but could benefit from slight expansion.

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

Completeness3/5

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

Given no parameters and no output schema, the description is minimal. It lacks context on what happens to collected data or any prerequisites, leaving some gaps.

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

Parameters4/5

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

The input schema has zero parameters with 100% coverage. The description does not need to add parameter information, so baseline 4 applies.

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

Purpose5/5

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

The description clearly states the action 'Stop' and the resource 'logging remote traffic'. It is specific and distinguishes from sibling tools like remote_spy_start and remote_spy_dump.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. It implies usage after remote_spy_start, but no explicit context is given.

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

run_luauC

Execute arbitrary Luau in the Roblox client and return captured output plus a best-effort serialized return value. Power tool.

ParametersJSON Schema
NameRequiredDescriptionDefault
codeYes

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description must fully disclose behavior. It mentions captured output and serialized return value, but fails to warn about risks, side effects, or permissions needed for arbitrary code execution.

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 description is a single sentence, concise and front-loaded with the action. 'Power tool' is slightly superfluous but not harmful.

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

Completeness2/5

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

For a complex, high-risk tool executing arbitrary code, the description is too brief. No output schema exists, so it should detail return value structure, error handling, and execution context. It only mentions 'captured output' and 'best-effort serialized return value' vaguely.

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

Parameters2/5

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

Schema description coverage is 0%, and the description does not elaborate on the 'code' parameter: no syntax, environment details, or limits. It adds minimal meaning beyond the field name.

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

Purpose5/5

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

The description clearly states the tool executes arbitrary Luau code in the Roblox client and returns output and serialized return value. It uses a specific verb and resource, distinguishing it from sibling tools like fire_remote or get_properties.

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

Usage Guidelines2/5

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

The description calls it a 'power tool' but provides no explicit guidance on when to use or avoid it, no comparisons to alternatives, and no prerequisites or warnings, which is critical for such a potent tool.

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

set_propertyB

Set a property on an instance by ref. The value is coerced to the property's declared Roblox type when known.

ParametersJSON Schema
NameRequiredDescriptionDefault
refYes
nameYes
valueYes

TDQS

B3.3/5.0
Behavior3/5

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

The description adds value by noting that the value is coerced to the property's declared Roblox type when known, which is beyond the schema. However, with no annotations provided, it does not disclose other important behaviors like error handling, return values, or permission requirements.

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

Conciseness5/5

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

The description is extremely concise with only two sentences, each adding distinct information. There is no redundant or extraneous text, earning a high score for efficiency.

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

Completeness2/5

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

Given the tool's complexity (3 parameters, rich composite types, no output schema) and its mutation nature, the description fails to cover essential context such as how to obtain a valid ref, valid property names, error conditions, or how the tool integrates with other tools like get_root or search. The schema provides type details but the description lacks procedural context.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate. It implies that ref identifies the instance, name is the property, and value is the new value, but does not explicitly describe each parameter's semantics or how to construct composite values. The coercion note is relevant but insufficient.

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

Purpose5/5

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

The description clearly states the verb (set) and resource (property on an instance) and introduces the mechanism (by ref). It distinctively identifies the tool's purpose without confusion with sibling tools like get_properties or get_by_path.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives. There is no mention of when not to use it, prerequisites, or context where another tool would be more suitable. The usage is only implied by the generic description.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 14 tool updatesv0.1.0
    • First observeddex_status
    • First observedfire_remote
    • First observedget_by_path
    • First observedget_children
    • First observedget_properties
    • First observedget_root
    • First observedget_source
    • First observedinvoke_remote
    • First observedremote_spy_dump
    • First observedremote_spy_start
    • First observedremote_spy_stop
    • First observedrun_luau
    • First observedsearch
    • First observedset_property

TDQS

A3.5/5.0
Disambiguation5/5

Each tool targets a distinct operation: status overview, reading/writing properties, searching, executing code, and remote interaction. No overlapping purposes; fire_remote and invoke_remote clearly differentiate RemoteEvent vs RemoteFunction.

Naming Consistency5/5

All tool names use consistent snake_case with a verb_noun structure (get_*, set_*, fire_remote, invoke_remote, run_luau, search). The remote_spy_* prefix uniformly groups spy operations. Only 'dex_status' uses a noun_verb format but it's a single exception.

Tool Count5/5

14 tools is well-scoped for a Roblox debugging server, covering inspection, execution, remote manipulation, and monitoring without excessive overlap or missing critical capabilities.

Completeness5/5

The tool surface covers the full lifecycle of typical interactions: reading state (get_*, search), modifying state (set_property, run_luau), remote communication (fire, invoke, spy), and monitoring (status, spy). No obvious gaps for its intended domain.

Maintenance

ActivityMaintained
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/972jesko/dex-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server