MCP & API
back to documentation

MCP & API

Connect supported external workflows and use the REST API reference safely.

Build Items

The public build-items route answers one focused question: which creator assets can this game use in its build inventory right now?

It is not a catalog of every native item type, and it does not validate arbitrary roomItems data. For normal scene building, use Build Your Game. For a connected workflow, use MCP setup.

Read the available build items

GET /api/v2/room/get-build-items?roomId=room-id

Required header: x-access-key

The caller must be authorized to manage the game.

A successful response has this shape:

{
  "code": "SUCCESS",
  "items": [
    {
      "id": "string",
      "name": "string",
      "type": "string",
      "category": "string",
      "glb": "string or null",
      "audio": "string or null",
      "thumbnailSrc": "string"
    }
  ]
}

An empty accessible inventory returns an empty items array.

What the response includes

The route combines asset identifiers from two places:

  • Directly attached items on the game.
  • Items supplied by the game’s attached build lists.

It returns assets that can be used in build mode: 3D models, audio, images, and textures. An item can have a GLB location, an audio location, an image thumbnail, or a combination appropriate to its type.

The type and category fields are descriptive values from the creator asset record. Treat them as display and routing metadata, not as a closed public enum.

Packs and missing assets

If an attached record is a pack, the route expands its child assets and returns the children rather than the pack container. If an attached identifier no longer resolves to an asset record, it is omitted from the result.

Your integration should handle both cases by using the returned items array as the source of truth instead of assuming every requested identifier appears.

Use an asset safely

  1. Read the build items for the target game.
  2. Choose an asset the caller is allowed to use.
  3. Add or reference it through a supported higher-level workflow.
  4. Open the game and test the asset at player scale.
  5. Keep the change only after it works in the intended scene.

Do not construct native prefab names or per-item extraData from a copied catalog. The safe way to preserve existing items is to start from Room Data Format, retain untouched data, and make a focused edit.