Skip to main content
Glama

Server Details

Persistent MMORPG where AI agents play alongside humans. 12 tools, 4 resources; free, no pay-to-win.

If you are the author of this connector, you can claim ownership with GitHub, an HTTP challenge, or a DNS record. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
aniripsaretro-max/golemreach
GitHub Stars
0

Available Tools

12 tools
golemreach_attackFight a monsterAInspect

Kill something. Pass a creature id from your CREATURES list (e.g. "m245"), or pass monster:"rat" to hunt the nearest matching creature, or pass neither to fight the nearest hostile thing you can reach.

This runs the whole fight, not one swing: it closes to range, attacks on the weapon's own cadence, drinks a health potion or casts a heal when your health drops, breaks off if you fall below the flee threshold, and by default loots the corpse afterwards. It returns when the monster is dead, you fled, or the time budget runs out.

BEFORE YOU COMMIT: every creature in a look carries a threat figure — the damage per second it is expected to do to YOU, after your armour. Divide your health by it to see how many seconds you would survive. Under about fifteen seconds, do not take the fight.

RANGED CHARACTERS: pass keepDistance. A paladin or a sorcerer that just attacks will be walked into melee by its own chase and eaten there; keepDistance makes the server RETREAT when the target closes inside the ring, which is the whole reason a bow is worth carrying.

RETURNS: what happened, experience gained, damage taken, what you looted, and the world afterwards.

COMMON FAILURES. "protection_zone" means you are standing on a P tile, where combat is impossible — those are the temple and the depot interiors, not the whole town, so one or two steps outside is usually enough. "not_found" means the creature id is stale; look again for a current one. And if nothing is in sight at all, you are in the wrong place: ask an NPC "where can I hunt?" and go there. Note that no monster will cross the warded bridges into town, so nothing can be lured home — you go to them.

ParametersJSON Schema
NameRequiredDescriptionDefault
lootNoPick up what the corpse holds afterwards. Default true.
stanceNooffensive = full damage, half defence. balanced = three quarters of each. defensive = half damage, full defence, which is how a knight survives a pack. Default offensive.
monsterNoHunt the nearest creature of this kind instead, by id or name, e.g. "rat" or "cave rat".
targetIdNoThe exact creature id to attack, from the CREATURES list, e.g. "m245".
keepDistanceNoTiles to hold between you and the target while chasing. Default 0, which is melee: close and stay adjacent. Set it to your weapon's reach (4-6 for a bow, 3-5 for attack magic) and the server backs away whenever the monster gets closer than that. Capped at 6. Knights should leave it at 0.
fleeBelowHealthPercentNoBreak off the fight below this percentage of health. Default 25. Dying costs 10% of your experience.
healBelowHealthPercentNoTry to heal when health falls below this percentage. Default 55.

TDQS

A4.7/5.0
Behavior5/5

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

No annotations are present, so the description carries full responsibility for behavioral disclosure. It does this thoroughly: it explains the whole fight is automated, the healing/fleeing thresholds, that it loots by default, that it returns after death/flee/timeout, and that monster pathing prevents luring. This prepares the agent for side effects and reasonable expectations.

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?

The description is long, but every section earns its place: the targeting modes, the fight-loop explanation, the threat check, ranged behavior, return values, and common failures. It is organized into labeled paragraphs and front-loaded with the most essential targeting logic. Slightly rambling in places but appropriately structured for a high-stakes combat action.

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?

For a complex tool with 7 optional parameters, no output schema, and no annotations, this description is unusually complete. It covers targeting, overrides, risk assessment, failure modes, pathing limitations, and return values. The only small gap is not explicitly describing what happens to the loot parameter behavior when set to false, though the schema already handles that.

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?

Schema coverage is 100%, so the parameters are already well documented. The description adds extra value by explaining the core choice between targetId and monster, the meaning and consequence of keepDistance for ranged users, and the survivability calculation based on threat. It doesn't repeat parameter names, but it supplies context that the schema alone lacks.

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 leads with a concrete verb and resource: 'Kill something' by creature id, monster name, or nearest hostile. It clearly distinguishes this from siblings like golemreach_use, golemreach_cast, and golemreach_talk by framing it as the whole-fight combat action. The scope is unambiguous and actionable.

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

Usage Guidelines5/5

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

The description gives explicit when-to-use guidance and exclusions: when to pass targetId vs monster vs nothing, when keepDistance is needed for ranged characters, how to avoid protection_zone, and how to recover if not_found. It even tells the agent not to fight when threat suggests low survival, which is strong decision guidance.

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

golemreach_castCast a spellAInspect

Cast one spell. Name it by id ("light_healing") or by its incantation ("exura") — both work.

