roblox-studio
Provides tools for interacting with a Roblox Studio place, allowing agents to inspect the hierarchy, generate terrain and geometry, write and patch Luau scripts, apply SceneSpec map builds, validate geometry, and orchestrate playtests through the Roblox Studio bridge.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@roblox-studioinspect the Workspace hierarchy"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Skills
roblox-studio connects Claude Code, Codex, Cursor, Gemini CLI, and other coding agents to the place open in Roblox Studio.
The agent can inspect the hierarchy, draft a SceneSpec, create terrain and geometry, write scoped Luau, patch generated instances, mirror code to Rojo, validate the map, and coordinate playtests. Studio changes use Undo recording and new builds stay under Workspace/MapDrafts.
Prompt -> inspect -> SceneSpec -> dry run -> apply -> validate -> playtest
Install
Claude Code
The marketplace plugin includes the skill and starts the local MCP server:
/plugin marketplace add ShiroKSH/skills
/plugin install roblox-studio@skillsCodex
npx skills add ShiroKSH/skills -g
codex mcp add roblox-studio -- npx -y github:ShiroKSH/skillsRestart Codex after adding the MCP server.
Cursor, Copilot, Gemini CLI, and other hosts
Install the skill:
npx skills add ShiroKSH/skills -gAdd the bridge as a stdio MCP server:
{
"mcpServers": {
"roblox-studio": {
"command": "npx",
"args": ["-y", "github:ShiroKSH/skills"]
}
}
}Requirements: Node.js 20 or newer and Roblox Studio.
Related MCP server: Roblox Executor MCP Server
Install the Studio plugin
Clone the repository and run the installer:
git clone https://github.com/ShiroKSH/skills.git
cd skills
npm install
npm run install:pluginThe command builds dist/RobloxStudioBridge.rbxm with Rojo and copies it into the local Roblox plugins directory on Windows or macOS. The project pins Rojo in rokit.toml.
Manual fallback: run npm run build:plugin, then copy the .rbxm file into %LOCALAPPDATA%\Roblox\Plugins on Windows or ~/Documents/Roblox/Plugins on macOS.
Connect Studio
Enable HTTP requests for the place.
Open the
Roblox Studio Bridgeplugin panel.Keep host
127.0.0.1and port3765.Paste the token printed by the MCP server and select
Connect.Run
studio_pingfrom the agent.
The token is generated locally, is never a Roblox credential, is not persisted by the plugin, and is cleared from the panel after connection. Set ROBLOX_STUDIO_BRIDGE_TOKEN only when a stable local token is needed.
What the bridge exposes
Bounded hierarchy and property inspection.
SceneSpec map builds and graybox passes.
Terrain generation through Studio APIs.
Batched create, set, ensure, and delete operations inside managed roots.
Camera control and viewport raycast probes for visual checks.
Doors, buttons, elevators, teleporters, checkpoints, and scoped runtime scripts.
Geometry validation, map-readiness contracts, playtest requests, and Studio output.
Rojo projects under
generated/rojo/<mapName>whencodegen.targetisrojoorboth.
The full MCP tool list and protocol are documented in docs/protocol.md. SceneSpec fields are defined in docs/scene-spec.schema.json.
Map workflow
Run
studio_pingand inspect the relevant place hierarchy.Build a SceneSpec rooted at
Workspace/MapDrafts.Run
map_apply_scene_specwithdryRun=true.Review the target root, object count, touched services, scripts, filesystem writes, terrain, and risks.
Apply with
dryRun=false.Run
map_validateon the returned map root with strict geometry enabled.Run
map_readiness_checkfor playable builds.Inspect several camera angles, playtest interactions, read Studio output, and patch concrete failures.
Start with examples/simple-obby.scene.json for a minimal spec or examples/vertical-bazaar.scene.json for a layered map. Every apply writes a filesystem manifest under logs/manifests/ and a SceneManifest value under the generated map root.
Build evolution
These are cropped Roblox viewport frames from real iterations. Desktop chrome, chats, usernames, paths, tokens, and unrelated files are excluded.
V1 first pass | V4 exterior pass |
|
|
V4 balcony | V4 window and chimney |
|
|
Safety
The HTTP bridge binds to loopback only; the Studio plugin rejects non-loopback hosts.
Every plugin endpoint except minimal health status requires the shared token.
Poll credentials are sent in a POST body, not a URL.
Dangerous Luau execution is disabled by default and filtered again in Studio.
Deletes require
DELETE_MAP_DRAFTSand remain limited to managed build roots.External asset IDs require an explicit allowlist.
Command logs redact tokens, source, code, cookies, passwords, and confirmation values.
Studio changes use
ChangeHistoryServicerecording with a waypoint fallback.
See docs/safety.md for the full boundary.
Final result
The same workflow can move from an early blockout to a connected, interactive Roblox place, then keep repairing it from validation and playtest feedback:
Latest playtest | Latest station detail |
|
|
Development
npm install
npm run check
npm run validate:skill
npm run build:pluginPull requests receive automatic reviews from CodeRabbit, Qodo, and Sourcery. GitHub CodeQL scans JavaScript and TypeScript changes, while Dependabot opens grouped weekly dependency updates and immediate security-fix PRs. Automated suggestions still need to be verified against the tests and the Roblox Studio safety boundaries.
More detail: Contributing, Protocol, Safety, Troubleshooting, and Changelog.
Available Tools
22 toolsmap_apply_scene_specC
Dry-run or apply a SceneSpec map into Workspace/MapDrafts.
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | ||
| sceneSpec | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must fully disclose behavior. It mentions two modes (dry-run, apply) but fails to explain what 'apply' actually does (e.g., modifies workspace, side effects). The default of dryRun=true is not mentioned. The description lacks crucial information about destructiveness or required permissions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence, front-loaded with the key action and resource. It is not verbose, though it could benefit from additional details without becoming overly long. Every word carries weight, but brevity sacrifices completeness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (a required nested object parameter, no output schema, no annotations), the description is far from complete. It does not explain the return value, the effects of the apply mode, or the structure of the SceneSpec. The tool needs significantly more documentation for reliable use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 only mentions 'SceneSpec map' but does not explain what the sceneSpec parameter contains or how to use it. The dryRun parameter is not described. Both parameters are poorly documented, leaving the agent without sufficient guidance.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: to dry-run or apply a SceneSpec map into Workspace/MapDrafts. It uses a specific verb and resource, and the two modes (dry-run vs apply) are mentioned. However, it does not explicitly differentiate from sibling tools like map_validate, but the unique action 'apply' provides enough distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when wanting to test or apply a SceneSpec, but it does not provide explicit guidance on when to use this tool versus alternatives (e.g., map_validate for validation, map_create_blockout for blockouts). No exclusions or context for appropriate use are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
map_create_blockoutC
Create or dry-run a greybox blockout from a SceneSpec.
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | ||
| sceneSpec | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It mentions both creation and dry-run modes but does not disclose side effects, permissions, or what 'greybox blockout' entails. The default behavior (dry-run) is implied but not explicitly stated as the primary mode.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, which is concise and front-loads the main action. However, it omits critical details, making it insufficiently informative. It is not overly verbose but is too sparse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of output schema and annotations, and the complexity of creating a blockout from a SceneSpec, the description is inadequate. It fails to explain the return behavior, error conditions, or additional context needed for proper use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, yet the description provides no explanation of the parameters (dryRun, sceneSpec). The meaning of dryRun and the required structure of sceneSpec are left entirely to the agent's inference from the schema, which lacks descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (create/dry-run) and the resource (greybox blockout from a SceneSpec). It distinguishes the tool's purpose from siblings like map_apply_scene_spec, but could be more explicit about the difference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 like map_apply_scene_spec or map_refine_visuals. The description does not mention prerequisites or context for usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
map_readiness_checkB
Run final visual-readiness contract checks for generated maps after map_validate.
| Name | Required | Description | Default |
|---|---|---|---|
| profile | No | generic | |
| rootPath | Yes | ||
| expectedMapVersion | No | ||
| requireVisibleVersion | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden for behavioral traits. It states 'checks' but does not clarify whether the tool mutates state, its idempotency, error behavior, or authorization needs. This lack of detail leaves critical safety gaps for a tool that could potentially modify maps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no wasted words. It front-loads the core purpose. However, it may be too concise, lacking necessary detail, but that is reflected in other dimensions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 4 parameters, no output schema, and no annotations, the description is severely lacking. It does not explain what 'visual-readiness contract checks' entail, how results are communicated, or how to interpret failures. The description is not complete enough for reliable agent use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, meaning no parameter descriptions exist in the schema. The tool description adds no parameter information, failing to compensate. Agents are left to infer meaning from names (rootPath, profile, etc.) without guidance, which is insufficient for correct usage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool runs final visual-readiness contract checks for maps, specifying it occurs after map_validate. The verb 'Run' and resource 'maps' are clear, and the positioning after map_validate distinguishes it from related tools like map_validate.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'after map_validate', providing concrete guidance on when to use this tool in the pipeline. However, it does not mention when not to use it or discuss alternatives, limiting completeness.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
map_refine_visualsA
Refine generated map visuals without changing gameplay layout.
| Name | Required | Description | Default |
|---|---|---|---|
| notes | No | ||
| style | Yes | ||
| dryRun | No | ||
| mapRootPath | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses the key behavioral trait of not altering gameplay layout, but lacks details on what exactly gets changed or side effects like file overwrites.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, no filler, front-loaded with key purpose and constraint.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 4 parameters, no output schema, and no annotations, the description is insufficient for an agent to understand how to use the tool effectively, lacking parameter roles and return value expectations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameter descriptions in schema; the description does not explain any parameters despite 0% schema coverage, providing no added semantic value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it refines map visuals without changing gameplay layout, which is specific and distinguishes from siblings like map_create_blockout.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies use after generation ('refine generated map visuals') but does not explicitly state when to use versus alternatives or when not to use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
map_validateC
Validate generated map safety and geometry. This is not a final visual readiness check.
| Name | Required | Description | Default |
|---|---|---|---|
| rootPath | No | Workspace/MapDrafts | |
| maxObjects | No | ||
| strictGeometry | No | ||
| terrainClearance | No | ||
| maxOverlapWarnings | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries the full burden. It only states the purpose ('validate map safety and geometry') but does not disclose whether the tool is read-only, what side effects occur, or any permission or rate limit requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise at two sentences but omits crucial details, making it under-specified rather than efficiently informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 5 parameters with no schema descriptions, no output schema, and no annotations, the brief description fails to cover validation behavior, input constraints, or result format, leaving significant gaps for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description adds no information about the five parameters (rootPath, maxObjects, strictGeometry, terrainClearance, maxOverlapWarnings), leaving the agent without guidance on how to set them.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool validates map safety and geometry, and explicitly distinguishes it from a final visual readiness check, differentiating from sibling tool map_readiness_check.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage during map development after generation but before final check, but provides no explicit when-to-use or when-not-to-use advice, nor mentions alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
studio_create_instanceC
Create an allowed Instance class under a requested parent path.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| className | Yes | ||
| parentPath | Yes | ||
| properties | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description implies a write operation but offers no details about side effects, permissions, error cases, or the meaning of 'allowed'. With no annotations, the agent gets minimal behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The single sentence is extremely brief but omits critical information. It is under-specified rather than concise, failing to earn its place by adding sufficient value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is severely incomplete. It does not explain the domain (Roblox Studio), what 'allowed' means, the return behavior, or how to use the parameters. For a 4-param tool with no output schema, this is inadequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description must clarify parameters, but it only hints at parentPath. No explanation of className, name, or properties (an object) is given, leaving the agent to guess.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear verb ('Create') and resource ('Instance class'), and hints at constraints ('allowed'). It distinguishes from deletion and finding tools, but lacks specificity about what 'Instance class' means and where it is created.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 siblings like studio_find_instances or studio_delete_instances. No prerequisites or exclusion criteria are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
studio_delete_instancesC
Delete Instances. Requires confirmToken; intended for generated content.
| Name | Required | Description | Default |
|---|---|---|---|
| paths | Yes | ||
| confirmToken | No | ||
| requireConfirmToken | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose all behavioral traits. It only states that it deletes (destructive) and requires a confirmToken, but fails to disclose what gets destroyed, authentication needs, rate limits, or idempotency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence, efficient and to the point. However, it could be better structured by separating the requirement and intended use into distinct clarifications.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of annotations and output schema, the description is insufficiently complete. It lacks parameter semantics, return value descriptions, error scenarios, and prerequisites for using the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description adds no information about the three parameters (paths, confirmToken, requireConfirmToken). The description does not compensate for the lack of documentation in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Delete Instances' with a specific verb and resource. It names a requirement (confirmToken) and intended use (generated content), but does not differentiate from sibling tools like studio_find_instances or studio_patch_instances.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides some context: it requires confirmToken and is intended for generated content. This implies usage scenarios but does not explicitly state when not to use it or mention alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
studio_execute_luauC
Execute Luau in Studio only when explicitly enabled by config.
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes | ||
| reason | Yes | ||
| timeoutMs | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It only states the action and a condition, omitting details like error handling, sandboxing, side effects on Studio state, or return values.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence and front-loads the action, but it is too brief, sacrificing essential detail for the sake of conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of code execution, the description fails to provide sufficient context: no output schema, no parameter descriptions, no behavior beyond the basic action. This is inadequate for safe invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage, but the description adds no information about the parameters (code, reason, timeoutMs). The agent is left with only the schema structure and no semantic guidance.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'execute' and the resource 'Luau in Studio', and adds a unique condition about being enabled by config. This distinguishes it from sibling tools like studio_create_instance or studio_set_properties.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions a prerequisite (config must enable execution), but provides no guidance on when to use this tool versus other tools, how to handle the prerequisite, 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.
studio_find_instancesB
Find Instances by name, className, tag, or path prefix.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | ||
| tags | No | ||
| limit | No | ||
| className | No | ||
| pathPrefix | No | ||
| properties | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must cover behavioral traits. It implies a read-only search operation but fails to disclose details like pagination, sorting, output format, or any side effects. The minimal description 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, front-loading the action and criteria. Every word is necessary; no redundancy. It is appropriately sized for the information it conveys.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 6 optional parameters, no output schema, and no annotations, the description is too brief. It does not explain the return format, whether results are exhaustive, or how to handle large result sets. The completeness is inadequate given the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description partially compensates by listing four of the six parameters (name, className, tag, pathPrefix). However, 'tags' (plural) is misrepresented as 'tag', and 'properties' is omitted entirely. The description adds some meaning but is incomplete.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Find' and the resource 'Instances', and lists specific search criteria (name, className, tag, path prefix). This distinguishes it from sibling tools like studio_create_instance (creation) and studio_delete_instances (deletion).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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, no context about prerequisites or limitations, and no exclusions. It simply describes what it does without usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
studio_focus_instanceC
Focus the Studio viewport camera on an Instance from a named direction.
| Name | Required | Description | Default |
|---|---|---|---|
| view | No | iso | |
| distance | No | ||
| fieldOfView | No | ||
| instancePath | Yes |
TDQS
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 only states the action without mentioning side effects (e.g., overwriting current camera position), permissions, or whether the operation is reversible. The agent cannot assess safety or consequences.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no wasted words, but it is overly terse. It could be expanded to cover parameters while maintaining conciseness, so the score reflects efficiency without sacrificing essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of camera manipulation (4 parameters, no output schema), the description is insufficient. It does not explain how 'focus' works, what the default distance or fieldOfView affect, or how the direction interacts with the instance orientation. The agent lacks complete context to use the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description should compensate by explaining each parameter. It mentions 'named direction' which maps to `view` enum, but instancePath, distance, and fieldOfView are completely unexplained. The agent must guess their meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb (Focus), the resource (Studio viewport camera on an Instance), and the method (from a named direction). It distinguishes itself from sibling tools like studio_set_camera which sets absolute camera position, not focusing on an instance.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance on when to use this tool versus alternatives like studio_set_camera or studio_get_camera. It lacks context about prerequisites or exclusions, leaving the agent to infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
studio_get_cameraA
Read the current Roblox Studio viewport camera state.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must carry full burden. 'Read' implies idempotent and non-destructive, which is adequate. However, it does not describe what data is returned (e.g., position, rotation), leaving the agent uncertain about the output.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, perfectly concise with no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 but sufficient for a simple read-only tool. Could be enhanced by hinting at return structure.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist, so baseline 4 applies. The description adds no parameter-level information, but none is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Read the current Roblox Studio viewport camera state' uses a specific verb 'Read' and clearly identifies the resource. It distinguishes from sibling tool 'studio_set_camera' which implies a write operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is clearly implied: use when you need to retrieve the current camera state. No explicit when-not or alternatives, but the sibling set tool suggests when not to use this.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
studio_get_propertiesC
Read serialized properties for a single Instance.
| Name | Required | Description | Default |
|---|---|---|---|
| instancePath | Yes | ||
| propertyNames | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It only states that properties are read, but does not mention permission requirements, error behavior (e.g., if instance does not exist), or whether the operation has side effects. The description is too minimal to fully inform the agent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence, but it is overly brief. While conciseness is valued, the lack of critical information makes it less effective. It could be expanded slightly without losing efficiency.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (2 parameters, no output schema, no annotations), the description is barely adequate. It fails to cover parameter semantics, usage context, and behavioral details, making it incomplete for an agent to use effectively without additional assumptions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, meaning the description adds no meaning beyond the input schema. The description does not explain the purpose or format of instancePath and propertyNames, leaving the agent reliant solely on parameter names and types. The description should compensate for low coverage but fails to do so.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Read serialized properties for a single Instance' clearly states the verb (read) and resource (serialized properties for a single Instance). It distinguishes from sibling tools like studio_set_properties which write, and studio_patch_instances which modifies.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. There is no mention of when not to use it, prerequisites, or exclusion scenarios. With siblings like studio_get_tree and studio_find_instances, more context would be helpful.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
studio_get_treeC
Read a bounded Instance tree from Roblox Studio.
| Name | Required | Description | Default |
|---|---|---|---|
| depth | No | ||
| rootPath | No | game | |
| includeProperties | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden for behavioral disclosure. It states the operation is a read, but does not explain what 'bounded' means, potential side effects, or permission requirements. Minimal transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no unnecessary words. However, it could include more detail without becoming verbose, so it is not a maximum 5.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having 3 parameters and no output schema or annotations, the description is extremely minimal. It fails to explain key concepts (e.g., 'bounded'), what the output represents, or how parameters interact. This is inadequate for correct tool usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, yet the description provides no parameter explanations. It does not mention depth, rootPath, or includeProperties, leaving the agent without guidance on how these affect the tool's behavior.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Read') and resource ('Instance tree') with a qualifier ('bounded'), clearly differentiating from siblings like studio_find_instances or studio_get_properties. It is unambiguous about the operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 prerequisites, exclusions, or comparison with sibling tools, leaving the agent to infer usage from the name and parameters alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
studio_patch_instancesC
Apply a batch of create, set, ensure, and delete operations inside managed generated roots.
| Name | Required | Description | Default |
|---|---|---|---|
| operations | Yes | ||
| confirmToken | No | ||
| requireConfirmToken | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description should disclose behavioral traits like atomicity, error handling, or confirmation requirements. It does not mention the confirmToken or requireConfirmToken parameters, nor does it explain what happens on failure or whether operations are grouped atomically.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, making it concise, but it lacks structure and does not front-load critical information. Important details like the existence of a confirmation token are omitted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of batch operations and the lack of an output schema, the description is far from complete. It fails to explain return values, error behavior, or the significance of the 'managed generated roots' context. The agent would struggle to invoke this tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description entirely fails to explain the meaning or usage of parameters such as name, path, action, className, parentPath, properties, instancePath, confirmToken, and requireConfirmToken. The agent receives no guidance on how to construct the operations array.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the tool applies a batch of create, set, ensure, and delete operations, which clearly indicates its purpose and distinguishes it from individual operation tools like studio_create_instance or studio_delete_instances. However, the term 'managed generated roots' is vague and may not be universally understood.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 such as using single-operation tools repeatedly. There is no mention of when-not-to-use or any prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
studio_pingA
Check local Roblox Studio plugin status and return version, place, and connection state.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It transparently states it returns version, place, and connection state. It does not mention side effects, but as a ping/check tool, it is expected to be non-destructive and read-only.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the purpose and key return fields. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple ping tool without an output schema, the description adequately covers its behavior and return values. It could be slightly improved by noting data types or structure, but it is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so description adds meaning by explaining the return data (version, place, connection state). Without an output schema, this context is valuable for understanding the tool's output.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool checks local Roblox Studio plugin status and returns specific fields (version, place, connection state). The verb 'Check' and resource are specific, and it distinguishes from sibling tools that create, delete, or modify instances.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for health checking before other operations, but provides no explicit guidance on when to use it versus alternatives. 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.
studio_read_outputC
Return recent output lines mirrored by the Studio plugin.
| Name | Required | Description | Default |
|---|---|---|---|
| lines | No |
TDQS
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 implies a safe read operation but does not disclose whether the tool has side effects, rate limits, or requires a specific state (e.g., plugin active). The description is minimal and lacks behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no superfluous words. It is front-loaded and direct. However, it could be improved by using structured formatting (e.g., bullet points) if more detail were added.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool (one parameter), the description lacks context about what 'mirrored' means, whether the output is real-time or cached, and the format of the returned data. No output schema exists to fill these gaps, so the description should provide more completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage, and the description does not clarify the 'lines' parameter beyond its existence. It does not explain that lines controls the number of recent lines to return, nor does it mention the default (100) or bounds (1-500). The description adds little value over the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns recent output lines from the Studio plugin, which distinguishes it from sibling tools that deal with instances, camera, or playtesting. However, it does not specify what exactly constitutes 'output lines' (e.g., from Roblox Studio output console).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. There is no mention of prerequisites, such as the need for the Studio plugin to be running, or context for when reading output is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
studio_set_cameraC
Move the Roblox Studio viewport camera to inspect generated content.
| Name | Required | Description | Default |
|---|---|---|---|
| focus | No | ||
| cframe | No | ||
| lookAt | No | ||
| position | No | ||
| fieldOfView | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and the description only says 'move the camera' without disclosing potential side effects, permanence, or authorization needs. The agent is left to assume it's a simple mutation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, front-loaded with the action. Efficient but omits necessary detail, making it under-specified rather than concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 5 parameters including complex objects and no output schema, the description is far too sparse. Lacks coordinate system, parameter combinations, and return info.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description should explain parameter roles. It does not: 'focus' and 'cframe' are opaque objects, coordinates for lookAt and position are not explained, and the relationship between parameters is missing.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the tool moves the Roblox Studio viewport camera for inspection. Verb and resource are specific, but does not explicitly differentiate from sibling tools like studio_get_camera or studio_focus_instance.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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, or any prerequisites. The description does not mention 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.
studio_set_propertiesC
Set validated serialized properties on one Instance.
| Name | Required | Description | Default |
|---|---|---|---|
| properties | Yes | ||
| instancePath | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description implies mutation but does not disclose behavioral details such as whether properties are replaced or merged, required permissions, error handling, or side effects. With no annotations, the description carries the full transparency burden and falls short.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, which is concise but lacks structure. It could be expanded to front-load key details without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 2 required parameters (one an object), no output schema, and no annotations, the description is critically incomplete. It omits essential context like whether properties are merged or replaced, validation rules, and success/failure behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 0%, and the description adds no meaning to the parameters 'instancePath' or 'properties'. No examples, constraints, or format hints are provided beyond the raw schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Set') and the resource ('validated serialized properties on one Instance'), distinguishing it from siblings like studio_get_properties. However, the phrase 'validated serialized' is jargon that could benefit from elaboration.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 like studio_patch_instances or studio_set_camera. The description lacks explicit when-to-use or when-not-to-use context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
studio_start_playtestB
Ask Studio plugin to start playtest, or return a manual fallback.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose side effects or prerequisites (e.g., project open, playtest not already running). It only mentions a fallback but not when or why.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, concise and front-loaded. Every word serves a purpose, though the 'fallback' part could be clarified.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple action (no params, no output schema), the description is adequate but lacks behavioral context that would help an agent understand side effects or prerequisites.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist in the schema (0 params), so the description does not need to add parameter details. The baseline score of 4 is appropriate as there is nothing missing.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool starts a playtest, distinguishing it from sibling studio_stop_playtest. The 'manual fallback' addition adds slight ambiguity but does not undermine the core purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 manual setup. The fallback mention is vague and does not help an agent decide context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
studio_stop_playtestB
Ask Studio plugin to stop playtest, or return a manual fallback.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must shoulder the burden of behavioral disclosure. It only states the action and a vague fallback, omitting side effects, error handling, or what happens if the playtest is not running.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise (one sentence). The inclusion of 'or return a manual fallback' slightly undermines clarity, but overall it is efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no output schema and no annotations, the description is incomplete. It does not explain the result of stopping, the nature of the manual fallback, or any confirmation, leaving significant gaps for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has no parameters, so schema coverage is effectively 100%. The description adds no parameter meaning, but none is needed. Baseline 4 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool stops a playtest, distinguishing it from studio_start_playtest. However, the phrase 'or return a manual fallback' introduces ambiguity about what that entails.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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, prerequisites (e.g., playtest must be running), or alternatives. The description lacks context for effective invocation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
studio_visual_probeC
Set the Studio camera and raycast a viewport grid to report visible hit parts.
| Name | Required | Description | Default |
|---|---|---|---|
| rows | No | ||
| aspect | No | ||
| cframe | No | ||
| lookAt | No | ||
| columns | No | ||
| position | No | ||
| fieldOfView | No | ||
| maxDistance | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must convey behavior. It mentions setting the camera and raycasting a grid, but does not disclose whether the camera change is permanent, what 'visible hit parts' means, or the format of the report. This is adequate but not fully transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence, front-loaded with the main actions. While efficient, it omits important details that could be included without significant bloat.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 8 parameters, no output schema, and no annotations, the description is woefully incomplete. It only provides a high-level purpose, leaving agents without critical context for proper use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% (no parameter descriptions in schema), and the description does not mention any of the 8 parameters. It adds zero semantic value for input understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: setting the Studio camera and raycasting a viewport grid to report visible hit parts. This distinguishes it from siblings like 'studio_set_camera' or 'studio_find_instances'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 (e.g., using 'studio_set_camera' and then a separate raycasting method). No context on prerequisites or conditions is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
terrain_generateC
Generate terrain through Roblox Terrain API via the Studio plugin.
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | ||
| size | Yes | ||
| biome | No | custom | |
| caves | No | ||
| paths | No | ||
| water | No | ||
| heightNoise | No | ||
| parentFolder | No | Workspace/MapDrafts |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description must carry the full burden. It only states the action (generate terrain) but does not disclose side effects (e.g., overwriting existing terrain), requirements (e.g., plugin needed), or return behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, which is concise but too brief to cover necessary details. It states the purpose but lacks structure or additional context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the high parameter count (8), no output schema, and many sibling tools, the description is severely incomplete. It fails to explain parameter usage, output expectations, or integration with other tools, leaving the agent with insufficient information.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%; the description adds no meaning to any of the 8 parameters. The schema provides types and defaults, but the agent gets no explanation of what each parameter does (e.g., seed, biome, caves).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool generates terrain using the Roblox Terrain API via the Studio plugin. It uses a specific verb and resource, and is distinct from sibling tools that focus on map editing or studio instance manipulation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 vs alternatives. With many sibling tools (e.g., map_create_blockout, studio_create_instance), the description lacks context like prerequisites 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.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
22 tool updates
v0.1.0- First observed
map_apply_scene_spec - First observed
map_create_blockout - First observed
map_readiness_check - First observed
map_refine_visuals - First observed
map_validate - First observed
studio_create_instance - First observed
studio_delete_instances - First observed
studio_execute_luau - First observed
studio_find_instances - First observed
studio_focus_instance - First observed
studio_get_camera - First observed
studio_get_properties - First observed
studio_get_tree - First observed
studio_patch_instances - First observed
studio_ping - First observed
studio_read_output - First observed
studio_set_camera - First observed
studio_set_properties - First observed
studio_start_playtest - First observed
studio_stop_playtest - First observed
studio_visual_probe - First observed
terrain_generate
TDQS
All tools have clearly distinct purposes. The map tools cover a complete pipeline (blockout, refine, validate, apply, readiness check), studio tools handle instance management, camera, properties, playtest, etc., and terrain is separate. No overlapping functionality.
Tool names follow a consistent pattern of prefix_group_action (e.g., map_create_blockout, studio_find_instances, terrain_generate). All use snake_case and descriptive names, making the set predictable and easy to navigate.
With 22 tools, the set is slightly above the typical well-scoped range (3-15), but given the breadth of Roblox Studio operations (map generation, instance management, camera, playtest, terrain), the count is still reasonable and not excessive.
The tool surface covers the full map generation lifecycle, comprehensive instance CRUD (via create, delete, patch, properties), camera control, playtest, terrain generation, and diagnostic tools. No obvious gaps for typical Studio automation tasks.
Maintenance
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
Connect AI agents to Flato's editable canvas runtime through a hosted MCP server.
Hosted MCP server connecting claude.ai, ChatGPT and other AI apps to your own computer
One connector for 15,000+ MCP servers plus your team's private MCPs, from any AI client.
Create guides as MCP servers to instruct coding agents to use your software (library, API, etc).
Related MCP Servers
- AlicenseNot gradedqualityNot gradedmaintenanceConnects Roblox Studio to AI coding editors via the Model Context Protocol, allowing AI agents to understand and interact with live Roblox Studio sessions through scene manipulation, scripting, and optional Roblox Open Cloud API integration.66-
- AlicenseAqualityBmaintenanceEnables AI agents to execute Lua code, inspect scripts, spy on remotes, and interact with a running Roblox game client through an MCP interface.622951MIT
- AlicenseNot gradedqualityCmaintenanceBridges coding agents with Roblox Studio, enabling inspection, generation, editing, and validation of Roblox places through natural language.MIT
- AlicenseNot gradedqualityBmaintenanceA production MCP integration that lets AI agents control Roblox Studio to autonomously build, test, and debug Roblox games. Provides 39 tools for explorer control, script management, terrain generation, and autonomous testing.1MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/ShiroKSH/skills'
If you have feedback or need assistance with the MCP directory API, please join our Discord server




