Skip to main content
Glama
Coinversaa

Coinversaa Pulse

Official

live_cohort_bias_history

Retrieve historical cohort bias data for any coin to see hourly net-bias snapshots across tiers. Answers which smart-money cohorts were accumulating or exiting.

Instructions

Get historical cohort bias data for a specific coin. Use this when a user asks 'were smart-money cohorts accumulating or exiting?' or 'which tier flipped first?'. Returns hourly net-bias snapshots for each tier or for a specific tier over time.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
useToonFormatNoReturn data in compact toon format (default: true). Set to false for standard JSON.
coinYesCoin symbol (e.g. BTC, ETH, SOL)
tierTypeNoTier category: 'pnl' for profit tiers, 'size' for volume tierspnl
tierNoSpecific tier to track. Omit for all tiers in the category.
hoursNoNumber of hours of history (default 168 = 7 days, max 720 = 30 days)

Implementation Reference

  • src/index.ts:1047-1067 (registration)
    Registration of tool 'live_cohort_bias_history' on the MCP server. It registers the tool name, description, input schema (coin, tierType, tier, hours params), and the async handler that calls the backend API at /live/cohort-bias-history/{coin}.
    // ══════════════════════════════════════════════════════════
    // TOOL 38: Cohort Bias History
    // ══════════════════════════════════════════════════════════
    if (shouldRegister("live_cohort_bias_history")) server.registerTool(
      "live_cohort_bias_history",
      {
        description: "Get historical cohort bias data for a specific coin. Use this when a user asks 'were smart-money cohorts accumulating or exiting?' or 'which tier flipped first?'. Returns hourly net-bias snapshots for each tier or for a specific tier over time.",
        inputSchema: {
          useToonFormat: useToonFormatSchema,
          coin: z.string().min(1).max(20).describe("Coin symbol (e.g. BTC, ETH, SOL)"),
          tierType: z.enum(["pnl", "size"]).default("pnl").describe("Tier category: 'pnl' for profit tiers, 'size' for volume tiers"),
          tier: tierSchema.optional().describe("Specific tier to track. Omit for all tiers in the category."),
          hours: z.number().min(1).max(720).default(168).describe("Number of hours of history (default 168 = 7 days, max 720 = 30 days)"),
        },
      },
      async ({ useToonFormat, coin, tierType, tier, hours }) => {
        const params: Record<string, string> = { hours: String(hours), tierType };
        if (tier) params.tier = tier;
        return toolResult(await callAPI(useToonFormat, `/live/cohort-bias-history/${coin.toUpperCase()}`, params));
      }
    );
  • Input schema for live_cohort_bias_history: coin (string 1-20 chars), tierType (enum 'pnl'|'size' with default 'pnl'), tier (optional tierSchema enum), hours (number 1-720, default 168).
    description: "Get historical cohort bias data for a specific coin. Use this when a user asks 'were smart-money cohorts accumulating or exiting?' or 'which tier flipped first?'. Returns hourly net-bias snapshots for each tier or for a specific tier over time.",
    inputSchema: {
      useToonFormat: useToonFormatSchema,
      coin: z.string().min(1).max(20).describe("Coin symbol (e.g. BTC, ETH, SOL)"),
      tierType: z.enum(["pnl", "size"]).default("pnl").describe("Tier category: 'pnl' for profit tiers, 'size' for volume tiers"),
      tier: tierSchema.optional().describe("Specific tier to track. Omit for all tiers in the category."),
      hours: z.number().min(1).max(720).default(168).describe("Number of hours of history (default 168 = 7 days, max 720 = 30 days)"),
    },
  • Handler function for live_cohort_bias_history. Constructs params with hours and tierType, optionally includes tier, then calls the Coinversa API at /live/cohort-bias-history/{coin} with those query params.
    async ({ useToonFormat, coin, tierType, tier, hours }) => {
      const params: Record<string, string> = { hours: String(hours), tierType };
      if (tier) params.tier = tier;
      return toolResult(await callAPI(useToonFormat, `/live/cohort-bias-history/${coin.toUpperCase()}`, params));
    }
Behavior3/5

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

The description explains that output is hourly net-bias snapshots for tiers over time, which is helpful. However, with no annotations, additional behavioral traits like read-only nature, auth needs, or error handling are not disclosed. Adequate but not rich.

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?

Three concise sentences: purpose, usage examples, output format. No fluff, front-loaded with key information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the basic output and parameters, but lacks details on bias interpretation (positive/negative), units, or data shape. With no output schema, these details would improve completeness for agent usage.

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%, but the description adds context by linking tier parameter to user queries and explaining output granularity. This provides value beyond the schema's param descriptions.

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 retrieves historical cohort bias data for a specific coin, with example queries. It distinguishes from sibling tools like live_cohort_bias (likely current data) and pulse_cohort_bias_history (different data source).

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?

Explicit use cases are provided ('were smart-money cohorts accumulating or exiting?', 'which tier flipped first?'), indicating when to use this tool. No explicit when-not or alternatives, but the examples naturally imply it's for historical queries.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Coinversaa/mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server