Skip to main content
Glama

Agent Einstein — Crypto & Market Intelligence

Polymarket Whale Trades

get_polymarket_whales
Read-onlyIdempotent

Large and unusually-early positions taken on Polymarket prediction markets, surfaced from the insider-detection scan.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum rows to return (1-25).

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNoRow cap applied to every list in this payload.
staleNoTrue when the snapshot is past its refresh interval.
reasonNoWhy the payload is absent, when `available` is false.
availableNoFalse when this call has no data — a snapshot that is not warm yet, a domain switched off, or an argument that was rejected. NOT an error, and NOT a statement about the market.
fetchedAtNoWhen the underlying snapshot was refreshed (epoch ms, or ISO-8601 for the Bitcoin cycle feed). Age matters: these are cached reads, not live queries.
truncatedNoPresent only when a list was cut to `limit`.
alertCountNoAlerts in this pass.
highRiskCountNoAlerts graded high risk.
insiderScanReportNoThe scan behind the alerts.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "additionalProperties": true,
      +  "properties": {
      +    "alertCount": {
      +      "description": "Alerts in this pass."
      +    },
      +    "available": {
      +      "description": "False when this call has no data — a snapshot that is not warm yet, a domain switched off, or an argument that was rejected. NOT an error, and NOT a statement about the market.",
      +      "type": "boolean"
      +    },
      +    "fetchedAt": {
      +      "description": "When the underlying snapshot was refreshed (epoch ms, or ISO-8601 for the Bitcoin cycle feed). Age matters: these are cached reads, not live queries."
      +    },
      +    "highRiskCount": {
      +      "description": "Alerts graded high risk."
      +    },
      +    "insiderScanReport": {
      +      "additionalProperties": true,
      +      "description": "The scan behind the alerts.",
      +      "properties": {
      +        "alerts": {
      +          "description": "Flagged positions.",
      +          "items": {},
      +          "type": "array"
      +        },
      +        "dataSourcesUsed": {
      +          "description": "Sources the scan read.",
      +          "items": {},
      +          "type": "array"
      +        },
      +        "marketAnomalies": {
      +          "description": "Market-level anomalies.",
      +          "items": {},
      +          "type": "array"
      +        },
      +        "marketsAnalyzed": {
      +          "description": "Markets examined."
      +        },
      +        "walletClusters": {
      +          "description": "Wallets that move together.",
      +          "items": {},
      +          "type": "array"
      +        },
      +        "walletsFlagged": {
      +          "description": "Wallets flagged."
      +        },
      +        "walletsScanned": {
      +          "description": "Wallets examined."
      +        },
      +        "whaleTransfers": {
      +          "description": "Large transfers into the flagged wallets.",
      +          "items": {},
      +          "type": "array"
      +        }
      +      }
      +    },
      +    "limit": {
      +      "description": "Row cap applied to every list in this payload.",
      +      "type": "number"
      +    },
      +    "reason": {
      +      "description": "Why the payload is absent, when `available` is false.",
      +      "type": "string"
      +    },
      +    "stale": {
      +      "description": "True when the snapshot is past its refresh interval."
      +    },
      +    "truncated": {
      +      "additionalProperties": true,
      +      "description": "Present only when a list was cut to `limit`.",
      +      "properties": {
      +        "limit": {
      +          "description": "The cap that was applied.",
      +          "type": "number"
      +        },
      +        "originalLengths": {
      +          "additionalProperties": true,
      +          "description": "Field name → its full length before the cut."
      +        }
      +      }
      +    }
      +  },
      +  "type": "object"
      +}
  2. Added

TDQS

A3.8/5.0
Behavior4/5

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

The annotations already disclose read-only, idempotent, and non-destructive behavior. The description adds meaningful context about selection criteria ('large and unusually-early positions') and provenance ('insider-detection scan'), which clarifies what data will be returned. It does not define thresholds or ordering, but that is not essential given the output 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?

A single dense sentence delivers the core resource, qualifiers, and data source without filler. Every phrase earns its place, and the most identifying information is front-loaded.

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?

Annotations, input schema, and output schema collectively cover safety, parameters, and return structure. The description supplies the market and data-source context needed to disambiguate from similar whale tools, though it could be slightly stronger with an explicit alternative or exclusion note.

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 only parameter, limit, is fully documented in the schema with a default and range (1-25), so the schema carries the semantic burden. The description adds no parameter-specific information, which is acceptable at 100% schema description coverage.

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?

The description identifies a specific resource—large and unusually-early positions on Polymarket prediction markets—and adds provenance from the insider-detection scan, which helps distinguish it from sibling whale-tracking tools by platform. It lacks an explicit retrieval verb like 'list' or 'get,' but the tool name and title make the action clear.

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

Usage Guidelines3/5

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

The description implies usage for Polymarket whale data sourced from insider-detection scanning, but it does not explicitly state when to choose this tool over alternatives such as get_hyperliquid_whales or track_whales. No exclusions or routing conditions are provided.

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.