Skip to main content
Glama
poe2-build-planner

poe2-build-planner

by cornndawwg

Calculate a build with Path of Building

evaluate_build
Read-only

Evaluates a planned PoE2 build at a character level using Path of Building numbers, returning damage, survivability, resistances and a verdict with the weak point and what to fix first.

Instructions

Real numbers from Path of Building's calculation engine for a planned build at a character level: damage against normal monsters and against a boss, seconds to kill a normal/rare monster and a boss, hits you survive from monsters and bosses, life, energy shield, resistances (with the campaign's resistance penalty and only the quest rewards earned by that level), Spirit and attributes, plus a verdict band (Comfortable / Workable / Borderline / Not yet) with the weak point and what to fix first. Level 65+ is judged for early maps, T15 and juiced T16 (and pinnacle bosses when that's the goal). With goals (from build_intake) the targets follow the player's purpose and Hardcore, end-game gear follows their budget, and goalCheck says honestly whether the build is on track, rough or not realistic yet for what they want, with options to offer. setupGaps lists what the setup is missing (unused Spirit, no boss skill, no curse/mark/warcry/banner). At level 65+ the assumed rares get resistance mods added to cap resistances, as players do in maps. Damage is broken down into hits, ignite, poison, bleed and minions. By default it assumes budget rare gear for that level (a few mid-roll mods per slot, based on terms and defence), including a budget jewel in each allocated jewel socket; pass items to use specific uniques (by name) or pasted item text in their slots (jewels too), or gear: "none" for no gear. Missing connecting passives are filled in (and listed), and "+5 to any Attribute" passives are spent where the gems and weapon need them. gearTier sets how good the assumed rares are (budget, mid or high). Extras: an amulet anoint and a helmet instill (helmetInstill, via a Raven-Touched Shard), runes, soul cores and idols (socketables), a skill from a Lament/Portent/Absent Amulet with no Spirit cost (amuletSkill), unique flasks and charms (flasks, with flasksActive), and a weaponSwap set with its own weapons, passives and skills. Timeless jewels (Heroic Tragedy, Undying Hate) aren't calculated by Path of Building for PoE2 yet. To compare options side by side, use compare_builds. Numbers are estimates: assumed gear and heuristic bands, not guarantees. Windows only for now.

Input Schema

NameRequiredDescriptionDefault
gearNo
avoidNo
classYesClass or ascendancy name
goalsNoThe player's goals from build_intake: stricter targets, an honest goalCheck, and budget-matched end-game gear
itemsNoSpecific items; each replaces the assumed item in its slot. Jewels go in the tree's allocated jewel sockets.
labelNoShort name for this variant on the dashboard, e.g. "Firestorm + Wildsurge"
levelYes
termsNoWhat the build scales, for the assumed gear (as for stat_priorities)
anointNoNotable to anoint on the amulet (Liquid Emotions), e.g. "Potent Incantation"
flasksNoUnique flasks and charms by name (or item text); plain life/mana flasks are assumed otherwise
skillsYes
defenceNoDefence layers for the assumed gear (default: life)
pobCodeNoAlso return a Path of Building code for this build (to open, check or share in PoB)
weaponsNoWeapon item classes to assume, e.g. ["Staff"], ["Wand", "Focus"], ["One Hand Mace", "Shield"]
gearTierNoQuality of the assumed rares: budget (mid rolls), mid (good rolls, more mods), high (perfect rolls, full mods). Wins over goals.budget; without either, budget. goals.budget only raises end-game (65+) gear, so at campaign levels all three budgets look the same.
passivesYesMain-tree passives taken by this level (key, id or exact name); missing connectors are added
mainSkillNo0-based index of the main damage skill (default 0)
ascendancyNo
weaponSwapNoWeapon swap: a second weapon set with its own passives and skills
amuletSkillNoA skill granted with no Spirit cost by a Lament, Portent or Absent Amulet (replaces the amulet), e.g. "Herald of Ash"
socketablesNoRunes, soul cores and idols to socket, by slot
flasksActiveNoCalculate with flasks active
helmetInstillNoNotable to instill on the helmet via a Raven-Touched Shard (level 60+, expensive)
ascendancyPassivesNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv0.7.0-beta
    • addedInput schema / properties / label
      Added value: +{
      +  "description": "Short name for this variant on the dashboard, e.g. \"Firestorm + Wildsurge\"",
      +  "maxLength": 80,
      +  "type": "string"
      +}
    • addedInput schema / properties / pobCode
      Added value: +{
      +  "description": "Also return a Path of Building code for this build (to open, check or share in PoB)",
      +  "type": "boolean"
      +}
  2. Changed1 schema field changedv0.6.0-beta
    • changedInput schema / properties / gearTier / description
      Previous value: -"Quality of the assumed rares: budget (default, mid rolls), mid (good rolls, more mods), high (perfect rolls, full mods)"New value: +"Quality of the assumed rares: budget (mid rolls), mid (good rolls, more mods), high (perfect rolls, full mods). Wins over goals.budget; without either, budget. goals.budget only raises end-game (65+) gear, so at campaign levels all three budgets look the same."
  3. First observedv0.5.0

TDQS

A4.6/5.0
Behavior5/5

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

With only readOnlyHint available, the description carries and discharges the burden: it discloses default gear assumptions, that missing connecting passives are auto-filled and listed, that resistance mods are added to assumed rares at 65+, that timeless jewels are not calculable in PoE2, that results are heuristic estimates, and that it is Windows-only. That is unusually rich behavioral disclosure.

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?

Outcome-first ordering is correct — metrics and verdict band lead, caveats and edge cases trail. It is a dense two-block wall of text, however, and asides like 'as players do in maps' could be trimmed without losing information.

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?

For a 24-parameter, nested-object tool with no output schema, the description covers both the input contract (defaults, overrides, precedence) and the return payload (goalCheck, setupGaps, damage breakdown, verdict band with weak point). Nothing needed to call it correctly or interpret the response 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?

At 75% schema coverage the baseline is 3, but the description adds real semantics: `gearTier` beats `goals.budget`, `goals.budget` only lifts end-game gear so campaign levels look identical across budgets, `items` replace the assumed item per slot with jewels going to allocated sockets, and `terms`/`defence` drive assumed gear. Some parameters (`avoid`, `label`, `ascendancy`, `pobCode`) get no mention in the description.

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?

Opens with a specific verb and resource — real numbers from PoB's engine for a planned build at a character level — then enumerates the exact returned metrics (damage, TTK, EHP, resistances, verdict band). An agent can distinguish this from compare_builds, check_build or optimize_build without opening any schema.

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?

Explicitly routes the agent to compare_builds for side-by-side option comparison and to build_intake for `goals`, and states which levels get map/pinnacle judging (65+). No explicit when-not-to-use or prerequisites section (e.g. that a PoB install is required is only implied by 'Windows only'), 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.