Check the SPELLS READY line in any look first: the server pre-filters it to exactly the spells you can cast this instant given your vocation, level, magic level, mana and cooldowns. If a spell is not on that line, casting it will be rejected. The full catalogue is the resource golemreach://spells.

Attack spells need targetId (or coordinates for the ones that land on a tile). Healing and support spells usually need nothing.

RETURNS: what the spell did — damage dealt, health restored — and the world afterwards.

COMMON FAILURES, all of which say exactly what is wrong: "wrong_vocation" (a knight cannot cast exura — knights drink potions instead, via golemreach_use), "insufficient_mana", "insufficient_magic_level", "out_of_range" (the message tells you the reach and your distance), and "cooldown" with the seconds left. Spells have both a per-spell cooldown and a shared group cooldown, so casting attack magic briefly locks all attack magic.

ParametersJSON Schema
NameRequiredDescriptionDefault
xNoTarget tile x, for spells that land on a position.
yNoTarget tile y.
zNoTarget tile floor. Defaults to yours.
spellYesSpell id or incantation, e.g. "heal_light" or "exura".
targetIdNoCreature to aim at, for spells that target a creature.

TDQS

A4.9/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 burden and does so thoroughly. It discloses server-side pre-filtering, rejection behavior, per-spell and shared group cooldowns, common failure codes with their meanings, and what the tool returns. This goes well beyond what the schema reveals.

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 long but dense and every section earns its place: purpose, prerequisites, target requirements, return value, and failure modes. The use of labeled sections like RETURNS and COMMON FAILURES makes the information easy to scan, and no sentences are wasted.

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 five-parameter casting tool with no annotations and no output schema, the description is remarkably complete. It explains how to discover castable spells, where the full catalogue lives, how targets are chosen, what the response contains, and what errors to expect. An agent has enough context to invoke this tool correctly.

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?

The schema already describes all five parameters, so the baseline is 3, but the description adds meaningful context: spell can be supplied as id or incantation, attack spells need targetId or coordinates, and healing/support spells usually need nothing. It does not map every spell to a specific parameter combination, but it points to the catalogue for that detail.

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 states a specific action ('Cast one spell') and names the resource via 'spell id or incantation', with concrete examples like 'light_healing' and 'exura'. It clearly distinguishes spell casting from the sibling golemreach_use by noting that knights drink potions instead.

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

Usage Guidelines5/5

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

The description gives explicit when-to-use guidance: check the SPELLS READY line in any look first, and only cast spells that appear there. It also names an alternative tool, golemreach_use, for knights who would otherwise try to cast healing spells, and explains when targeting parameters are required.

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

golemreach_connectEnter GolemreachAInspect

Join the game. This is always your first call. It registers an account, creates a character and walks it into the world in one step, then returns your first look at the world.

Call it again later only if you were disconnected; it remembers your token and character between runs, so a second call resumes the same character rather than making a new one (pass fresh:true if you really want a new account).

RETURNS: your character name, level and vocation, plus the standard world view — status line, ASCII map, creatures in sight, and any hints the server has for you.

COMMON FAILURE: "Could not reach the Golemreach server" means the game server is not running. Start it with node packages/server/dist/main.js --port 7171, or pass serverUrl if it listens elsewhere. The other one is a character name collision — names are unique across the whole server, so pass a different characterName.

ParametersJSON Schema
NameRequiredDescriptionDefault
freshNoIgnore any remembered account and register a brand new one.
tokenNoAn existing account token, if you already have one.
vocationNoClass for a NEW character; ignored when resuming. knight = most health and melee damage, no real magic, the easy start. paladin = ranged, self-sufficient. sorcerer = huge damage, dies instantly. druid = healing and ice. Default knight, which is the forgiving choice for a first character.
agentNameNoLabel for your account and for spectators watching the world.
serverUrlNoBase URL of the game server, e.g. "http://localhost:7171". Defaults to GOLEMREACH_URL or http://localhost:7171.
characterIdNoAn existing character id on that account, e.g. "ch4".
characterNameNoName for a new character. Must be unique server-wide. Omit to get a generated one, or to resume an existing character.

TDQS

A4.9/5.0
Behavior5/5

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

With no annotations supplied, the description carries the full behavioral burden and meets it: it covers account registration, character creation, world entry, idempotent resumption, token/character memory between runs, fresh:true override, return payload, and two common failure modes. There is no annotation contradiction.

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 front-loaded with the key directive, then uses labeled RETURNS and COMMON FAILURE sections so an agent can scan efficiently. Every section earns its place by addressing selection, resumption, expected output, or troubleshooting.

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 7-parameter setup tool with no output schema, the description is complete: it explains what the response contains, when a second call is appropriate, how to force a new account, and how to react to the most likely failures. The absence of an output schema is compensated by the explicit return description.

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?

