Skip to main content
Glama

Resolve a bet in words

resolve_market
Read-onlyIdempotent

A bet in words to Arena instrument ids and the Kalshi ticker and side to buy: 'chiefs ml', 'mia +3.5', 'kc mia under 44.5 sunday'. Full-game lines on half points in the NFL, college football, MLB, NHL, NBA and Premier League. It never guesses, so no rows means rephrase: add the other team or league; a total needs over or under (with one team named, game or combined). Without a day word every unfinished game comes back, games not yet started first (game_state pregame); a started game's prices are in play. To hold what the words ask, buy kalshi[].buy_side on kalshi[].ticker, or pass instrument_id with instrument_side = query_side. Store instrument_id as given.

Input Schema

NameRequiredDescriptionDefault
fullNo
limitNoDefault 5, max 25.
queryYesThe bet in words.

Output Schema

NameRequiredDescriptionDefault
countNo
queryNo
instrumentsNo
without_dayNo
empty_reasonNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/openWorld/non-destructive, so the safety profile is covered. The description adds real behavioral context beyond them: it never guesses, no rows signals a rephrase, without a day word all unfinished games return with pregame first, and a started game's prices are in play. It still omits any latency/rate-limit caveats, keeping it at 4.

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?

Front-loads the purpose, then layer-by-layer adds query syntax, failure modes, and how to act on results — every sentence carries information. It is a dense single block with no whitespace or bullet structure, which slightly hurts scannability but not substance.

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 read-only resolver with an output schema, the description still adds value by telling the agent how to act on results (buy kalshi[].buy_side on kalshi[].ticker, or pass instrument_id with instrument_side = query_side) and to store instrument_id as given. Coverage is strong, though the unexplained `full` param leaves a small gap.

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 67% and `query`'s only schema text is the useless 'The bet in words.' The description compensates heavily with query construction rules (team names, spread, over/under, day words, league qualifiers), adding meaning the schema lacks. The `full` parameter is never explained in either place, which holds this below 5.

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 and resource — mapping a natural-language bet ('chiefs ml', 'mia +3.5') to Arena instrument ids plus the Kalshi ticker and side to buy. The purpose is unmistakable and distinct in spirit from id-based siblings like get_market. It stops short of naming an alternative tool (e.g., search_markets), so it does not fully earn a 5.

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?

Gives concrete usage context: 'no rows means rephrase: add the other team or league; a total needs over or under', and explains day-word behavior and default ordering. This is rich when-to-use guidance. It does not explicitly route the agent away from alternatives such as search_markets, so it sits below the 5 bar.

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