The asset tools let an AI agent browse the Roblox Creator Store, inspect and preview individual assets, insert them directly into a live Studio session, upload new content to Roblox, and even generate entirely new 3D models from text or image prompts using Roblox’sDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/Chrrxs/robloxstudio-mcp/llms.txt
Use this file to discover all available pages before exploring further.
GenerationService. Together they cover the full asset lifecycle — discovery, evaluation, placement, and publishing — without leaving the MCP tool surface.
search_assets and upload_asset (for non-Decal types) require a valid ROBLOX_OPEN_CLOUD_API_KEY environment variable. Decal uploads also accept a ROBLOSECURITY cookie as a fallback. Set ROBLOX_CREATOR_USER_ID or ROBLOX_CREATOR_GROUP_ID to establish ownership for uploads and AI model generation that requires image upload.search_assets
Search the Creator Store (Roblox marketplace) for assets by type and optional keywords. Results include asset IDs, names, creator info, and voting data that you can pass directly to other tools such asget_asset_thumbnail or insert_asset.
The category of asset to search. One of:
Audio, Model, Decal, Plugin, MeshPart, Video, FontFamily.Search keywords. Leave empty to browse top/trending results for the category.
Maximum number of results to return. Defaults to
25.Sort order for results. One of:
Relevance (default), Trending, Top, AudioDuration, CreateTime, UpdatedTime, Ratings.When
true, only assets from Roblox-verified creators are returned. Defaults to false.get_asset_details
Fetch detailed marketplace metadata for a single asset — name, description, asset type ID, creator, creation/update timestamps, pricing, and voting breakdown — by its numeric Roblox asset ID.The numeric Roblox asset ID to look up.
Uses
ROBLOX_OPEN_CLOUD_API_KEY when available. Falls back to a ROBLOSECURITY cookie for assets you own.get_asset_thumbnail
Fetch the thumbnail image for an asset as a base64-encoded PNG. The returned image is suitable for vision-capable LLMs — pass it directly to your model to visually verify an asset before inserting it into the scene.The numeric Roblox asset ID whose thumbnail you want.
Thumbnail resolution. One of:
150x150, 420x420 (default), 768x432.insert_asset
Load a Creator Store asset by ID viaAssetService inside the running Studio session and parent it under the specified DataModel path. Optionally position the inserted asset in world space immediately after insertion.
The Roblox asset ID to insert.
Canonical DataModel path where the asset should be parented (e.g.
game.Workspace). Defaults to game.Workspace.Optional world-space position. Provide an object with
x, y, and z number fields.Which connected Studio place to target. Required when multiple places are connected; omit when only one is connected. Use
get_connected_instances to list available IDs.preview_asset
Inspect the contents of an asset without permanently inserting it. The tool loads the asset, walks the entire instance hierarchy, collects properties and summary statistics, then destroys the temporary instances before returning. Use this to understand asset structure — part counts, class types, script names — before committing to aninsert_asset call.
The Roblox asset ID to preview.
Include detailed property values for each instance in the hierarchy. Defaults to
true.Maximum traversal depth for the hierarchy walk. Defaults to
10.Which connected Studio place to target. Required when multiple places are connected; omit when only one is connected.
upload_asset
Upload a local file to Roblox as a new asset. Supported asset types and formats:| Asset Type | Accepted Formats | Notes |
|---|---|---|
Audio | mp3, ogg, wav, flac | Max 7 min; 100 uploads/month (ID-verified account) |
Decal | png, jpg, bmp, tga | Accepts ROBLOSECURITY cookie or Open Cloud key |
Model | fbx, gltf, glb, rbxm, rbxmx | Requires Open Cloud key + creator ID |
Animation | rbxm, rbxmx | Requires Open Cloud key + creator ID |
Video | mp4, mov | Max 5 min; account must be 13+ and ID-verified |
Absolute filesystem path to the file you want to upload.
The asset category:
Audio, Decal, Model, Animation, or Video. Must match the file’s actual format.Display name shown on the Creator Store. Maximum 50 characters.
Optional description for the asset. Defaults to an empty string.
Roblox user ID to set as the asset creator. Overrides the
ROBLOX_CREATOR_USER_ID environment variable.Roblox group ID to credit as the asset creator. Overrides
ROBLOX_CREATOR_GROUP_ID and takes precedence over userId when both are supplied.generate_model
Generate a new 3D Roblox Model usingGenerationService:GenerateModelAsync from a text prompt, a reference image, or both. The generated model is staged under game.ServerStorage.__MCPGeneratedModels — it is not placed into the world automatically. Use standard instance tools afterward to parent, position, scale, anchor, or integrate it.
Text description of the model to generate. Required unless an image input (
image_path, image_base64, or image_asset_id) is provided.Absolute local path to a PNG reference image. The MCP server uploads it as a Roblox Decal/Image asset before generation. Mutually exclusive with
image_base64 and image_asset_id.Base64-encoded PNG bytes to use as a reference image. Requires
image_mime_type="image/png". The server uploads the image before generation. Mutually exclusive with image_path and image_asset_id.Required when
image_base64 is provided. Currently only image/png is supported.An existing Roblox image asset ID to use as a visual reference without uploading. Mutually exclusive with
image_path and image_base64.Built-in
GenerationService schema controlling model segmentation. Body1 (default) outputs a single mesh. Car5 outputs a five-part vehicle chassis. Mutually exclusive with schema_groups.Custom part name list for model segmentation, e.g.
["Body", "Front Left Wheel", "Front Right Wheel", "Rear Left Wheel", "Rear Right Wheel"]. Mutually exclusive with schema.Optional name for the generated Model instance under
game.ServerStorage.__MCPGeneratedModels.Approximate desired bounding size. Provide an object with
x, y, z numbers. GenerationService may not match it exactly.Optional triangle-count ceiling. Lower values produce more faceted, low-poly output.
Whether
GenerationService should generate surface textures. Defaults to Roblox’s built-in behavior (true).Maximum time in milliseconds the MCP bridge waits for the generation request. Range: 1–300,000. Defaults to
120000 (2 minutes).Which connected Studio place to target. Required when multiple places are connected; omit when only one is connected.
When using
image_path or image_base64, the server uploads the image to Roblox before calling GenerateModelAsync. This requires ROBLOX_OPEN_CLOUD_API_KEY with asset:write scope and a configured creator ID (ROBLOX_CREATOR_USER_ID or ROBLOX_CREATOR_GROUP_ID). Using image_asset_id bypasses the upload entirely.search_materials
Search forMaterialVariant instances registered in MaterialService by name. Use this before building palettes for generate_build or create_build to confirm exact variant names and their base material types.
Case-insensitive search string matched against material variant names. Leave empty to list all registered variants.
Maximum number of results to return. Defaults to
50.Which connected Studio place to target. Required when multiple places are connected; omit when only one is connected.
list_library
List builds stored in the local build library managed by the MCP server. Returns build IDs, style categories, bounding dimensions, and part counts. Optionally filter by style to narrow results.Filter results to a single style category. One of:
medieval, modern, nature, scifi, misc.