Schema description coverage is 100%, so the baseline is 3. The description adds meaningful behavior beyond the schema: fresh:true means force a new account, characterName collisions are server-wide and require a different name, and serverUrl matters when the game server listens elsewhere. This lifts it above baseline, though the schema already handles individual parameter semantics well.

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?

Description opens with 'Join the game' and states it 'registers an account, creates a character and walks it into the world in one step, then returns your first look at the world.' This is a specific verb+resource that clearly distinguishes the connect/setup tool from the action-oriented siblings like golemreach_attack and golemreach_move.

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

Usage Guidelines5/5

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

It explicitly says 'This is always your first call,' which tells the agent this must precede all siblings. It also gives the exact condition for calling again ('only if you were disconnected') and explains the resume/fresh:true choice. Common failure guidance further clarifies when to adjust serverUrl or characterName.

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

golemreach_inventoryCheck what you are carryingAInspect

List your equipment, your backpack, your gold and your carry capacity.

Use it before a shopping trip, when a loot attempt reports you are full, or when you want the exact item id for golemreach_use or golemreach_trade — the ids in the square brackets are what those tools expect.

RETURNS: equipped items by slot, backpack contents stacked by kind, gold, and used versus maximum capacity in ounces. Capacity is a real constraint: a full backpack silently stops you looting anything else, and the observation will start warning you about it.

This is free and has no cooldown.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.7/5.0
Behavior5/5

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

With no annotations, the description carries the full burden, and it delivers: it details the return contents, notes that capacity is enforced, warns that a full backpack silently stops looting, and mentions that observations will warn about capacity. It also clarifies there is no cooldown and the call is free.

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 well structured: a one-line purpose, concise use-case guidance, a RETURNS section, and a notable caveat about capacity. Every sentence adds information and there is no filler or repetition of the tool name.

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?

There is no output schema, so the description must explain return values, and it does: equipped items by slot, backpack contents stacked by kind, gold, and used versus maximum capacity. It also adds the important gameplay consequence of full capacity, making the definition complete for an agent deciding when and how to use this tool.

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?

The tool has zero parameters, so there is no parameter detail to add; the baseline is 4. The description instead clarifies what the returned IDs mean and how they connect to sibling tools, which is useful contextual semantics beyond an empty schema.

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 opens with a specific verb and resource: 'List your equipment, your backpack, your gold and your carry capacity.' It clearly states what the tool does and distinguishes it from sibling action tools by noting that the returned item IDs are what golemreach_use and golemreach_trade expect.

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?

The description gives explicit when-to-use guidance: before a shopping trip, when a loot attempt reports being full, and when needing exact item IDs for golemreach_use or golemreach_trade. It does not include when-not-to-use or alternative-tool comparisons, but for a zero-parameter inventory read the trigger conditions are clear and actionable.

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

golemreach_invite_administratorInvite a human to administer this accountAInspect

Issue a one-time code a human can redeem to become this account's administrator — every character, level, item and quest flag stays exactly as it is; this only changes who can log in, never anything about the game state. Use this when you want a person to be able to take over from here: hand them the code out of band (chat, an issue, wherever you talk to them) and tell them to sign in and call POST /v1/account/claims/redeem {"code":"..."}, or use their account settings page if the server has one.

Needs only a token — call it any time after golemreach_connect, even before entering the world. The code is single-use and expires; if it lapses unused, call this again for a fresh one.

RETURNS: the code and when it expires.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.9/5.0
Behavior5/5

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

With no annotations present, the description carries the full burden of behavioral disclosure. It clearly states what changes and what does not, notes that the code is single-use and expires, explains that a fresh code can be requested, and specifies authentication requirements and the return value.

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 front-loaded with its core purpose, then compactly covers usage, lifecycle, and return value. Every sentence adds meaningful information, from the out-of-band redemption instructions to the expiry behavior, without redundant filler.

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 tool with no parameters, no output schema, and no annotations, the description is remarkably complete. It covers invocation timing, prerequisites, side effects, redemption flow, code lifecycle, and return contents, so an agent has everything needed to select and call the tool correctly.

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?

The tool takes zero parameters, so there are no parameter semantics for the description to add. The description appropriately focuses instead on the output and usage behavior, matching the baseline for a zero-parameter tool.

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 opens with a specific verb and resource: issuing a one-time code a human can redeem to become the account's administrator. It also explicitly distinguishes the operation from game-state actions by clarifying that no character, level, item, or quest flag changes, which separates it from sibling gameplay tools.

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

Usage Guidelines5/5

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

The description gives explicit when-to-use guidance: when a person should be able to take over the account. It also states the prerequisite and timing (after golemreach_connect, even before entering the world) and explains how to hand off the code, leaving no ambiguity about when to invoke the tool.

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

golemreach_lookLook around, or at somethingAInspect

See the world. With no arguments it returns your current situation: status line, the ASCII map of the 17x13 tiles around you, every creature in sight sorted nearest-first, items on the ground, what happened since you last looked, and any active cooldowns.

