Skip to main content
Glama
YElwiddi

Warcraft 3 MCP Server

by YElwiddi

Place a doodad

wc3_place_doodad

Place a doodad or destructible at specified (x,y) coordinates on a Warcraft III map. Uses a 4-character type code and saves the map.

Instructions

Add a doodad/destructable at (x,y). Type is a 4-char code, e.g. "LTlt" (a tree) or "ATtr" (a rock). Saves the map.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
mapPathYesAbsolute path to the .w3x/.w3m map file
typeYes4-char doodad/destructable code
xYes
yYes
zNo
angleNoFacing in degrees; default 270
scaleNo
variationNo
lifeNoLife as a percent; default 100
outPathNoOutput map path. Defaults to "<map>.edited.<ext>" beside the source; pass the source path to overwrite in place.
Behavior2/5

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

With no annotations provided, the description bears full responsibility for behavioral disclosure. It only states 'saves the map' but omits important traits like whether placement overwrites existing doodads, validates type codes, or requires the map to be loaded. This is insufficient for a mutation tool.

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 extremely concise: two short sentences that immediately convey the action and key details. No filler, every word earns its place.

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

Completeness2/5

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

Given the tool has 10 parameters, no output schema, and no annotations, the description is too sparse. It lacks critical context such as behavior when z or scale are omitted, the effect of variation and life, or whether the map is saved synchronously. An agent would need more detail to use this tool confidently.

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 50% (5 of 10 parameters described). The description adds examples for the 'type' parameter and clarifies that x,y are coordinates, but does not explain z, scale, variation, or angle beyond the schema. It provides moderate added value, meeting the baseline for this coverage level.

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 the tool adds a doodad/destructable at coordinates (x,y), provides example type codes 'LTlt' and 'ATtr', and notes it saves the map. This distinguishes it from sibling tools like wc3_place_unit and wc3_delete_doodad.

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

Usage Guidelines2/5

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

The description offers no explicit guidance on when to use this tool versus alternatives like wc3_place_unit or wc3_modify_doodad. No conditions, prerequisites, or exclusions are mentioned, leaving the agent to infer usage context.

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/YElwiddi/warcraft-3-mcp-server'

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