Skip to main content
Glama

Coin comparison

coin_comparison
Read-onlyIdempotent

Two or three coins side by side, every check at once: for each, how often a buy fell 30% or more before the window was out and where the middle one ended, how often a leveraged month ended with nothing, whether spreading the entry won, how often a stop-loss sold a buy that ended in profit, and how much it moves with bitcoin. Nothing is ranked and no coin is called better. Spot and perpetual tapes, fees charged.

Use when two or three coins are being compared or chosen between. For one coin or one question the specific check gives more detail: drawdown_check, leverage_survival, averaging_in_check, stop_loss_check, diversification_check.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
daysYes90, 365 (default) or 730.
coinsYesTwo or three tickers, comma-separated: BTC,ETH,SOL. Kept in the order sent.
leverageYesFor the leverage row. Default 25.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
okNofalse when we do not hold that data. Never a zero standing in for an answer.
rowsNoPer coin: the drawdown, leverage, averaging-in and stop-loss answers, and its correlation with bitcoin (null for bitcoin itself).
errorNono_data when ok is false.
modelNoThe method, stated.
reasonNoWhy, in one sentence, and what we do have instead.
sourceNoThe public files these numbers come from.
try_insteadNoWhen ok is false: the closest call that does answer, ready to send (tool, arguments, and what changed).
same_coin_inNoWhen ok is false because this tool lacks the coin: the other tools that hold it, each with arguments ready to send.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • addedInput schema / examples
      Added value: +[
      +  {
      +    "coins": [
      +      "btc",
      +      "eth"
      +    ]
      +  }
      +]
    • addedOutput schema / properties / same_coin_in
      Added value: +{
      +  "description": "When ok is false because this tool lacks the coin: the other tools that hold it, each with arguments ready to send.",
      +  "type": "array"
      +}
    • addedOutput schema / properties / try_instead
      Added value: +{
      +  "description": "When ok is false: the closest call that does answer, ready to send (tool, arguments, and what changed).",
      +  "type": "object"
      +}
  2. Changed3 schema fields changed
    • addedInput schema / properties / days / default
      Added value: +365
    • addedInput schema / properties / days / enum
      Added value: +[
      +  90,
      +  365,
      +  730
      +]
    • addedInput schema / properties / leverage / default
      Added value: +25
  3. First observed

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already cover readOnly/idempotent/non-destructive/openWorld=false, so the description focuses on what annotations cannot express: data comes from both spot and perpetual tapes, fees are charged, and results are unranked. It stops short of disclosing cost/latency or pagination, but the added behavioral context is substantive.

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?

Purpose is front-loaded and the usage/routing guidance follows in its own short paragraph, which is good structure. The opening sentence is a dense comma-chained enumeration of five checks, which is informative but makes the reader parse a long list before reaching the distinctiveness statement.

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?

An output schema exists, so return values need not be explained. For a multi-check comparative tool the description supplies scope, tape sources, fee treatment, the 'no ranking' caveat, and sibling routing — enough for an agent to call it correctly and interpret results.

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?

Schema description coverage is 100%, so the schema already documents days, coins format, and leverage default. The description only restates the 2-3 coin constraint and order preservation, adding no syntax or format detail beyond the schema. Baseline 3 is appropriate.

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 names the resource (two or three coins) and the exact scope of the operation (every check at once: drawdown, leverage survival, averaging-in, stop-loss, bitcoin correlation). It is immediately distinguishable from the single-check siblings it names, and the 'Nothing is ranked' clause clarifies what the tool does not do.

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?

Explicit routing rule: 'Use when two or three coins are being compared or chosen between', with the negative case spelled out — for one coin or one question, use the specific check, and six alternatives are enumerated by name. 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