Skip to main content
Glama
EL4CTEO

Roblox Studio MCP

Viewport and selection

viewport
Idempotent

Manage the 3D view and selection in Roblox Studio. Select instances, frame them with camera focus, control the camera directly, or raycast to find what occupies a space.

Instructions

Works with the 3D view and the Studio selection.

select sets, extends or shrinks what is highlighted in Studio. Select what you just built or changed — it shows the user the result, and puts the instance under Studio's own move and scale handles. studio_status reports the current selection; this sets it.

focus aims the Studio camera at an instance and frames it so the whole thing is on screen. This is what makes screenshot worth having: a picture of wherever the camera happened to be answers nothing, while a picture of the thing you just built answers 'does it look right', which no amount of reading properties can. Build, focus, screenshot.

The distance is computed from the subject's size and the camera's field of view, so a doorway and a whole map both arrive filling a similar share of the frame. from changes the angle you view it from, and padding how tightly it is framed.

camera sets or reads the camera directly, for shots framing cannot express — standing inside a room, or looking along a corridor.

raycast fires a ray through the world and reports the first thing it hits, with position, surface normal, distance and material. This answers 'what occupies this space', which the data model alone cannot: use it to find the ground under a spawn point, or check whether a gap is clear before placing something.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
atNofocus only: look at this point instead of an instance, e.g. "0, 10, 0".
opYes'focus' points the camera at something and frames it, 'camera' sets it explicitly, 'select' changes the Studio selection, 'raycast' queries the world.
fromNofocus only: direction to view from, e.g. "0, 1, 0" for directly above or "1, 0, 0" from the side. Defaults to a raised three-quarter view.
modeNoselect only: replace the selection, extend it, or remove from it.set
pathNofocus only: the instance to look at. A model, part, or folder containing them.
pathsNoselect only: instances to select. An empty array clears the selection.
ignoreNoraycast only: instances the ray passes through.
lookAtNocamera only: the point to aim at.
originNoraycast only: where the ray starts, e.g. "0, 50, 0".
paddingNofocus only: how much room to leave around the subject. 1 is tight.
positionNocamera only: where to put the camera, e.g. "0, 20, 30".
studioIdNoTarget Studio; omit for the active one.
directionNoraycast only: which way it points, e.g. "0, -1, 0" for straight down.
fieldOfViewNocamera only: field of view in degrees. Lower is more zoomed in.
maxDistanceNoraycast only: how far to look, in studs.
Behavior3/5

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

The description discloses that 'select' sets the selection (versus 'studio_status' reporting) and explains the effect of 'focus' on the camera. However, it inaccurately claims 'camera' can both 'set or read' the camera, while the schema only defines parameters for setting. This minor inconsistency and lack of side-effect discussion leaves some ambiguity.

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 excessively long and employs a repetitive, poetic style (e.g., 'Build, focus, screenshot.'). It could be condensed to a few clear sentences without losing meaning. This violates the principle of being appropriately sized and front-loaded.

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?

The description thoroughly explains the purpose and reasoning behind each operation, including why 'focus' is necessary for screenshots and why 'raycast' is useful for queries. It covers all operations and their parameters contextually, leaving no major gaps for an agent to misunderstand the tool's functionality.

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

Parameters3/5

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

The input schema already provides complete parameter descriptions (100% coverage). The tool description adds minimal extra semantic value—it mentions defaults for 'from' and 'padding' but repeats schema info. Per the rubric, a baseline of 3 is appropriate when schema coverage is high and the description adds little.

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 tool's domain (3D view and Studio selection) and enumerates the four operations (select, raycast, focus, camera). However, it is more verbose than necessary and includes a stray reference to 'studio_status' that could confuse, so it doesn't reach a perfect 5.

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

Usage Guidelines4/5

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

The description provides usage context by comparing to sibling tools: it contrasts with 'studio_status' for selection reporting, and implies using 'focus'/'camera' before 'screenshot'. This is helpful but not as explicit as naming when to use each operation versus alternatives.

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

Install Server

Other Tools

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/EL4CTEO/rbx-studio-mcp'

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