Skip to main content
Glama
PublicDotCom

Public.com MCP Server

Official
by PublicDotCom

get_event_contract_bars

Read-only

Fetches historical price bars for up to 8 event contracts of one event, enabling charting of implied probabilities over time.

Instructions

Get price-history bars for up to 8 event contracts of one event.

Prices and OHLC values are in dollars (0.00 to 1.00) for the side the symbol names — a ".N" symbol carries the NO prices — and equal the implied probability (multiply by 100 for cents / percent). Bars start at the first period with a price, so charts in one response can start at different timestamps: align them by timestamp, not by index. A symbol is left out of the response when it is unknown or has no price in the period.

This endpoint takes the charting identifiers, not the discovery ones that get_event_summary / get_event_details use.

Args: event_id: The "-EVENT" grouping id the contracts belong to, e.g. "KALSHI.KXBALANCESHEET-EO26-EVENT". The API rejects an id that is not an -EVENT id. period: DAY, WEEK, MONTH, or ALL. Measured back from now, or from the event's close time once it has stopped trading. symbols: 1 to 8 "-EVENTCONTRACT" symbols of that event, e.g. ["KALSHI.KXBALANCESHEET-EO26-6.6.Y-EVENTCONTRACT"].

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
periodYes
symbolsYes
event_idYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.8.0

TDQS

A4.7/5.0
Behavior5/5

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

Adds substantial behavior beyond the readOnlyHint/destructiveHint=false annotations: prices are dollars 0.00-1.00 equal to implied probability, '.N' symbols carry NO prices, bars start at the first priced period so multiple series can start at different timestamps and must be aligned by timestamp not index, and unknown/unpriced symbols are silently dropped. These are exactly the caveats an agent needs to interpret the response.

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 highest-value semantics (price units and probability interpretation) before the argument details. Dense but purposeful; only the chart-alignment aside is slightly tangential, so it falls just short of perfectly tight.

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 3 required parameters, 0% schema coverage, and an output schema already present, the description supplies everything else an agent needs: parameter meaning, identifier routing, unit conventions, and dropped-symbol behavior. Return-value explanation is correctly left to the output schema.

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 description coverage is 0%, so the description carries the full burden and does so: event_id format and server-side validation, period's enum meaning including the 'measured back from now or from event close once trading stopped' nuance, and symbols' count range with a concrete example. Every parameter is meaningfully documented beyond the bare schema 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?

Opens with a specific verb and resource: 'Get price-history bars for up to 8 event contracts of one event.' It explicitly separates itself from siblings by noting it takes charting identifiers rather than the discovery identifiers used by get_event_summary / get_event_details. An agent can tell what this returns and how it differs from the discovery tools without opening a schema.

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 clear context on which identifiers to pass and warns that the API rejects non '-EVENT' ids, plus the 1-8 symbol bound. It does not explicitly contrast with the sibling get_price_history or state a when-not-to-use condition, but the identifier routing is a solid usage signal.

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