Skip to main content
Glama
ty-meador

civ-v-llm-harness

by ty-meador

set_swappable_great_work

Set a great work of a given class (writing, art, or artifact) as available for swapping, or clear it by passing -1. Manage swap offers in Civilization V.

Instructions

Swap tab pull-down: put one of our works of work_class (writing / art / artifact) up for swapping, or pass -1 to clear that spot. Candidates are culture_works().swap.ours[class].candidates.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
work_idNo
work_classYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.11.0

TDQS

B3.4/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It usefully discloses that -1 is a clearing sentinel and where candidates are drawn from, but says nothing about reversibility, permission/prerequisite conditions, or what the swap slot state looks like after the call.

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?

Two short sentences, front-loaded with the action and followed by the clearing rule and candidate source. Some phrasing ('Swap tab pull-down') is interface jargon that costs clarity without adding much.

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

Completeness3/5

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

For a two-parameter game action with no output schema and no annotations, the description covers the essentials but leaves work_id's positive-value semantics and the relationship to swap_great_works unexplained, which is a real gap for correct invocation.

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 0%, so the description must compensate. It supplies the enum for work_class (absent from the schema) and explains work_id = -1 as a clear sentinel, but never explains what a positive work_id refers to or how it relates to the candidates list.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (put a work up for swapping / clear the spot) and resource (a great work of a given class), and enumerates the work_class values (writing / art / artifact), which is more than the schema gives. It doesn't clearly separate itself from the sibling swap_great_works, so an agent still has to infer the division of labor.

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?

The '-1 to clear that spot' clause is genuine usage guidance for one parameter value, and pointing at culture_works().swap.ours[class].candidates tells the agent where candidates come from. However there is no explicit when-to-use-this vs swap_great_works guidance, so routing between the two swap tools is left to inference.

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