Skip to main content
Glama

olympus-bets-analytics

get_performance_summary

Read-onlyIdempotent

Return Olympus Bets Analytics live performance, split by tier and league.

Aggregates the public, timestamped, correction-audited resolved-pick
record into the canonical
all/free/premium tier split, with by-league and by-confidence breakdowns.

Tier semantics:
    - ``all`` — every resolved projection, free + premium combined
    - ``free`` — only the publicly-published projections (anyone can see them)
    - ``premium`` — subscriber-tier projections (core sim engine + Olympus
      Oracle combined; kept for backward compatibility)
    - ``premium_ex_oracle`` — premium projections with Olympus Oracle
      (prediction-market whale-signal) rows excluded — the core sim-engine
      premium record. Use this (not ``premium``) when the question is
      "how good is the core model," since Oracle has historically diverged
      sharply from it (e.g. core +30.16u vs oracle -18.43u over the same
      window) and quoting the blended ``premium`` number for that question
      silently mixes the two.
    - ``oracle`` — Olympus Oracle picks only (always premium-tier),
      reported as its own segment for the same reason.
    - ``premium_leans`` — Premium Leans: flat 0.5u model disagreements
      with the price, published daily whether or not a Kelly-sized Play
      cleared qualification gates. Its own segment; NEVER counted inside
      ``premium`` or ``all`` (see ``services.track_record_stats.row_tier`` /
      ``services.performance_split.resolved_row_tier``, the single tier
      rule every surface — page, MCP, digest — shares).

Honest framing: all-time and rolling regimes are both available. Core
Premium and Oracle are separated so legacy or source-specific performance
cannot obscure the current production system. Both are published.

Args:
    tier: Optional tier filter. Omit to return all six segments.
    league: Optional league filter applied inside each requested tier.
    detail: ``summary`` omits breakdowns; ``full`` includes all breakdowns.
    window: ``all`` preserves the historical contract; rolling windows use
        the same canonical ledger, grading, tier, and source rules.

Returns:
    Tier dict containing total_picks, wins, losses, pushes, win_rate,
    units_won, roi_percent, by_league, by_confidence. The
    ``premium_leans`` segment additionally carries a ``note`` field
    explaining its flat-stake, own-column semantics.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
tierNo
detailNosummary
leagueNo
windowNoall

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / tier / anyOf
      Previous value: -[
      -  {
      -    "enum": [
      -      "all",
      -      "free",
      -      "premium",
      -      "premium_ex_oracle",
      -      "oracle"
      -    ],
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "enum": [
      +      "all",
      +      "free",
      +      "premium",
      +      "premium_ex_oracle",
      +      "oracle",
      +      "premium_leans"
      +    ],
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
  2. Changed1 schema field changed
    • addedInput schema / properties / window
      Added value: +{
      +  "default": "all",
      +  "enum": [
      +    "all",
      +    "30d",
      +    "60d",
      +    "90d"
      +  ],
      +  "title": "Window",
      +  "type": "string"
      +}
  3. Changed3 schema fields changed
    • addedInput schema / properties / detail
      Added value: +{
      +  "default": "summary",
      +  "enum": [
      +    "summary",
      +    "full"
      +  ],
      +  "title": "Detail",
      +  "type": "string"
      +}
    • addedInput schema / properties / league
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "title": "League"
      +}
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "additionalProperties": true,
      +  "title": "get_performance_summaryDictOutput",
      +  "type": "object"
      +}
  4. Changed1 schema field changed
    • changedInput schema / properties / tier / anyOf
      Previous value: -[
      -  {
      -    "enum": [
      -      "all",
      -      "free",
      -      "premium"
      -    ],
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "enum": [
      +      "all",
      +      "free",
      +      "premium",
      +      "premium_ex_oracle",
      +      "oracle"
      +    ],
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
  5. First observed

TDQS

A5/5.0
Behavior5/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, and the description does not contradict them. It adds behavioral context by describing the data source as 'public, timestamped, correction-audited resolved-pick record' and explains the rationale for separating core Premium from Oracle (honest framing). This goes beyond annotations to clarify data provenance and integrity.

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 highly structured, with headers, bullet lists, and semantic explanations for each tier. Every sentence adds essential context; there is no fluff. The purpose is front-loaded, followed by critical tier semantics, then argument and return details. The density is justified by the tool's complexity.

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 an output schema exists (though not shown), the description need not enumerate all return fields, yet it still lists the key ones (total_picks, wins, losses, pushes, win_rate, units_won, roi_percent, by_league, by_confidence) and adds the note field for premium_leans. It covers the tier semantics exhaustively and explains the domain-specific nuance, making it complete for accurate usage.

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 bears the full burden, and it delivers. The Args section explains each parameter: tier with full enum semantics, league as an optional filter, detail with summary/full distinction, and window with all vs rolling. It even explains the note field in the return for premium_leans. This far exceeds the schema's bare property list.

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 the tool returns live performance analytics split by tier and league, naming the resource and action precisely. The detailed tier semantics (all, free, premium, premium_ex_oracle, oracle, premium_leans) distinguish it from sibling tools like get_track_record and get_model_vs_market, making its unique scope explicit.

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 provides explicit when-to-use guidance, especially for choosing between premium and premium_ex_oracle, with a concrete example of why to prefer one over the other. It also clarifies that premium_leans is never counted inside premium or all, and explains the window semantics. This routes the agent to the correct tier for the user's intent.

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.