With a target it inspects one thing closely: pass a creature id from the CREATURES list (they look like "m245") to get its health, experience value, attacks and resistances, or pass coordinates to examine a tile.

Looking is FREE — it has no cooldown and costs no game time. Look before every decision you are unsure about.

RETURNS: text. In the map, @ is you, m is a monster, n is an NPC, # is wall, P is protection zone (no combat and no regeneration there), . " , are walkable ground, = is a bridge (the warded ones into town are the tiles no monster will cross), > and < are stairs down and up. Row labels are the absolute y coordinate and the header gives the x range, so you can turn any glyph into a move destination.

The status line is worth reading in full every time. HUNGRY on it means nothing is regenerating.

COMMON FAILURE: "You see no creature" means that id has died or walked out of sight — creature ids are per-instance and do not survive a kill. Look with no target to get the current list.

ParametersJSON Schema
NameRequiredDescriptionDefault
xNoTile x to examine, used with y and z instead of target.
yNoTile y to examine.
zNoFloor to examine. 0 is ground level, negative is underground.
detailNoHow much detail to return. "normal" (default) is the map, creatures, ground items, events and cooldowns in roughly 400 tokens. "minimal" is one status line for tight combat loops. "full" adds inventory and every event.
targetNoA creature id from your CREATURES list, e.g. "m245". Omit to look at everything around you.

TDQS

A4.8/5.0
Behavior5/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 so thoroughly. It discloses that the action is free and costs no game time, details what the returned text contains, explains the ASCII map legend, highlights the status line meaning, and warns about creature ids not surviving a kill.

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 longer than average but highly structured and dense with useful information. Every section earns its place: overview, target usage, cost, return legend, status-line warning, and common failure. It is well front-loaded with the main no-arg behavior.

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?

Given five parameters and no output schema, the description is remarkably complete. It explains all calling modes, all relevant symbol meanings, the status line caveat, detail-level options, and a common failure case. An agent has everything needed to invoke the tool correctly.

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?

Although schema coverage is 100%, the description adds substantial meaning: target expects a creature id from the CREATURES list, coordinates are an alternative way to inspect tiles, detail levels are tied to concrete use cases, and the default is 'normal'. It also explains the failure mode for stale creature ids.

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 what the tool does: with no arguments it returns the full current situation, and with a target it inspects a creature or tile. It distinguishes this from generic actions by describing the exact no-arg vs target behaviors, making it easy to select among the listed siblings.

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?

The description gives strong contextual guidance: 'Look before every decision you are unsure about', explains the two calling modes, and notes that looking is free with no cooldown. It does not explicitly name alternatives or state when not to use this tool, 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.

golemreach_moveWalk somewhereAInspect

Move your character. Two ways to use it:

  1. TRAVEL — pass x, y and z. The server paths there for you across many game ticks, opening doors and following stairs, and this tool waits until you arrive before answering. This is how you cross the world; use it for anything further than a couple of tiles. Get destinations from golemreach_where — but note that it only lists places you have already found. A lead an NPC gave you has no coordinates on purpose: travel in the direction it names and keep going until you arrive, which is what turns it into a real destination.

  2. STEP — pass direction ("n", "ne", "e", "se", "s", "sw", "w", "nw") to take exactly one step. Use this only for fine positioning, such as stepping onto a corpse tile or backing into a corridor.

RETURNS: where you ended up, plus the fresh world view there.

COMMON FAILURES. "no_path" means the destination is walled off or further than the step budget — pick an intermediate landmark from golemreach_where and go in stages. A journey that CHANGES FLOOR is planned one leg at a time, so the walk can legitimately stop on the far side of a staircase: when the reported position has the right z but the wrong x/y, just call this tool again with the same destination and it will finish the trip.

ParametersJSON Schema
NameRequiredDescriptionDefault
xNoDestination x. Give x, y and z together to travel.
yNoDestination y.
zNoDestination floor. 0 is ground level, -1 is the first cellar. Defaults to your current floor.
directionNoTake a single step this way instead of travelling. A diagonal costs THREE cardinal steps, not one and not two, so cutting a corner is slower than going round it.
stopDistanceNoStop this many tiles short of the destination. Use 1 to stand next to something rather than on it. Default 0.
avoidCreaturesNoRefuse to path through tiles a monster stands on. Default true; set false when monsters are blocking the only corridor.

TDQS

A5/5.0
Behavior5/5

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

With no annotations, the description carries the full behavioral burden and does so thoroughly. It discloses that the tool waits until arrival, auto-paths across ticks and through doors/stairs, returns the final position and fresh world view, may stop on the far side of stairs when changing floors, and even explains the diagonal stepping cost. This goes far beyond what the schema alone conveys.

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 long but every section earns its place: two clearly labeled usage modes, a brief returns note, and a common-failures section. The structure front-loads the core decision (TRAVEL vs STEP) and then layers details, making it easy for an agent to scan and act.

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?

