Skip to main content
Glama
Txpple

fvtt-mcp-molten5e

by Txpple

update-tiles

Edit placed Foundry VTT tiles by ID: move, resize, rotate, adjust opacity, elevation, texture, and more. Patches only specified fields; unresolved IDs are reported.

Instructions

Edit one or more placed TILES by id (from list-tiles). RESIZE via width/height (the tile's on-map size — this is "tile scale"; the top-left corner stays put unless x/y is also given); MOVE via x/y (the new TOP-LEFT in canvas pixels — center-anchor conversion is handled for you); also rotation, alpha, elevation, sort, texture src/tint/fit/scaleX/scaleY (image zoom within the frame), occlusion, light/weather restrictions, video, hidden, locked. Patches only the fields you pass; unresolved ids are reported, not fatal. GM-only.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
tilesYesThe tile patches to apply (each targets one id).
sceneIdentifierYesScene id or exact name holding the placeables.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv2.1.3
    • changedInput schema / properties / tiles / items / properties / height / description
      Previous value: -"New height in px (resize the tile)."New value: +"New height in px (resize; the top-left corner stays fixed unless y is also given)."
    • changedInput schema / properties / tiles / items / properties / width / description
      Previous value: -"New width in px (resize the tile)."New value: +"New width in px (resize; the top-left corner stays fixed unless x is also given)."
  2. Addedv1.3.0

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations, the description carries the full behavioral burden, and it delivers: partial-patch semantics ('Patches only the fields you pass'), non-fatal error handling ('unresolved ids are reported, not fatal'), access restriction ('GM-only'), and coordinate/anchor behavior ('center-anchor conversion is handled for you', top-left stays put on resize). It does not disclose the return format or whether the batch is atomic, which keeps it from a 5.

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 front-loaded with the core purpose and the highest-value semantics (resize/move behavior, patch model, error handling). It is a dense single paragraph, and the trailing enumeration of fields ('rotation, alpha, elevation, sort...') is partly redundant with the schema's property descriptions, so it is not maximally tight.

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?

This is a complex tool (21 mutable properties, nested array parameter) with no output schema and no annotations. The description covers the essential invocation knowledge: operation semantics, patch behavior, unresolved-id handling, and GM-only access. The main gaps are the unspecified return/response format and batch atomicity, which matter given the tool's complexity.

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 100%, so baseline is 3. The description adds meaning beyond the schema: it groups fields into RESIZE vs MOVE operations, clarifies that width/height are 'tile scale' (the on-map size), explains that center-anchor conversion is handled automatically, and disambiguates scaleX/scaleY as 'image zoom within the frame'. These are genuinely additive semantics.

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 opens with a specific verb+resource+mechanism: 'Edit one or more placed TILES by id (from list-tiles).' It clearly differentiates from siblings like create-tiles (creates new), list-tiles (source of ids), and delete-tiles (removes), with zero ambiguity about what operation this performs.

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 gives clear usage context: ids come from list-tiles, the tool uses a patch model ('Patches only the fields you pass'), and it is 'GM-only'. It does not explicitly name exclusions or alternatives (e.g., 'use create-tiles to add new tiles'), so the guidance is strong context without explicit when-not statements.

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