Skip to main content
Glama
Redseb
by Redseb

object_tiles

Expands a top-left flat tile id and width/height into the grid of tile IDs an object occupies, correctly handling the two-half-column sheet layout for placement.

Instructions

Expand a top-left flat tile id + a width×height size into the grid of tile ids that object occupies on the sheet — feed the returned tiles straight into place_object. This handles the flat sheets' two-half-column layout, where the tile below id N is NOT N+16 (indices 0–127 are the left half of the sheet, 128–255 the right), which is otherwise painful to compute by hand. Get the top-left id from find_tile/get_tile_catalog. Read-only. Throws if topLeftId isn't a flat id or the rectangle runs off the 16×16 sheet; warns if the tileset lacks that sheet.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
widthYesObject width in tiles
heightYesObject height in tiles
tilesetIdYesThe tileset id the object belongs to
topLeftIdYesRaw flat tile id of the object's top-left cell (from find_tile/get_tile_catalog)
Behavior5/5

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

With no annotations provided, the description carries the full burden and excels: it declares the tool is read-only, details the two-half-column layout behavior, specifies error conditions (throws if topLeftId isn't flat or rectangle runs off the 16×16 sheet), and warns if the tileset lacks the sheet. This is comprehensive behavioral disclosure for a compute utility.

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 compact for the complexity involved, with four sentences each serving a distinct purpose: main action, layout caveat, input source, and error/read-only behavior. It is front-loaded with the core action. Slightly verbose due to explaining the layout quirk, but every sentence earns its place.

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

Completeness5/5

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

Given no output schema and no annotations, the description fully contextualizes the tool: what it does, why it's needed (the tricky layout), where inputs come from, how to use the output, and error/warning behavior. It is self-contained for an agent to invoke correctly without additional context.

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?

Schema description coverage is 100%, so the baseline is 3. The description adds little beyond the schema: it references the top-left id source and the layout quirk, but the schema already states the topLeftId is a 'Raw flat tile id' from find_tile/get_tile_catalog. Width/height are already described as dimensions. No significant semantic enrichment.

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 uses a specific verb ('Expand') and clearly identifies the resource (a top-left flat tile id plus width×height into a grid of tile ids). It also distinguishes this tool from siblings like place_object by explaining that the returned tiles feed directly into place_object. The mention of the unusual sheet layout further clarifies the tool's unique role.

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 states when to use it ('feed the returned tiles straight into place_object') and provides a prerequisite source for the input ('Get the top-left id from find_tile/get_tile_catalog'). It implies this tool simplifies manual computation, but it does not explicitly name alternatives or say when not to use it, so it stops short of a 5.

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/Redseb/rpgmaker-mz-mcp'

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