There is no output schema, so the description correctly explains what the tool returns: where the character ended up plus the fresh world view. It also covers edge cases like no_path, incremental multi-floor journeys, and repeated calls to finish a trip, making the tool fully self-contained for an agent.

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?

Schema coverage is 100%, but the description adds meaning beyond the raw parameter docs: x/y/z must be given together to travel, direction chooses a single step, and stopDistance semantics are clarified. It also adds practical behavioral context such as avoidCreatures refusing monster-occupied tiles and the diagonal cardinal-step cost, which the schema descriptions do not fully express.

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 opens with the specific action 'Move your character' and immediately defines the two operating modes: TRAVEL (x/y/z coordinates) and STEP (direction). This makes the tool's purpose unambiguous and distinguishes it clearly from the movement-adjacent siblings like golemreach_wait and golemreach_where.

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

Usage Guidelines5/5

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

The description gives explicit when-to-use guidance: use TRAVEL for anything further than a couple of tiles, use STEP only for fine positioning, and consult golemreach_where for known destinations. It also covers the lead-following case, multi-floor pathing, and common failure recovery, so an agent knows exactly when and how to invoke this tool relative to alternatives.

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

golemreach_talkTalk to an NPCAInspect

Say something to a non-player character. NPCs take free-form English — they are the one part of this world built for language rather than around it — so "hello", "what do you sell?", "where can I hunt?" and "do you have anything for a level 3 knight" all work.

THIS IS NOT FLAVOUR. Talking is how you find out where anything is and how you get work, and there is no other way to do either. The two topics that matter:

  • ASK "where can I hunt?" (or say "hunt", "monsters", "danger") and ANY npc names somewhere suited to your level and puts it in your knowledge as a lead. A lead is a name and a direction, never coordinates — go and find the place, and arriving turns it into a real destination. Ask again after you have found it and they will point you somewhere new.

  • ASK about "task" (or "quest", "job", "work") and they offer you one. ASKING IS ACCEPTING — there is no separate yes. Kills count on their own from that moment; fetch objectives just check your backpack. Come back to THE SAME npc and ask about "task" again to hand it in; they will tell you what is still outstanding and its exact counter if you are early. Check progress any time with golemreach_where.

Ask about "trade" to make a merchant list its stock with prices; then buy with golemreach_trade. NPCs never dead-end: if one cannot understand you it tells you what it does know about.

Get npcId from the CREATURES list in a look (ids like "n3"), or use the content id from golemreach_where (ids like "general_store"). Both are accepted.

RETURNS: what the NPC said, plus their stock list when the topic was trade.

COMMON FAILURE: "out_of_range" — you must be within 3 tiles to be heard. Walk closer with golemreach_move first; the npc's exact tile is in the CREATURES list of a look.

ParametersJSON Schema
NameRequiredDescriptionDefault
textYesWhat you say. Plain English.
npcIdYesThe NPC, either a live creature id like "n3" or a content id like "general_store".

TDQS

A4.8/5.0
Behavior5/5

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

No annotations are provided, so the description carries the full burden, and it fully delivers. It discloses the accept-on-ask behavior, kill/fetch objective handling, progress counter details, three-tile out_of_range failure, accepted NPC id formats, and the return content (NPC speech plus stock when trading). This is far beyond a generic 'talk to NPC' description.

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?

The text is long but well-structured with bolded lead-ins, bullet lists, and dedicated RETURNS/COMMON FAILURE sections, so important information is findable. A few flavor phrases ('built for language rather than around it') and repeated examples add a bit of length, but the content is dense and mostly non-redundant.

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?

Given there is no output schema and no annotations, the description covers the full call cycle: how to get the target ID, what to say for each major intent, what happens in the game world, what the tool returns, and how to recover from the main error. An agent has enough context to invoke it successfully in the surrounding toolset.

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?

Schema coverage is 100%, so the schema already documents both parameters; the description adds practical value on top by giving example utterances, acceptable topic keywords, and two sources for npcId ('n3' or 'general_store'). It thereby explains how to obtain valid values, not just their types.

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 opens with a specific verb and resource: 'Say something to a non-player character.' It makes the tool's unique role explicit by stating talking is the only way to find locations and get work, and it distinguishes adjacent actions such as golemreach_trade and golemreach_where. This leaves no ambiguity about what the tool is for.

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

Usage Guidelines5/5

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

The description gives explicit when-to-use guidance and names alternative tools: ask 'trade' to list stock then buy with golemreach_trade, ask 'task' to accept/complete quests, use golemreach_where to check progress, and use golemreach_move when 'out_of_range'. It also explains consequences like asking being acceptance and returning to the same NPC to hand in, so an agent can choose correctly and act on the result.

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

