Skip to main content
Glama

AIsa Prediction Markets

Get Kalshi Markets

get_kalshi_markets
Read-onlyIdempotent

List markets on Kalshi, the CFTC-regulated US prediction exchange, with live bid/ask quotes in dollars. Use this when you need odds from a regulated venue, or to cross-check a Polymarket price against a second market; fetch specific markets with tickers (comma-separated), scope to a group with event_ticker / series_ticker, or narrow with status, search, and the created / close / settled timestamp ranges.

Returns markets[] with title, status, yes_bid_dollars / yes_ask_dollars, last_price_dollars, volume_fp, open_interest_fp, and rules_primary (the settlement criteria), plus a cursor to page with.

For executed fills rather than quotes, use get_kalshi_trades. For the crypto-native venue carrying similar questions, use get_polymarket_markets.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNoNumber of results per page. Defaults to 100. Maximum value is 1000.
cursorNoPagination cursor from the previous response.
searchNoSearch markets by keywords in title and description. Must be URL encoded (e.g., 'bitcoin%20price' for 'bitcoin price').
statusNoFilter markets by status.
tickersNoComma-separated Kalshi market tickers to retrieve.
mve_filterNoFilter by multivariate events.
event_tickerNoFilter by a single Kalshi event ticker.
max_close_tsNoFilter markets closing before this Unix timestamp.
min_close_tsNoFilter markets closing after this Unix timestamp.
series_tickerNoFilter by series ticker.
max_created_tsNoFilter markets created before this Unix timestamp.
max_settled_tsNoFilter markets settled before this Unix timestamp.
min_created_tsNoFilter markets created after this Unix timestamp.
min_settled_tsNoFilter markets settled after this Unix timestamp.
min_updated_tsNoFilter markets updated after this Unix timestamp.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already establish readOnly, idempotent, open-world, non-destructive behavior, so the bar is lower. The description adds genuinely new context: the tool returns live quotes rather than executed fills, the settlement criteria are exposed via rules_primary, and pagination is cursor-based. This enriches the agent's model of what the invocation produces without contradicting any annotation.

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?

Three tight paragraphs with clear structure: purpose/usage first, return shape second, alternatives third. Every sentence earns its place. The middle paragraph listing return fields is slightly redundant with the existing output schema, which costs a point, but the overall organization is strong and front-loaded.

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 read-only, zero-required-parameter list tool with a rich schema, annotations, and output schema, the description covers everything an agent needs: purpose, regulatory framing, when-to-use vs alternatives, filtering strategy, return fields, settlement criteria, and pagination. No critical gap remains; rate limits and error cases would be marginal additions.

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 baseline is 3. The description adds organizational value by grouping the 15 parameters into use-case clusters (fetch specific markets via tickers, scope via event_ticker/series_ticker, narrow via status/search/timestamp ranges), which helps an agent pick the right filter for its goal. This exceeds the baseline but does not add per-parameter detail 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 opens with a specific verb and resource — 'List markets on Kalshi' — and adds distinguishing qualifiers ('CFTC-regulated US prediction exchange', 'live bid/ask quotes in dollars') that separate it from the other market venues in the sibling list. It also explicitly names what it is not ('For executed fills rather than quotes, use get_kalshi_trades'), so an agent can disambiguate without opening schemas.

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?

Provides explicit when-to-use guidance ('Use this when you need odds from a regulated venue, or to cross-check a Polymarket price against a second market') and names both alternatives with the exact conditions that select them (get_kalshi_trades for fills, get_polymarket_markets for the crypto-native venue). Nothing 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.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources