# Basis (com.basischarts/basis): tool descriptions scored

- tools/list taken: 2026-11-02 (UTC)
- From: [Official MCP Registry](https://registry.modelcontextprotocol.io/v0/servers/com.basischarts%2Fbasis/versions/latest)
- Connected to: https://www.basischarts.com/api/mcp
- Homepage: https://www.basischarts.com/mcp
- Scoring rules: v2
- Tools: 44
- Average: 50.4 / 100 (Cloudy)
- Near-identical pairs: 0

This page shows how Basis (com.basischarts/basis)'s tool descriptions scored, the issues found and the names of its tools and parameters. The descriptions are the server's own: read them where the copy came from.

Forecall asked the URL this server lists in the official MCP Registry for its tools/list once, on the date above, without calling any tool. The server may have changed since.

## Across the server

- Major: 44 tools. Above 40, models choose less accurately.
- Minor: The server's instructions are 3691 characters. Claude Code reads only the first 2,048 by default (Codex 0.154.0 reads them whole). Put what the server is for first.

## Tools

- `chart_set_type`: 27 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: chartType.
  - Minor: String arguments with no constraint or example: chartType.
  - Minor: Says nothing about what it returns.
- `chart_toggle_indicator`: 30 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: instanceId.
  - Minor: String arguments with no constraint or example: instanceId.
  - Minor: Says nothing about what it returns.
  - Minor: Required identifiers whose description does not say where the value comes from: instanceId. Name the tool or the place that returns it, or models look it up first.
- `chart_update_indicator`: 30 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: instanceId, params.
  - Minor: String arguments with no constraint or example: instanceId.
  - Minor: Says nothing about what it returns.
- `chart_set_timeframe`: 32 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: timeframe.
  - Minor: String arguments with no constraint or example: timeframe.
  - Minor: Says nothing about what it returns.
- `news_detect_assets`: 32 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: text.
  - Minor: String arguments with no constraint or example: text.
  - Minor: Says nothing about what it returns.
- `drawing_delete`: 33 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: id, symbol.
  - Minor: String arguments with no constraint or example: id, symbol.
  - Minor: Says nothing about what it returns.
  - Minor: Required identifiers whose description does not say where the value comes from: id. Name the tool or the place that returns it, or models look it up first.
- `chart_add_indicator`: 35 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: studyId, params.
  - Minor: String arguments with no constraint or example: studyId.
  - Minor: Says nothing about what it returns.
  - Minor: Required identifiers whose description does not say where the value comes from: studyId. Name the tool or the place that returns it, or models look it up first.
- `chart_set_instrument`: 35 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: symbol, market, exchange.
  - Minor: String arguments with no constraint or example: symbol.
  - Minor: Says nothing about what it returns.
- `crypto_quant_guide`: 39 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: topic.
- `catalog_describe`: 40 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Arguments without a description: id.
  - Minor: String arguments with no constraint or example: id.
  - Minor: Says nothing about what it returns.
  - Minor: Required identifiers whose description does not say where the value comes from: id. Name the tool or the place that returns it, or models look it up first.
- `chart_remove_indicator`: 40 / 100
  - Major: Arguments without a description: instanceId.
  - Minor: String arguments with no constraint or example: instanceId.
  - Minor: Says nothing about what it returns.
- `drawing_freehand`: 42 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: strokes, strokes[].shape, strokes[].points, strokes[].points[].time, strokes[].points[].price, mode, symbol, ref, lineStyle, extendLeft, extendRight, showLabels, showStats, arrowStart, arrowEnd, showPrices, showRatios, ratioFormat, labelPosition, labelVertical, textBold, textColor.
  - Minor: String arguments with no constraint or example: symbol, ref.
  - Minor: The meaning of the boolean argument extendLeft is unclear.
  - Minor: The meaning of the boolean argument extendRight is unclear.
  - Minor: The meaning of the boolean argument showLabels is unclear.
  - Minor: The meaning of the boolean argument showStats is unclear.
  - Minor: The meaning of the boolean argument arrowStart is unclear.
  - Minor: The meaning of the boolean argument arrowEnd is unclear.
  - Minor: The meaning of the boolean argument showPrices is unclear.
  - Minor: The meaning of the boolean argument showRatios is unclear.
  - Minor: The meaning of the boolean argument textBold is unclear.
  - Minor: Says nothing about what it returns.
- `chart_link`: 45 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Arguments without a description: market, exchange.
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `calendar_upcoming`: 46 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: No `required` list, so every argument is optional.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: Says nothing about what it returns.
- `catalog_search`: 47 / 100
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `news_recent`: 47 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Arguments without a description: minImpact.
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `position_plan_on_chart`: 48 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Arguments without a description: side, entry, stop, targets[].price, targets[].allocation, symbol, timeframe, note.
  - Minor: String arguments with no constraint or example: symbol, timeframe, note.
  - Minor: Says nothing about what it returns.
- `market_derivatives`: 49 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Arguments without a description: exchange.
  - Minor: No `required` list, so every argument is optional.
- `news_history`: 50 / 100
  - Minor: Arguments without a description: topic, limit.
  - Minor: No `required` list, so every argument is optional.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: Says nothing about what it returns.
- `alert_link`: 51 / 100
  - Minor: Arguments without a description: exchange, market, eventTrigger.type, eventTrigger.actions, eventTrigger.side, eventTrigger.keywordMode, eventTrigger.topics, eventTrigger.sources, eventTrigger.titleMode, eventTrigger.categories, conditions[].left, conditions[].operator, conditions[].right.
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `calendar_history`: 52 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Says nothing about what it returns.
- `formula_evaluate`: 53 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: expression, exchange, parameters, reduce, includeForming.
  - Minor: String arguments with no constraint or example: expression, symbol.
  - Minor: The meaning of the boolean argument includeForming is unclear.
- `trade_experience_retrieve`: 53 / 100
  - Minor: Arguments without a description: exchange, market, setup, side.
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `backtest_run`: 54 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Arguments without a description: strategyId, exchange, params, direction.
  - Minor: String arguments with no constraint or example: strategyId, symbol.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: Required identifiers whose description does not say where the value comes from: strategyId. Name the tool or the place that returns it, or models look it up first.
- `market_dominance`: 54 / 100
  - Minor: Says nothing about what it returns.
- `position_draw_on_chart`: 54 / 100
  - Major: Arguments without a description: side, entry, stop, target, symbol, timeframe.
  - Minor: String arguments with no constraint or example: symbol, timeframe.
  - Minor: Says nothing about what it returns.
- `chart_image`: 55 / 100
  - Minor: Arguments without a description: market, exchange.
  - Minor: No `required` list, so every argument is optional.
- `indicator_compute`: 55 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Arguments without a description: exchange, reduce, includeForming.
  - Minor: String arguments with no constraint or example: studyId, symbol.
  - Minor: The meaning of the boolean argument includeForming is unclear.
  - Minor: Required identifiers whose description does not say where the value comes from: studyId. Name the tool or the place that returns it, or models look it up first.
- `orderflow_read`: 55 / 100
  - Minor: Arguments without a description: exchange.
  - Minor: String arguments with no constraint or example: symbol.
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `market_relationships`: 57 / 100
  - Minor: Arguments without a description: exchange, market.
  - Minor: String arguments with no constraint or example: benchmark, timeframe.
- `orderbook_read`: 57 / 100
  - Minor: Arguments without a description: exchange.
  - Minor: String arguments with no constraint or example: symbol.
  - Minor: No `required` list, so every argument is optional.
- `screener_backtest`: 57 / 100
  - Minor: Arguments without a description: name, rules, rules[].left.kind, rules[].left.field, rules[].left.params, rules[].left.expression, rules[].left.name, rules[].left.parameters, rules[].left.strategyId, rules[].operator.
  - Minor: String arguments with no constraint or example: name, rules[].left.expression, rules[].left.name, rules[].left.strategyId.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: Says nothing about what it returns.
- `fibonacci_draw`: 58 / 100
  - Major: Arguments without a description: tool, points, points[].time, points[].price, levels, symbol, ref, lineStyle, extendLeft, extendRight, showLabels, showStats, arrowStart, arrowEnd, showPrices, showRatios, ratioFormat, labelPosition, labelVertical, textBold, textColor.
  - Minor: String arguments with no constraint or example: symbol, ref.
  - Minor: The meaning of the boolean argument extendLeft is unclear.
  - Minor: The meaning of the boolean argument extendRight is unclear.
  - Minor: The meaning of the boolean argument showLabels is unclear.
  - Minor: The meaning of the boolean argument showStats is unclear.
  - Minor: The meaning of the boolean argument arrowStart is unclear.
  - Minor: The meaning of the boolean argument arrowEnd is unclear.
  - Minor: The meaning of the boolean argument showPrices is unclear.
  - Minor: The meaning of the boolean argument showRatios is unclear.
  - Minor: The meaning of the boolean argument textBold is unclear.
  - Minor: Says nothing about what it returns.
- `market_candles`: 58 / 100
  - Minor: Arguments without a description: exchange.
  - Minor: String arguments with no constraint or example: symbol.
  - Minor: No `required` list, so every argument is optional.
- `chart_state`: 59 / 100
  - Minor: Says nothing about what it returns.
- `drawing_style`: 59 / 100
  - Major: Arguments without a description: lineStyle, extendLeft, extendRight, showLabels, showStats, arrowStart, arrowEnd, showPrices, showRatios, ratioFormat, labelPosition, labelVertical, textBold, textColor.
  - Minor: String arguments with no constraint or example: id.
  - Minor: The meaning of the boolean argument extendLeft is unclear.
  - Minor: The meaning of the boolean argument extendRight is unclear.
  - Minor: The meaning of the boolean argument showLabels is unclear.
  - Minor: The meaning of the boolean argument showStats is unclear.
  - Minor: The meaning of the boolean argument arrowStart is unclear.
  - Minor: The meaning of the boolean argument arrowEnd is unclear.
  - Minor: The meaning of the boolean argument showPrices is unclear.
  - Minor: The meaning of the boolean argument showRatios is unclear.
  - Minor: The meaning of the boolean argument textBold is unclear.
  - Minor: Says nothing about what it returns.
  - Minor: Required identifiers whose description does not say where the value comes from: id. Name the tool or the place that returns it, or models look it up first.
- `hyperliquid_whale_read`: 59 / 100
  - Minor: No `required` list, so every argument is optional.
- `drawing_add`: 64 / 100
  - Major: Arguments without a description: points, points[].time, points[].price, lineStyle, extendLeft, extendRight, showLabels, showStats, arrowStart, arrowEnd, showPrices, showRatios, ratioFormat, labelPosition, labelVertical, textBold, textColor.
  - Minor: The meaning of the boolean argument extendLeft is unclear.
  - Minor: The meaning of the boolean argument extendRight is unclear.
  - Minor: The meaning of the boolean argument showLabels is unclear.
  - Minor: The meaning of the boolean argument showStats is unclear.
  - Minor: The meaning of the boolean argument arrowStart is unclear.
  - Minor: The meaning of the boolean argument arrowEnd is unclear.
  - Minor: The meaning of the boolean argument showPrices is unclear.
  - Minor: The meaning of the boolean argument showRatios is unclear.
  - Minor: The meaning of the boolean argument textBold is unclear.
- `founders_preview`: 64 / 100
  - Minor: Says nothing about what it returns.
- `screener_run`: 65 / 100
  - Minor: Arguments without a description: name, rules, rules[].left.kind, rules[].left.field, rules[].left.params, rules[].left.expression, rules[].left.name, rules[].left.parameters, rules[].left.strategyId, rules[].operator.
  - Minor: String arguments with no constraint or example: name, rules[].left.expression, rules[].left.name, rules[].left.strategyId.
  - Minor: Says nothing about what it returns.
- `position_calculate`: 67 / 100
  - Minor: Arguments without a description: side, entry, stop, targets[].price, targets[].allocation.
  - Minor: Says nothing about what it returns.
- `daytrade_opportunity_scan`: 68 / 100
  - Major: Arguments without a description: name, longRules, longRules[].left.kind, longRules[].left.field, longRules[].left.params, longRules[].left.expression, longRules[].left.name, longRules[].left.parameters, longRules[].left.strategyId, longRules[].operator, shortRules, shortRules[].left.kind, shortRules[].left.field, shortRules[].left.params, shortRules[].left.expression, shortRules[].left.name, shortRules[].left.parameters, shortRules[].left.strategyId, shortRules[].operator, quote.
  - Minor: String arguments with no constraint or example: name, longRules[].left.expression, longRules[].left.name, longRules[].left.strategyId, shortRules[].left.expression, shortRules[].left.name, shortRules[].left.strategyId.
  - Minor: No `required` list, so every argument is optional.
- `analysis_prepare`: 70 / 100
  - Minor: Arguments without a description: market, exchange.
- `strategy_research`: 72 / 100
  - Minor: Arguments without a description: exchange, direction.
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.

Is your server listed here and you would rather it were not? Email support@forecall.dev, and we will take it off within 7 days.

[All scored servers](https://forecall.dev/en/servers)