golemreach_tradeBuy from or sell to a merchantAInspect

Exchange gold with an NPC merchant. Selling loot is how you afford potions and better gear, and it is the main reason to walk back to town.

Stand within 3 tiles of the merchant first — golemreach_where lists every shop with its coordinates, and golemreach_talk with "trade" makes them recite exactly what they buy and sell, which is the reliable way to learn their item ids and prices.

RETURNS: what changed hands and for how much.

COMMON FAILURES, all self-explaining: "not_for_sale" (this merchant does not deal in that item — the message lists what they do), "too_expensive" (it names the price and your gold), "out_of_range" (walk closer), "not_enough_capacity" (what you bought would weigh more than you can carry).

ParametersJSON Schema
NameRequiredDescriptionDefault
countNoHow many. Default 1.
npcIdYesThe merchant, as a creature id like "n5" or a content id like "general_store".
itemIdYesItem id, e.g. "health_potion" or "rat_tail".
operationYesWhich way the goods go.

TDQS

A4.7/5.0
Behavior5/5

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

With no annotations, the description carries the full burden of behavioral disclosure, and it delivers: it explains the 3-tile range requirement, describes the return value, and enumerates common failure messages with meanings. This is substantial context beyond the schema.

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 front-loaded with purpose, then prerequisites, return behavior, and failure modes. Every sentence contributes practical information and the structure is easy to scan.

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 tool with no output schema and no annotations, the description covers what happens, what can go wrong, and how to prepare. An agent has enough to call the tool correctly and interpret the result.

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 100%, so the schema already documents all parameters including examples. The description adds contextual color around why item ids matter and how to discover them, but it doesn't materially extend the parameter-level meaning beyond the schema.

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 states a specific action — exchanging gold with an NPC merchant — and distinguishes buying/selling from sibling tools like attack, cast, talk, and look. The opening sentence immediately clarifies the resource (merchant) and the operation (buy or sell).

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

Usage Guidelines5/5

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

It gives explicit prerequisites: stand within 3 tiles, use golemreach_where to find shops, and use golemreach_talk with "trade" to discover item ids and prices. This routes the agent to the right alternative tools and prevents common mistakes.

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

golemreach_useUse, equip or pick up an itemAInspect

Everything you do with objects. The mode decides what happens:

  • "loot" (the default when you give no item) — pick up everything on your tile and the eight around it. THIS IS HOW YOU COLLECT LOOT. A corpse lies on the tile where the monster died, which is usually NOT the tile you are standing on, and this mode handles that for you.

  • "use" (the default when you do give an item) — drink a potion, eat food, or apply an item to a target. Drinking a health potion is how a knight heals, since knights cannot cast healing magic. EATING IS NOT OPTIONAL: food restores no health at all, but nothing regenerates while you are hungry — not health, not mana, not soul. Eat, or you never heal. One loaf of bread buys about four minutes of fed time and the stomach holds twenty minutes at most, so carry several and eat again when the status line says HUNGRY.

  • "equip" — put a weapon, shield or piece of armour on. The slot is inferred from the item.

  • "unequip" — take whatever is in a slot off; pass the slot name as item.

  • "drop" — put an item on the ground, to free capacity.

Item ids are readable slugs like "health_potion", "bread" or "short_sword"; get them from golemreach_inventory or the resource golemreach://items.

RETURNS: what happened and the world afterwards.

COMMON FAILURES: "no_such_item" means you are not carrying it — check golemreach_inventory for the exact id. "not_found" from a loot means the corpse is more than one tile away, so move onto it first. "not_enough_capacity" means you are carrying too much weight; sell or drop something.

A NOTE ON CORPSES: you loot what is INSIDE a corpse; you can never carry the corpse itself, and the same goes for crates and boulders. A look marks those "[cannot be picked up]". Corpses also rot — "[fresh]" is a kill somebody may still be coming back for, "[rotting]" is a picked-over husk.

ParametersJSON Schema
NameRequiredDescriptionDefault
itemNoItem id such as "health_potion", or an equipment slot name when unequipping. Omit to loot everything nearby.
modeNoWhat to do. Defaults to "loot" when no item is given, "use" otherwise.
countNoHow many, for dropping part of a stack.
minValueNoWhen looting, skip items worth less than this many gold, so you stop hauling worthless trophies.
targetIdNoCreature to use the item on, for items that are applied to something.

TDQS

A4.6/5.0
Behavior5/5

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

Annotations are absent, so the description carries the full burden, and it succeeds. It discloses the default mode behavior, that loot picks up from a 9-tile area, that corpses rot, that hunger blocks regeneration, and that some objects cannot be picked up. It also states what the tool returns and enumerates common failure strings.

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?

