Skip to main content
Glama
Txpple

fvtt-mcp-molten5e

by Txpple

update-walls

Edit walls in Foundry VTT scenes by ID: flip doors to secret, open/lock them, change movement/light/sight/sound blocking, or move segments. Patches only fields you provide.

Instructions

Edit one or more WALLS by id (from list-walls): flip a door to secret (door:2), open/close/LOCK it (ds: 0/1/2), change what it blocks (move/light/sight/sound: 0 none / 10 limited / 20 normal / 30 proximity / 40 distance), set one-way dir, doorSound, or proximity thresholds; MOVE by giving the full segment (all of x0,y0,x1,y1 or c:[4] — a wall never half-moves). Patches only the fields you pass; an off-enum value skips that patch with a warning. GM-only.

Input Schema

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

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed6 schema fields changedv2.1.3
    • removedInput schema / properties / walls / items / properties / thresholdLight / anyOf
      Removed value: -[
      -  {
      -    "type": "number"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedInput schema / properties / walls / items / properties / thresholdLight / type
      Added value: +[
      +  "number",
      +  "null"
      +]
    • removedInput schema / properties / walls / items / properties / thresholdSight / anyOf
      Removed value: -[
      -  {
      -    "type": "number"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedInput schema / properties / walls / items / properties / thresholdSight / type
      Added value: +[
      +  "number",
      +  "null"
      +]
    • removedInput schema / properties / walls / items / properties / thresholdSound / anyOf
      Removed value: -[
      -  {
      -    "type": "number"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedInput schema / properties / walls / items / properties / thresholdSound / type
      Added value: +[
      +  "number",
      +  "null"
      +]
  2. Addedv1.3.0

TDQS

A4.7/5.0
Behavior5/5

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

With no annotations provided, the description carries the full behavioral burden and handles it well: it discloses GM-only authorization, partial-patch semantics ('Patches only the fields you pass'), validation behavior ('an off-enum value skips that patch with a warning'), and the move atomicity constraint ('a wall never half-moves').

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense but well-organized, front-loading the core action before enumerating fields. Each clause carries useful information, and the GM-only and patch-behavior notes are placed at the end without wasting space.

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?

The description covers the essential call semantics, id sourcing, move constraints, and warning behavior. It does not describe the return value or what happens on invalid ids, but for a patch tool with a rich schema, the provided context is largely sufficient.

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

Parameters5/5

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

Despite 100% schema coverage, the description adds real semantic value: it maps door:2 to 'secret', ds values to open/close/LOCK, blocking values to their meanings, and explains that MOVE requires the full segment. It also clarifies the practical effect of off-enum values on patching.

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 clearly states 'Edit one or more WALLS by id' and enumerates the supported operations, including door state, blocking senses, movement, and direction. It also points to list-walls as the id source, which distinguishes this mutation tool from the listing sibling.

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?

It gives clear context: edit existing walls by id, with ids sourced from list-walls, and notes GM-only access. It does not explicitly contrast with create-walls or delete-walls, but the intended use is clear and no misleading alternatives are suggested.

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