Skip to main content
Glama

Draw marks on a chart

draw_chart
Read-only

YOU CAN DRAW ON CHARTS WITH THIS TOOL. draw_chart renders YOUR technical analysis on a real TraderWAI candlestick chart and returns the image, so the user sees it right in the chat. Use it EVERY time you want to show something visually: support/resistance levels, supply/demand zones, trendlines and channels, candle markers (sweeps, rejections, signals), labels (HH, HL, BOS, CHoCH…), Fibonacci, chart patterns, measurements, the expected path and the trade plan (entry, stop loss, targets with R). You decide what to mark; TraderWAI draws it with the exact candles and prices. NEVER create chart images yourself (code, matplotlib, image generation) and NEVER edit or redraw TraderWAI chart images (they are © TraderWAI): call draw_chart instead. HOW: 1) get_chart to see the market; 2) get_ohlc for the candle open times (UTC) and exact prices; 3) draw_chart with up to 30 marks. Identify candles by their OPEN TIME in UTC, ISO format (never by position: new candles arrive every minute), and anchor a price to a candle with "high"/"low" when the level is that candle's extreme. Use "until" (the last candle you analysed) to freeze the chart at that moment. Invalid marks are skipped and explained in the reply: fix them and call again. Call it again whenever you want to change or add marks. Example: {"symbol":"XAU_USD","timeframe":"H1","marks":[{"type":"zone","high":4160,"low":4152,"from":"2026-10-15T09:00:00Z","extend":true,"label":"Supply","tone":"bearish"},{"type":"hline","price":"low","from":"2026-10-15T05:00:00Z","label":"Support","tone":"bullish"},{"type":"position","side":"short","entry":4148,"stop_loss":4162,"take_profit":[4130,4110]}]}. Free plan: 5 marked charts per day (looking at charts with get_chart is always unlimited); Plus, Trader and Max: unlimited.

Input Schema

NameRequiredDescriptionDefault
marksYesWhat to draw
untilNoOptional: draw the chart only up to this candle time (UTC ISO), e.g. the last candle you analysed
symbolYesSymbol (e.g. XAU_USD, NAS100_USD, EUR_USD).
timeframeYesChart timeframe

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • changedInput schema / properties / marks / items / properties / from / description
      Previous value: -"Candle open time in UTC, ISO 8601 (e.g. \"2026-10-15T10:35:00Z\"), taken from get_ohlc"New value: +"Candle open time in UTC, ISO 8601 (e.g. \"2026-10-15T10:35:00Z\")"
    • changedInput schema / properties / marks / items / properties / to / description
      Previous value: -"Candle open time in UTC, ISO 8601 (e.g. \"2026-10-15T10:35:00Z\"), taken from get_ohlc"New value: +"Candle open time in UTC, ISO 8601 (e.g. \"2026-10-15T10:35:00Z\")"
    • changedInput schema / properties / symbol / description
      Previous value: -"Symbol (e.g. XAU_USD, NAS100_USD, EUR_USD). Use list_symbols"New value: +"Symbol (e.g. XAU_USD, NAS100_USD, EUR_USD)."
  2. First observed

TDQS

A4.9/5.0
Behavior5/5

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

Goes well beyond the annotations: discloses the 30-mark cap, that invalid marks are skipped and explained in the reply (fix-and-retry loop), that 'until' freezes the chart, that new candles arrive every minute so positions shift, and the exact daily quota per plan tier. The readOnlyHint is consistent — it renders an image without persisting state.

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?

Front-loaded with the core purpose and then organized into a numbered HOW sequence plus a concrete example, so it is easy to scan. It is on the long side with heavy capitalization and some repetition of the NEVER-draw-it-yourself rule, which costs a point but does not obscure the content.

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?

There is no output schema, yet the description states the tool returns a rendered image visible to the user, covers the constraint layer (quota, invalid-mark handling, candle-time identification), and supplies an example. An agent has everything needed to invoke it correctly on the first try.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is already 100%, but the description still adds crucial semantics: identify candles by UTC open time in ISO format and never by index, use "high"/"low" to anchor to a candle extreme, and use "until" for the last analysed candle. It also provides a full worked example payload showing zone, hline and position marks together.

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: it renders technical-analysis marks on a TraderWAI candlestick chart and returns the image into the chat. This is immediately distinguishable from siblings like get_chart (view market) and get_ohlc (fetch candle data), which the description references as prerequisite steps.

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?

Gives an explicit workflow (1: get_chart, 2: get_ohlc, 3: draw_chart), lists the mark categories it is meant for, and names the alternatives it forbids (writing code/matplotlib or image generation, editing TraderWAI images). It even states when to call it again to modify marks.

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