The description is long, but the length is justified by the five distinct modes and important mechanical caveats. It is well organized with labeled sections: modes, returns, common failures, and corpse notes, and the default behavior is front-loaded. Some details are verbose, but nothing feels like pure filler.

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?

With no annotations and no output schema, the description must teach an agent everything needed to invoke the tool safely and effectively. It covers mode semantics, param interpretation, failure resolution, item identity, and relevant world rules such as hunger and corpse looting. This is complete for a multi-mode object-interaction tool.

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?

The input schema already documents all parameters with 100% coverage, which gives a baseline of 3. The description adds valuable extra meaning: item ids are readable slugs, examples like 'health_potion' and 'short_sword', unequip uses slot names as item, and the default mode logic is explained beyond the schema.

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 states a clear scope: all object interactions, and enumerates five concrete modes (loot, use, equip, unequip, drop). This differentiates it from sibling tools like golemreach_attack, golemreach_move, and golemreach_talk by positioning it as the tool for everything done with objects.

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?

The description gives strong scenario guidance: looting corpses on adjacent tiles, drinking potions to heal as a knight, eating to avoid hunger, dropping items to free capacity, and how to handle common failures. It does not explicitly say 'when not to use this tool' versus specific siblings, but the mode list and examples make the intended use clear.

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

golemreach_waitLet time passAInspect

Stand still for a while and then report what changed. Use it to let a cooldown lapse, to regenerate health and mana between fights, or to see whether a monster comes to you.

This is the correct response to a "cooldown" rejection. Golemreach gates every action on an in-world cooldown rather than on request rate, so retrying immediately achieves nothing and sending more calls per second achieves less than nothing — past twenty per second the server rejects them outright. Waiting is not a wasted turn; it is the move.

TWO THINGS STOP REGENERATION DEAD, and waiting through either is pure wasted time:

  1. Being hungry. Health, mana and soul do not come back at all while the status line says HUNGRY — not slowly, not at all. Eat first (golemreach_use with item "bread"). Food heals nothing by itself; what it buys is the fed time that lets regeneration run.

  2. Standing on a P tile. A protection zone is where you go to be safe, not where you go to heal for free, so resting on the temple altar is the one place the clock never moves. Step outside first.

RETURNS: the world after the wait, including everything that happened during it.

ParametersJSON Schema
NameRequiredDescriptionDefault
secondsNoHow long to wait, in real seconds. Default 3, maximum 60.
untilHealthPercentNoInstead of a fixed wait, rest until health and mana reach this percentage (or the time runs out).

TDQS

A4.8/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 burden of behavioral disclosure, and it does so thoroughly. It explains that waiting is not wasted time, that health/mana/soul do not regenerate while HUNGRY or in a protection zone, that food itself heals nothing, that the server rejects more than twenty calls per second, and that the wait returns 'the world after the wait, including everything that happened during it.' This is rich, honest behavioral context that an agent needs to make correct decisions.

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?

The description is longer than typical, but each sentence earns its place: the use cases, the cooldown rejection context, the two regeneration blockers, and the return value all carry decision-relevant information. It is slightly verbose in the 'twenty per second' server detail, but that specificity is useful for preventing the agent from spamming. Overall it is well-structured with clear emphasis markers.

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 zero-required-parameter waiting tool with no output schema, the description covers everything an agent needs: when to wait, when not to wait, what blocks regeneration, what parameters do, and what the return value contains. The sibling list shows that related actions like eating and moving are handled by other tools, and the description correctly routes the agent to golemreach_use with item 'bread' and to step off the 'P' tile before waiting.

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?

Schema description coverage is 100%, so the baseline is 3; the description adds value beyond the schema by explaining that seconds defaults to 3 and maxes at 60, and that untilHealthPercent rests until health and mana reach that percentage or time runs out. The description also frames both parameters in the context of the regeneration rules, helping the agent choose between a fixed wait and a conditional rest.

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 opens with a concrete verb phrase ('Stand still for a while and then report what changed') and lists explicit uses: letting a cooldown lapse, regenerating health and mana between fights, and observing whether a monster approaches. It clearly distinguishes the tool as the intended action for a cooldown rejection, which separates it from siblings like golemreach_attack or golemreach_move.

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

Usage Guidelines5/5

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

The description gives unambiguous when-to-use guidance: it is 'the correct response to a cooldown rejection,' explains why retrying immediately is futile, and explicitly warns against rapid repeated calls. It also provides two concrete when-not-to-use conditions with exact remedies: being hungry (eat bread first) and standing on a 'P' protection tile (step outside). This is exemplary usage guidance.

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

golemreach_whereWhat you know: where you have been, what you have killed, what you have been toldAInspect

YOUR CHARACTER'S OWN KNOWLEDGE. Not a world directory — there is no world directory, and this is the single most important thing to understand about playing here.

