Skip to main content
Glama

Ichimoku Signal

Ichimoku Cloud signal ($0.01 via x402)

ichimoku_signal
Read-only

Paid ($0.01 via x402 in USDC on Base, Solana, Monad, Polygon, Arbitrum, Avalanche, Algorand or Stellar, in RLUSD on the XRP Ledger, or in USD₮0 on X Layer): the full Ichimoku Cloud signal for a crypto pair on any timeframe (1m to 1M): bullish/bearish/neutral, cloud position, tenkan/kijun cross, price and tenkan, kijun, senkou span A/B values. A "news" field flags recent news (hack, delisting, unlock, legal action) that can break the signal. One pair, Ichimoku only: for six indicators use confluence_signal, for entry/stop/targets price_levels. Requires an x402-capable MCP client; invalid pairs are rejected before payment.

Input Schema

NameRequiredDescriptionDefault
pairYesCrypto pair, e.g. BTC-USDT, SOL-USDT, TAO-USDT or ETHUSDT (Binance.US, then Kraken, Gate and MEXC: covers the top 200 coins). For the XRP Ledger DEX: xrpl:XRP-RLUSD, xrpl:SOLO-XRP, or with the issuer, xrpl:SOLO.rsoLo2S1kiGeCcn6hCUXVrCpGMWLrRrLZz-XRP
intervalNoCandle interval, default 1h

Output Schema

