Skip to main content
Glama

ChartAnt

Generate Bar Chart

generate_bar_chart
Read-onlyIdempotent

Draw a horizontal bar chart to compare categories, best for long category names or rankings (top 10). Data [{category, value, group?}]; set group or stack true for several series. For vertical bars use generate_column_chart. Returns a hosted PNG link, a share page, alt text and editable PowerPoint/Excel links.

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_bar_chart"
  }
}

Input Schema

NameRequiredDescriptionDefault
dataYesData for bar chart, such as, [{ category: '分类一', value: 10 }, { category: '分类二', value: 20 }], when grouping or stacking is needed for bar, the data should contain a `group` field, such as, when [{ category: '北京', value: 825, group: '油车' }, { category: '北京', value: 1000, group: '电车' }].
groupNoWhether grouping is enabled. When enabled, bar charts require a 'group' field in the data. When `group` is true, `stack` should be false.
stackNoWhether stacking is enabled. When enabled, bar charts require a 'group' field in the data. When `stack` is true, `group` should be false.
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.
animatedNotrue for an animated GIF (bars grow, lines draw, pies sweep open) instead of a still PNG; for email, slides and chat posts. The first frame is the finished chart.
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

A4.4/5.0
Behavior4/5

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

Annotations already establish read-only, idempotent, non-destructive behavior, so the remaining burden is low. The description still adds genuinely useful disclosure that no annotation covers: the tool returns a hosted PNG link, a share page, alt text, and editable PowerPoint/Excel links, which tells the agent about side effects (hosted artifacts get created) and downstream usability.

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

Conciseness5/5

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

Four short sentences ordered by importance: what it draws, when to prefer it, the data contract, then the sibling routing rule, then return values. Nothing is redundant or padded; the bracket notation for data is a compact way to convey the item shape.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 12 parameters, a nested style object, and no output schema, the description does the important work: it explains the return payload in place of an output schema and covers the horizontal-vs-vertical decision. Minor gaps remain on themed/colorblind output and animation, but those live in well-described schema fields, so nothing critical is missing for correct invocation.

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 every parameter including the nested data object, group, stack, style, theme, and brandTheme is already documented. The description restates the data shape and the group/stack duality but adds no format or precedence detail beyond the schema, so baseline 3 applies.

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 ('Draw a horizontal bar chart'), plus the orienting purpose ('compare categories') and a preference ('long category names or rankings (top 10)'). It also names the exact sibling it is not, so an agent can distinguish it from generate_column_chart without opening either schema.

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 when-to-use condition (category comparison, long labels, top-10 rankings) and an explicit routing rule to the alternative: 'For vertical bars use generate_column_chart.' That is the key decision an agent faces among the many chart siblings, and it is stated outright rather than implied.

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.