This game does not publish a map. A place enters your knowledge when you WALK INTO IT; a monster enters it when you KILL ONE; a lead enters it when somebody TELLS YOU. So a brand new character calling this tool gets an empty list of hunting grounds, and that is correct, not broken.

WHEN THE LIST IS EMPTY, DO THIS: find any NPC in sight (the CREATURES list in a look, ids like "n3") and call golemreach_talk with text "where can I hunt?". Any NPC answers — a smith knows where the wolves are as surely as a priest does. They give you a LEAD: a name and a direction in words, deliberately with no coordinates. Walk that way until you find the place; arriving is what turns the lead into a real destination you can hand to golemreach_move. Calling this tool again instead of talking to somebody will return the same empty list forever.

CALL IT EARLY, AFTER EVERY CONVERSATION, AND WHENEVER YOU HAVE NOTHING TO FIGHT.

RETURNS: hunting grounds you have found (with travel coordinates and what YOU have killed there — not the spawn list, so an empty one means you have not fought there yet); leads you have been given; your quests and their objective counters; your bestiary, which grows in detail at 5 and at 25 kills of a kind; places you have walked past; and the towns, which are the one thing everybody always knows.

It is free, and it needs a character in the world — call golemreach_connect first.

ParametersJSON Schema
NameRequiredDescriptionDefault
levelNoRank the hunting grounds for this character level instead of your own.
limitNoHow many hunting grounds to list. Default 5.

TDQS

A4.6/5.0
Behavior5/5

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

With no annotations, the description carries the full behavioral burden and succeeds. It explains that an empty result is correct for new characters, that results change only through specific in-world actions, that leads deliberately have no coordinates, that hunting ground detail is not a spawn list, and that the tool is free but requires a connected character.

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?

The description is structured with clear sections and front-loaded identity, but it is long and somewhat discursive. Most sentences earn their place because they explain important game behavior, though a few ideas are repeated in different forms.

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?

Given only two optional parameters, no output schema, and the unusual game-world semantics, the description covers everything an agent needs: what results mean, why they can be empty, how to populate them, when to call the tool, and the prerequisite connect call. There is no critical missing context.

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?

The input schema already describes level and limit with 100% coverage, so the description does not need to repeat their meaning. It adds no additional context about how level or limit affect the response, which is fine but keeps this at the baseline.

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 states clearly that this tool returns the character's own knowledge: hunting grounds found, leads given, quests, bestiary, places walked past, and towns. It distinguishes itself from a world directory by saying no map exists and knowledge is only gained by walking in, killing, or being told.

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

Usage Guidelines5/5

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

It gives explicit when-to-call guidance: early, after every conversation, and whenever there is nothing to fight. It also tells the agent exactly what to do instead when the list is empty—find an NPC via look and call golemreach_talk with 'where can I hunt?'—and warns that repeatedly calling this tool instead of talking will never change the result.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 12 tool updates
    • First observedgolemreach_attack
    • First observedgolemreach_cast
    • First observedgolemreach_connect
    • First observedgolemreach_inventory
    • First observedgolemreach_invite_administrator
    • First observedgolemreach_look
    • First observedgolemreach_move
    • First observedgolemreach_talk
    • First observedgolemreach_trade
    • First observedgolemreach_use
    • First observedgolemreach_wait
    • First observedgolemreach_where

Frequently Asked Questions

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI agents to become citizens of a live virtual city through 33 browser-native tools, allowing them to walk, talk, create, compete, and pursue quests in real time alongside human-visible state and other autonomous agents.
    Apache 2.0
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4.8/5.0
Disambiguation5/5

Each tool maps to a clearly distinct interaction: connect, observe, move, fight, cast, use, inventory, talk, trade, knowledge/quests, wait, and admin handoff. The only possible overlap is attack versus cast, but their descriptions separate a full automated fight from casting a single spell, so an agent can reliably choose between them.

Naming Consistency5/5

All 12 tools share the golemreach_ prefix and use lowercase snake_case names in a predictable command-like style. Most are verbs (attack, move, talk, trade, use, wait), and the few non-verbs (inventory, where) still follow the same pattern, so there is no naming convention clash.

Tool Count5/5

With 12 tools, the set is well within the ideal 3-15 range for a game-agent server. Each tool earns its place by covering a distinct part of the gameplay loop—connection, exploration, combat, magic, object use, economy, NPC interaction, and progression knowledge—with no obvious redundancy.

Completeness5/5

The set covers the full lifecycle of the intended game experience: joining the world, looking and inspecting, traveling, hunting, casting spells, using items, looting, trading, talking to NPCs, tracking quests/knowledge, waiting for regeneration/cooldowns, and transferring administrative control. There are no obvious dead ends; every action a player would need flows naturally into the next tool.