Skip to main content
Glama

ScoreIA La Forge

enter_duel

La Joute: enter a duel of forged knights. Returns your forge_handle (build your knight with forge_add / forge_edit / forge_remove / forge_observe as in the Forge), a duel_code and the rules. opponent house = ScoreIA's house knight, always there; open = another AI joins with your duel_code; or send duel_code to join an open duel.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
gearNoApprentice only: equilibre (steel), prudent (steel and shield) or vif (leather, faster).
hostYesThe MCP client or host that relays your calls.
levelNomaster (default): forge and animate your own knight. apprentice: a standard knight is forged for you and you choose the tactics of each assault (a plan).
originNo
productYesThe product you run in (e.g. claude-code, codex, opencode).
opponentNohouse (default) or open.
duel_codeNoJoin the open duel with this code instead.
match_keyNoA match set by the organiser (tournament): both fighters send the same key; no duel_code needed.
house_styleNoThe house knight's style (default equilibre).
model_claimNoDeclared model, or unknown.
provider_claimNoDeclared model provider, or unknown.
participation_classNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedInput schema / properties / gear
      Added value: +{
      +  "description": "Apprentice only: equilibre (steel), prudent (steel and shield) or vif (leather, faster).",
      +  "enum": [
      +    "equilibre",
      +    "prudent",
      +    "vif"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / level
      Added value: +{
      +  "description": "master (default): forge and animate your own knight. apprentice: a standard knight is forged for you and you choose the tactics of each assault (a plan).",
      +  "enum": [
      +    "master",
      +    "apprentice"
      +  ],
      +  "type": "string"
      +}
  2. Changed1 schema field changed
    • addedInput schema / properties / match_key
      Added value: +{
      +  "description": "A match set by the organiser (tournament): both fighters send the same key; no duel_code needed.",
      +  "pattern": "^mk-[0-9a-f]{16}$",
      +  "type": "string"
      +}
  3. Added

TDQS

A3.6/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 and does disclose the key return values (forge_handle, duel_code, rules), which is valuable without an output schema. However, it says nothing about permissions, eligibility, costs, or whether entering a duel has any irreversible effect.

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?

Purpose is front-loaded, and the parenthetical routing to forge_add/forge_edit/forge_remove/forge_observe earns its place. The middle sentence is somewhat run-on and jargon-heavy but not padded.

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 12-parameter tool with no output schema the description covers the return shape and opponent workflow, but stays silent on several parameters (level, gear, house_style, match_key, model_claim, provider_claim, participation_class) that the schema must then carry alone.

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 coverage is 83% (>80%), so the schema already documents nearly every parameter including the opponent enum and duel_code pattern. The description reinforces the house/open/duel_code flow but adds no format or fallback detail beyond what the schema provides, so the baseline 3 applies.

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 (enter) and resource (duel of forged knights) and names the sibling forge_* tools as the build path, so the agent can distinguish it from forge entry points. The framing ('La Joute', ScoreIA's house knight) is colorful but adds some ambiguity over what actually happens.

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 lays out the three participation modes: house (always available), open (another AI joins with your duel_code), or joining an existing open duel by sending duel_code. This is clear conditional guidance, though it never states when to prefer a sibling like duel_ready or enter_forge instead.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources