Skip to main content
Glama

ChartAnt

Generate Pie Chart

generate_pie_chart
Read-onlyIdempotent

Draw a pie chart (or a donut with innerRadius, e.g. 0.6) of the parts of one whole: market share, budget split. Data [{category, value}]; best with 2 to 7 slices. For many categories or comparisons use generate_bar_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_pie_chart"
  }
}

Input Schema

NameRequiredDescriptionDefault
dataYesData for pie chart, it should be an array of objects, each object contains a `category` field and a `value` field, such as, [{ category: '分类一', value: 27 }].
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.
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).
innerRadiusNoSet the innerRadius of pie chart, the value between 0 and 1. Set the pie chart as a donut chart. Set the value to 0.6 or number in [0 ,1] to enable it.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already establish the read-only, idempotent, non-destructive, closed-world profile, so the lower bar applies. The description still adds real value beyond them by disclosing outputs (hosted PNG link, share page, alt text, editable PowerPoint/Excel links) and clarifying the animated variant (GIF with finished first frame), though it says nothing about latency, limits, or whether charts are persisted/replaceable.

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?

Three front-loaded sentences with no filler: purpose and shape first, the sibling escape hatch second, outputs last. The final sentence is a dense list of four return artifacts, but each item is informative rather than redundant.

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?

For a 9-parameter nested tool with no output schema, the description covers what to feed it (data shape, slice count), which sibling to pick, and what comes back (link, share page, alt text, Office exports). Only minor gaps remain — e.g., brandTheme and animated are documented solely in the schema, and no mention of how returned links behave or persist.

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 the schema already documents every parameter including style, theme, and brandTheme. The description adds only a small amount over it — the donut/innerRadius example (0.6) and the [{category, value}] shape — while parameters like animated, brandTheme, width/height, and palette get their meaning entirely from the schema. Baseline 3 is appropriate.

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 pie chart') plus the semantic job it performs ('parts of one whole: market share, budget split') and the donut variant. It explicitly names the sibling to use instead when the data doesn't fit, so an agent can discriminate it from generate_bar_chart without opening any 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 a positive usage condition (parts of a whole, market share, budget split), a cardinality limit ('best with 2 to 7 slices'), and a named alternative for the excluded case ('For many categories or comparisons use generate_bar_chart'). Both when-to-use and when-not-to-use are covered with an explicit substitute.

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.