Skip to main content
Glama

Generate Waterfall Chart

generate_waterfall_chart
Read-only

Generate a waterfall chart to visualize the cumulative effect of sequentially introduced positive or negative values, such as showing how an initial value is affected by a series of intermediate positive or negative values leading to a final result. Waterfall charts are ideal for financial analysis, budget tracking, profit and loss statements, and understanding the composition of changes over time or categories.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "data": "<data>"
    },
    "name": "generate_waterfall_chart"
  }
}

Input Schema

NameRequiredDescriptionDefault
dataYesData for waterfall chart, it should be an array of objects. Each object must contain a `category` field. For regular items, a `value` field is also required. The `isIntermediateTotal` field marks intermediate subtotals, and the `isTotal` field marks the final total. For example, [{ category: 'Initial', value: 100 }, { category: 'Increase', value: 50 }, { category: 'Subtotal', isIntermediateTotal: true }, { category: 'Decrease', value: -30 }, { category: 'Total', isTotal: true }].
styleNoStyle configuration for the chart with a JSON object, optional.
themeNoSet the theme for the chart, optional, default is 'default'.default
titleNoSet the title of chart.
widthNoSet the width of chart, default is 600.
heightNoSet the height of chart, default is 400.
axisXTitleNoSet the x-axis title of chart.
axisYTitleNoSet the y-axis title of chart.
brandThemeNoName of a brand theme saved on the user's account (their colours and footer), only when the user asks for their theme. Or "colorblind" for colours that people with colour-vision deficiency can tell apart (anyone can use it).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

B3.1/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, so safety is covered. Beyond that the description adds nothing behavioral: it does not say what the call returns (rendered image, chart spec, URL), whether the chart is persisted or versioned (relevant given sibling tools like list_chart_versions and restore_chart_version), or any rendering constraints. It only explains what a waterfall chart depicts.

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 definition opens with the essential purpose, which is good front-loading, but the second sentence is generic marketing-style use-case enumeration that repeats 'positive or negative values' and consumes roughly half the text without adding invocation guidance. It is not bloated enough to harm usability, but part of it does not earn its place.

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?

With 9 parameters, nested objects, and no output schema, the description should close gaps about return behavior and about how the data encoding (isTotal, isIntermediateTotal) affects the rendered chart. That information lives only in the schema, so the description is adequate but leaves the agent guessing about the result of a call.

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%, including a detailed example for the required `data` array and per-field defaults for style, theme, and dimensions, so the schema does the heavy lifting. The description adds no parameter meaning whatsoever, which makes the baseline 3 appropriate rather than higher.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb+resource ('Generate a waterfall chart') and defines the chart's semantics (cumulative effect of sequentially introduced positive/negative values), which implicitly separates it from generate_bar_chart or generate_column_chart. It stops short of naming a sibling or giving an explicit differentiator, so it is clear but not fully differentiated.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage context is implied through domain examples ('financial analysis, budget tracking, profit and loss statements, composition of changes over time'), which points an agent toward appropriate cases. However, there is no explicit when-not guidance and no comparison to the many other chart-generation siblings, leaving the agent to infer the choice.

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