Skip to main content
Glama

create_tileset_project

Scaffold a tilemap project in Aseprite with a canvas, tilemap layer, and starter tileset, then fill the grid with the first tile.

Instructions

Scaffold a tilemap project: a canvas sized columns×rows tiles, a tilemap layer, and a starter tileset (grass/dirt/water/stone by default, or your own [{"name","color"}] list). The grid is filled with the first tile to start.

Returns a ``workflow_manifest.v1`` manifest with a tilemap block mapping tile
names to their tileset indices.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYes
rowsNoDefault: 4.
tilesNo
columnsNoDefault: 4.
tile_sizeNoDefault: 16.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed13 schema fields changedv0.10.0
    • addedInput schema / properties / columns / description
      Added value: +"Default: 4."
    • removedInput schema / properties / columns / title
      Removed value: -"Columns"
    • removedInput schema / properties / name / title
      Removed value: -"Name"
    • addedInput schema / properties / rows / description
      Added value: +"Default: 4."
    • removedInput schema / properties / rows / title
      Removed value: -"Rows"
    • addedInput schema / properties / tile_size / description
      Added value: +"Default: 16."
    • removedInput schema / properties / tile_size / title
      Removed value: -"Tile Size"
    • removedInput schema / properties / tiles / anyOf
      Removed value: -[
      -  {
      -    "items": {
      -      "additionalProperties": true,
      -      "type": "object"
      -    },
      -    "type": "array"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedInput schema / properties / tiles / default
      Removed value: -null
    • addedInput schema / properties / tiles / items
      Added value: +{
      +  "additionalProperties": true,
      +  "type": "object"
      +}
    • removedInput schema / properties / tiles / title
      Removed value: -"Tiles"
    • addedInput schema / properties / tiles / type
      Added value: +"array"
    • removedInput schema / title
      Removed value: -"create_tileset_projectArguments"
  2. First observedv0.7.0

TDQS

A4.1/5.0
Behavior4/5

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

Annotations declare readOnlyHint=false and openWorldHint=false, so the mutation and closed-world profile is already known. The description adds real behavioral context beyond that: the grid is pre-filled with the first tile, and a workflow_manifest.v1 is returned with a tilemap block. It doesn't say whether an existing project is overwritten, but this is solid added value.

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?

Front-loaded with the core action, then scope, then return value in three tight sentences. The default-tileset aside is parenthetically compact. Slightly dense but no filler sentences.

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?

For a mutation tool with no output schema, the description covers what is created, the pre-fill behavior, and the returned manifest shape. The only notable omission is overwrite/idempotency behavior, but nothing critical to correct invocation is missing.

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

Parameters4/5

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

Schema coverage is 60%, with rows/columns/tile_size only carrying defaults and the 'tiles' array undocumented. The description compensates by explaining that columns×rows defines canvas size in tiles and that 'tiles' accepts either the default grass/dirt/water/stone set or a custom [{"name","color"}] list, giving the otherwise-bare parameter real meaning.

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?

States a specific verb ('Scaffold') and resource ('tilemap project'), then enumerates exactly what gets created: canvas, tilemap layer, starter tileset. This distinguishes it from siblings like create_tilemap_layer or create_sprite, which build only one component.

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

Usage Guidelines3/5

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

Usage is implied by the scaffold framing (start a new tilemap project), but there is no explicit when-to-use versus alternatives such as create_tilemap_layer or create_sprite, and no mention of prerequisites or when-not to use it. Adequate but with clear gaps.

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

Deploy Server

Other Tools