NameRequiredDescriptionDefault
newsNoOnly when the news check is on: news from the last 72 hours that can break a technical signal (TypeSafe Jev). The signal itself never changes; treat high as a reason to wait.
pairNoThe pair, e.g. BTC-USDT
priceNoLast price
signalNobullish, bearish or neutral (absent on the payment requirement)
acceptsNoOnly on an unpaid call: the x402 payment options
intervalNoCandle interval, e.g. 1h, 4h, 1d
kijun_senNo
timestampNo
tenkan_senNo
cloud_positionNo
tenkan_kijun_crossNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changed
    • removedInput schema / additionalProperties
      Removed value: -false
    • changedOutput schema / additionalProperties
      Previous value: -trueNew value: +{}
    • changedOutput schema / properties / accepts / anyOf
      Previous value: -[
      -  {
      -    "items": {
      -      "additionalProperties": {},
      -      "type": "object"
      -    },
      -    "type": "array"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "items": {
      +      "additionalProperties": {},
      +      "propertyNames": {
      +        "type": "string"
      +      },
      +      "type": "object"
      +    },
      +    "type": "array"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • changedOutput schema / properties / news / anyOf
      Previous value: -[
      -  {
      -    "additionalProperties": true,
      -    "properties": {
      -      "checked_headlines": {
      -        "type": "number"
      -      },
      -      "headlines": {
      -        "description": "Up to 3 recent headlines naming the coin, with url and published",
      -        "items": {
      -          "additionalProperties": {},
      -          "type": "object"
      -        },
      -        "type": "array"
      -      },
      -      "probability": {
      -        "type": [
      -          "number",
      -          "null"
      -        ]
      -      },
      -      "risk": {
      -        "description": "high: a headline reports a hack, delisting, unlock, legal action or similar for this coin; elevated: maybe; none: nothing found",
      -        "enum": [
      -          "high",
      -          "elevated",
      -          "none"
      -        ],
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "risk"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "additionalProperties": {},
      +    "properties": {
      +      "checked_headlines": {
      +        "type": "number"
      +      },
      +      "headlines": {
      +        "description": "Up to 3 recent headlines naming the coin, with url and published",
      +        "items": {
      +          "additionalProperties": {},
      +          "propertyNames": {
      +            "type": "string"
      +          },
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "probability": {
      +        "type": [
      +          "number",
      +          "null"
      +        ]
      +      },
      +      "risk": {
      +        "description": "high: a headline reports a hack, delisting, unlock, legal action or similar for this coin; elevated: maybe; none: nothing found",
      +        "enum": [
      +          "high",
      +          "elevated",
      +          "none"
      +        ],
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "risk"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
  2. Changed1 schema field changed
    • addedOutput schema / properties / news
      Added value: +{
      +  "anyOf": [
      +    {
      +      "additionalProperties": true,
      +      "properties": {
      +        "checked_headlines": {
      +          "type": "number"
      +        },
      +        "headlines": {
      +          "description": "Up to 3 recent headlines naming the coin, with url and published",
      +          "items": {
      +            "additionalProperties": {},
      +            "type": "object"
      +          },
      +          "type": "array"
      +        },
      +        "probability": {
      +          "type": [
      +            "number",
      +            "null"
      +          ]
      +        },
      +        "risk": {
      +          "description": "high: a headline reports a hack, delisting, unlock, legal action or similar for this coin; elevated: maybe; none: nothing found",
      +          "enum": [
      +            "high",
      +            "elevated",
      +            "none"
      +          ],
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "risk"
      +      ],
      +      "type": "object"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "description": "Only when the news check is on: news from the last 72 hours that can break a technical signal (TypeSafe Jev). The signal itself never changes; treat high as a reason to wait."
      +}
  3. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "http://json-schema.org/draft-07/schema#",
      +  "additionalProperties": true,
      +  "properties": {
      +    "accepts": {
      +      "anyOf": [
      +        {
      +          "items": {
      +            "additionalProperties": {},
      +            "type": "object"
      +          },
      +          "type": "array"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "Only on an unpaid call: the x402 payment options"
      +    },
      +    "cloud_position": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "interval": {
      +      "description": "Candle interval, e.g. 1h, 4h, 1d",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "kijun_sen": {
      +      "type": [
      +        "number",
      +        "null"
      +      ]
      +    },
      +    "pair": {
      +      "description": "The pair, e.g. BTC-USDT",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "price": {
      +      "description": "Last price",
      +      "type": [
      +        "number",
      +        "null"
      +      ]
      +    },
      +    "signal": {
      +      "anyOf": [
      +        {
      +          "enum": [
      +            "bullish",
      +            "bearish",
      +            "neutral"
      +          ],
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "bullish, bearish or neutral (absent on the payment requirement)"
      +    },
      +    "tenkan_kijun_cross": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "tenkan_sen": {
      +      "type": [
      +        "number",
      +        "null"
      +      ]
      +    },
      +    "timestamp": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    }
      +  },
      +  "type": "object"
      +}
  4. Changed1 schema field changed
    • changedInput schema / properties / pair / description
      Previous value: -"Crypto pair, e.g. BTC-USDT, SOL-USDT, TAO-USDT or ETHUSDT (Binance.US, then Kraken, Gate and MEXC: covers the top 200 coins)"New value: +"Crypto pair, e.g. BTC-USDT, SOL-USDT, TAO-USDT or ETHUSDT (Binance.US, then Kraken, Gate and MEXC: covers the top 200 coins). For the XRP Ledger DEX: xrpl:XRP-RLUSD, xrpl:SOLO-XRP, or with the issuer, xrpl:SOLO.rsoLo2S1kiGeCcn6hCUXVrCpGMWLrRrLZz-XRP"
  5. Changed1 schema field changed
    • changedInput schema / properties / pair / description
      Previous value: -"Crypto pair, e.g. BTC-USDT, SOL-USDT, TAO-USDT or ETHUSDT (Binance.US, then Kraken, then Gate: covers the top 100 coins)"New value: +"Crypto pair, e.g. BTC-USDT, SOL-USDT, TAO-USDT or ETHUSDT (Binance.US, then Kraken, Gate and MEXC: covers the top 200 coins)"
  6. Changed1 schema field changed
    • changedInput schema / properties / pair / description
      Previous value: -"Binance.US spot pair, e.g. BTC-USDT, SOL-USDT or ETHUSDT"New value: +"Crypto pair, e.g. BTC-USDT, SOL-USDT, TAO-USDT or ETHUSDT (Binance.US, then Kraken, then Gate: covers the top 100 coins)"
  7. First observed

TDQS

A4.1/5.0
Behavior3/5

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

Annotations already declare readOnlyHint and openWorldHint, so the description's remaining job is the paid-invocation behavior, and it does disclose cost, accepted chains/tokens, and pre-payment validation. However, the payment enumeration is mixed into the same breath as the signal output, and it never states what a failed or unpaid call returns versus a successful one, so a critical behavioral detail is left implicit for a paid endpoint.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The core purpose is buried behind a ~40-word parenthetical listing eight chains and three stablecoins, so the agent reads pricing before learning what the tool returns. The remainder is tight and the sibling routing sits at the end where it is useful, but the front-loading is inverted.

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 fully documented, yet the description still names the signal fields and the 'news' flag that can invalidate the signal. With two parameters, a 100%-covered schema, and clear sibling routing, nothing an agent needs to invoke this correctly is missing.

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 coverage is 100%, so the schema already documents 'pair' examples (including xrpl: syntax) and the interval enum with its 1h default. The description only restates the timeframe range (1m to 1M) and adds no format or edge-case meaning beyond the schema, which is the baseline case.

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?

States a specific verb and resource ('the full Ichimoku Cloud signal for a crypto pair on any timeframe') and enumerates the returned fields: bullish/bearish/neutral, cloud position, tenkan/kijun cross, and span values. It also differentiates itself from siblings by declaring 'Ichimoku only' with explicit pointers to confluence_signal and price_levels.

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?

Names the exclusions and the alternatives explicitly: six indicators means confluence_signal, entry/stop/targets means price_levels. It also states prerequisites (an x402-capable MCP client) and that invalid pairs are rejected before payment, which tells the agent what happens when input is bad.

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