Skip to main content
Glama

MCP Dashboards

Your AI can talk about data. Now it can show it.

npm Glama Quality Glama Security License: FSL-1.1-MIT Buy Me A Coffee GitHub Sponsors LinkedIn

The problem

We use AI for everything - analysis, reports, strategy. But when it comes to actually seeing the story in your data, you're stuck copying numbers into a spreadsheet and building charts yourself. The conversation has the insight. The visualization is somewhere else.

Related MCP server: trading212-mcp-server

The solution

MCP Dashboards renders interactive charts, dashboards, and KPI widgets directly inside your AI conversation. 32 chart tools covering 45+ chart subtypes (bar has stacked/drilldown, hero has 11 variants, flowchart has 6 node kinds + 5 edge styles, etc.), 21 themes, 4 visual discovery catalogs, live polling, PNG/PPT/A4 export - all from a single MCP server. No browser tabs, no copy-paste, no context switching.

IMPORTANT

The only official npm package ismcp-dashboards, published from this repository. Similarly named packages are not ours: mcp-dashboards-shared was malware (see OSSF advisory MAL-2026-4296, removed by npm security in May 2026). Install only mcp-dashboards.

Quick Start

Claude Desktop

Add to your claude_desktop_config.json:

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "dashboard": {
      "command": "npx",
      "args": ["-y", "mcp-dashboards", "--stdio"]
    }
  }
}

Claude Code / VS Code

claude mcp add dashboard -- npx -y mcp-dashboards --stdio

Remote (Streamable HTTP)

npx mcp-dashboards
# Server starts on http://127.0.0.1:3001/mcp

Bound to localhost by default. See Configuration if you need to expose it on your network or allow browser access from a non-localhost origin.

Supported clients

Works in any MCP Apps-compatible client: Claude Desktop, Claude Web, VS Code (GitHub Copilot), Goose, Postman, MCPJam. ChatGPT support is rolling out.

Just ask

No API to learn. Describe what you want in plain English:

  • "Compare Q1 vs Q2 revenue by region as a bar chart"

  • "Show my portfolio allocation as a donut chart with the boardroom theme"

  • "Build a dashboard with monthly sales KPIs and a trend line"

  • "Visualize website traffic by country on a world map"

  • "Track Bitcoin price live, updating every 30 seconds"

  • "Show the conversion funnel from signup to purchase"

  • "Rank the team by performance using a radar chart"

  • "Diagram my multi-agent pipeline as a flowchart and let me step through it"

The AI picks the right tool, formats your data, and renders the chart inline. Click any data point to ask follow-up questions.

Don't know where to start? Ask "show me the catalog" - opens a master dashboard with one live visual tile per customization dimension (a real bar chart for charts, a pie for themes, a progress ring for hero variants, a neon-glowing card for effects). Click any tile, hit Ask, and you'll drill into that sub-catalog.

Interactive charts, not images

Every chart is interactive HTML rendered directly in your conversation:

  • Explore in-chat - hover tooltips, click-to-select (feeds back to the AI), drill-down with breadcrumbs, scroll-zoom up to 12x on maps and heatmaps

  • Editable flowcharts - drag nodes, multi-select, rename via right-click, minimap + node list to navigate, step-through playback of the flow, then sync your layout back to the AI to save it

  • Live polling - real-time charts that auto-update from any API on a timer

  • Export anywhere - PPT (16:9 slides), A4 (paginated with smart page breaks), PNG, CSV

Tool

Type

Best For

render_pie_chart

Pie/Donut

Composition - "what makes up the whole?"

render_bar_chart

Bar

Comparison - vertical, horizontal, stacked, drill-down

render_line_chart

Line/Area

Trends - smooth curves, gradient fills, time series

render_scatter_chart

Scatter

Relationships - per-point labels, annotations, quadrants

render_candlestick_chart

Candlestick

Finance - OHLC data with volume bars

render_radar_chart

Radar

Multi-axis comparison - skills, scores, product attributes

render_treemap_chart

Treemap

Hierarchy - nested rectangles sized by value

render_sankey_chart

Sankey

Flow - money, users, or resources between stages

render_wordcloud_chart

Word Cloud

Frequency - sized words from text analysis

render_boxplot_chart

Boxplot/Violin

Distribution - quartiles, outliers, density shapes

render_live_chart

Live

Real-time - auto-polls any MCP tool on a timer

poll_http

Data proxy

Fetch JSON from any HTTP endpoint - secure presets or public URLs

render_bullet_chart

Bullet

KPI vs target - 2-8 zone bands with labels

render_lollipop_chart

Lollipop

Ranking - clean dots with optional target markers

render_dumbbell_chart

Dumbbell

Gaps - before/after with scale labels and zone bands

render_variance_chart

Variance

Budget - actual vs budget, color-coded over/under

render_funnel_chart

Funnel

Conversion - staged drop-off with percentages

render_slope_chart

Slope

Change - ranking shifts between two periods

render_waffle_chart

Waffle

Proportion - 10x10 grid showing composition

render_sparkline_chart

Sparkline

Compact trends - mini cards with change indicators

render_radial_cluster

Radial

Health check - multi-metric ring gauges with status

render_waterfall_chart

Waterfall

Cumulative - cascading bars showing impact

render_heatmap_chart

Heatmap

Intensity - 2D grid with color mapping

render_geo_chart

Geo/Map

Geography - color-coded countries by value (choropleth)

render_bubble_map

Bubble Map

Pin map - sized circles at lat/lng coordinates

render_timeline_chart

Timeline

Progress - milestone tracker with status indicators

render_flowchart

Flowchart

Workflows, pipelines, architectures, agent flows - rich card-based DAG with status states, drag, zoom, live polling

render_hero_metric

Hero

KPI widgets - 11 variants (progress ring, gem, orb, NPS, etc.)

render_dashboard

Dashboard

Everything - KPI cards + multiple charts in responsive grid

render_table

Table

Data - sortable columns, striped rows, CSV export

render_from_json

Auto-detect

Any JSON data - picks the best chart automatically

render_from_url

URL fetch

Fetches JSON from a URL and auto-visualizes

Discovery / Catalogs - visual entry points for browsing what's available:

Tool

Shows

When to use

render_catalog

Master catalog with 4 live preview tiles

Don't know where to start. Click any tile, hit Ask, drill in.

render_chart_catalog

All 32 chart types with mini previews

Looking for the right chart for your data

render_theme_catalog

All 21 themes with color/typography/effects

Picking a theme

render_hero_catalog

All 11 hero metric variants

Picking a KPI widget style

render_effects_catalog

All 5 effect presets, each applied to a real card

Picking an animation/glow style

Typography is still configurable on every chart via typography=<name> (8 options listed under Themes) - it just doesn't have its own catalog because all 8 options were visually identical without per-card font loading, which wasn't worth the build for one preview tool.

Question

Best Chart

Also Works

"What makes up the whole?"

Pie/Waffle

Treemap, Stacked bar

"How do values compare?"

Bar

Lollipop, Bullet, Radar

"What's the trend over time?"

Line

Sparkline, Slope

"Are we hitting targets?"

Bullet

Variance, Radial

"Where's the gap?"

Dumbbell

Variance

"How does X relate to Y?"

Scatter

Heatmap

"What's the conversion rate?"

Funnel

Waterfall, Sankey

"What changed between periods?"

Slope

Dumbbell

"What's the financial picture?"

Candlestick

Line

"Show me the KPI"

Hero metric

Dashboard

"What's the distribution?"

Boxplot

Violin (same tool)

"Where does money/traffic flow?"

Sankey

Treemap

"How do options score across axes?"

Radar

Heatmap

"What are the top keywords?"

Word Cloud

Bar, Treemap

"Where are users/sales/revenue?"

Geo map

Bubble map, Heatmap

"Monitor this in real-time"

Live chart

-

Themes

21 built-in themes. Pass theme to any tool.

Family

Themes

Classic

boardroom, corporate, sales-floor, golden-treasury, clinical, startup, ops-control, tokyo-midnight, zen-garden, consultant

Black/AI

black-tron (cyan neon), black-elegance (warm gold), black-matrix (green hacker)

Forest

forest-amber (autumn), forest-earth (terracotta)

Sky

sky-light (airy blue), sky-ocean (deep navy), sky-twilight (sunset)

Office

office-red (corporate red, white bg - report-ready)

Gray/ML

gray-hf (warm yellow accent), gray-copilot (teal on dark)

Mix-and-match with palette, typography (8 options: system, mono, professional, editorial, bold, techno, cyberpunk, luxury), and effects (5 presets: none, subtle, shimmer, neon, energetic).

Live Polling

Real-time charts that auto-update from any API. The live chart polls data via poll_http, which supports two modes:

Secure presets (authenticated APIs)

Configure presets via env vars. Credentials stay server-side and never appear in the conversation.

{
  "mcpServers": {
    "dashboard": {
      "command": "npx",
      "args": ["-y", "mcp-dashboards", "--stdio"],
      "env": {
        "POLL_PRESET_T212_CASH_URL": "https://live.trading212.com/api/v0/equity/account/cash",
        "POLL_PRESET_T212_CASH_HEADERS": "{\"Authorization\": \"Bearer YOUR_API_KEY\"}"
      }
    }
  }
}

Then ask: "Monitor my portfolio total and P/L live" - the AI uses render_live_chart with pollArgs: { preset: "t212_cash" }.

Naming: POLL_PRESET_<NAME>_URL and POLL_PRESET_<NAME>_HEADERS (JSON object).

Public URLs (no auth needed)

For public APIs, use the URL directly:

"Show me Bitcoin price updating every 30 seconds" - uses pollArgs: { url: "https://api.coingecko.com/api/v3/simple/price?ids=bitcoin&vs_currencies=usd" }.

How It Works

Built on MCP Apps. You ask the AI to visualize data, it calls the right tool, and the chart renders inline in your conversation. Self-contained - zero CDN, zero external requests.

MCP Apps supported (inline rendering): Claude Desktop, VS Code Insiders + MCP Apps extension, Goose, Postman.

No MCP Apps support? No problem. Every chart response also includes a clickable link to the same interactive chart in your browser:

  • http://localhost:PORT/chart/{id} - the clickable link in chat. Backed by a tiny same-machine HTTP server bound to 127.0.0.1, lazy-started on the first preview request.

  • file:///.../chart-{id}.html - the persistent shareable artifact. Same HTML bytes, written to disk so you can email, archive, or open it after the server has shut down.

Why both: Claude Code (VS Code) strips file://, vscode://, and command:// URL schemes from chat markdown, so only http:// produces a working clickable link. The file:// path is provided for sharing and offline viewing. Tool annotations (readOnlyHint, idempotentHint, openWorldHint) help clients reason about tool behavior.

Configuration

All optional. Defaults are safe - set these only if you need to override.

Env var

Default

What it does

MCP_DASHBOARDS_RETAIN_DAYS

7

How long to keep chart preview HTML files on disk. 0 disables auto-cleanup.

MCP_DASHBOARDS_DISABLE_PREVIEW

unset

Kill switch - no HTML files written, no preview server started, no preview links. Inline rendering still works in MCP Apps clients.

MCP_HTTP_BIND_HOST

127.0.0.1

HTTP-transport bind host. Stays on localhost by default. Set to 0.0.0.0 only if you trust your network.

MCP_CORS_ALLOWED_ORIGINS

localhost only

Comma-separated origins allowed to call the HTTP endpoint from a browser. Set this to add a non-localhost origin (e.g. https://your-app.com).

MCP_URL_ALLOWLIST

empty

Comma-separated hostnames that bypass the SSRF guard for render_from_url / poll_http. Use only for internal endpoints you fully trust.

MCP_OUTBOUND_RATE_PER_SEC

10

Per-host throttle for outbound HTTP calls.

MCP_OUTBOUND_BURST

20

How many initial requests can fire immediately before the rate kicks in.

POLL_PRESET_<NAME>_URL

-

Server-side preset URL for live polling. See Live Polling.

POLL_PRESET_<NAME>_HEADERS

-

Auth headers (JSON object) for the matching preset URL.

What's on disk

Chart HTML files are written to <system temp>/mcp-dashboards/ and auto-deleted after 7 days. The chart's built-in download button (PNG / PPT / A4) is the recommended way to save anything permanently.

Ask your AI to "list chart files" or "delete chart files older than 1 day" anytime - invokes list_chart_files / delete_chart_files.

Requirements: Node.js 18+.

git clone https://github.com/KyuRish/mcp-dashboards.git
cd mcp-dashboards
npm install
npm run build
npm run serve   # http://localhost:3001
npm run dev     # watch mode

Support

If MCP Dashboards is useful to you:

Buy Me A Coffee GitHub Sponsors

Built by Rishabh Dogra - connect on LinkedIn.

Privacy

All processing happens locally. No data is collected, transmitted, or stored externally.

External calls only happen when you explicitly ask - render_from_url and poll_http need a URL or preset you provide. Both refuse to fetch private, loopback, or link-local addresses (your 192.168.* network, AWS metadata at 169.254.169.254, etc.) so a prompt-injected AI can't quietly reach internal services. They also throttle per hostname so a runaway loop won't get your IP banned from a real API.

Credentials in env var presets never leave your machine. The browser preview server and the optional HTTP transport both bind to 127.0.0.1 by default and are not reachable from other devices. Chart HTML files live in your system temp folder and auto-delete after 7 days. See Configuration to change any of this.

License

FSL-1.1-MIT - Free to use for any purpose except building a competing commercial product. Each version converts to MIT two years after release. For commercial licensing, contact contact@kyuish.com.

Third-party software

The bundled UI artifact (dist/mcp-app.html) embeds open-source libraries from the Chart.js, html2canvas-pro, Luxon, TopoJSON, and Dagre projects, distributed under MIT or ISC licenses. Full attribution and license texts are reproduced in THIRD_PARTY_LICENSES.md.

Available Tools

40 tools
delete_chart_filesA
Destructive

Delete chart preview HTML files saved on disk (in the system temp folder). REQUIRES the user's explicit instruction to run - it deletes files from disk and cannot be undone. Provide at least one of: chartIds (specific file IDs to delete), olderThanDays (bulk delete by age), or all=true (delete every chart file). Scope is hard-locked to mcp-dashboards temp folder; cannot touch anything else. Returns lists of successfully deleted files and per-file failures (e.g. files currently locked by an open browser).

ParametersJSON Schema
NameRequiredDescriptionDefault
allNoExplicit confirmation to delete ALL chart files in the temp folder. Defaults to false.
chartIdsNoSpecific chart IDs to delete (12-char hex strings). Each must match /^[a-f0-9]{12}$/ or it is rejected.
olderThanDaysNoDelete chart files older than N days (positive integer).

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already indicate destructive. Description adds critical context: files deleted from disk, irreversible, scope locked to mcp-dashboards temp folder, returns per-file success/failure including locked files. Exceeds annotation burden.

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 well-structured sentences with critical warning first. No wasted words; every sentence adds value.

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?

For a deletion tool with three parameters and no output schema, description fully covers usage, scope, parameter semantics, and return behavior. No gaps.

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 covers 100% of parameters. Description adds meaning: explains that chartIds are specific IDs, olderThanDays is bulk by age, all is complete deletion; adds regex constraint for chartIds and requirement to provide at least one. Also describes return format.

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?

Clearly states the tool deletes chart preview HTML files from disk. Differentiates from siblings (all render/poll/save tools) by being the only deletion tool.

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

Usage Guidelines4/5

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

Explicitly requires user explicit instruction, warns that deletion is irreversible, and explains how to choose between parameters (chartIds, olderThanDays, all). Does not explicitly contrast with alternatives, but no sibling does deletion, so it's clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_chart_filesA
Read-onlyIdempotent

List all chart preview HTML files saved on disk (in the system temp folder). These are auto-generated each time a chart is rendered and auto-cleaned after 7 days (configurable via MCP_DASHBOARDS_RETAIN_DAYS env var). Returns file metadata (id, name, size, age). Use this to audit disk usage, then call delete_chart_files to remove specific files or all of them.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.9/5.0
Behavior5/5

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

Adds context beyond annotations: files are auto-generated and auto-cleaned after 7 days, configurable via env var. Returns specific metadata fields. No contradiction with annotations.

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?

Two focused sentences with no waste. First sentence defines tool, second provides usage and behavior context.

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?

Tool is simple with no parameters. Description covers source, lifecycle, return data, and appropriate usage. No gaps.

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

Parameters4/5

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

No parameters exist; schema coverage is 100%. Description does not need to add parameter info. Baseline for 0 params is 4.

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?

Description clearly states it lists chart preview HTML files on disk, specifies resource and action. Distinguishes from sibling tools like delete_chart_files.

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?

Explicitly says to use for auditing disk usage, then references delete_chart_files as follow-up action. Provides clear guidance on when to use this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

poll_httpA
Read-only

Fetch JSON from an HTTP endpoint. Used by render_live_chart to poll external APIs. No presets configured. Use "preset" for authenticated APIs (credentials stored server-side in env vars, never exposed). Use "url" only for public APIs that need no authentication. NEVER pass API keys or tokens in the "headers" argument - configure a preset instead.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNoDirect URL to fetch (public APIs only - no auth needed)
bodyNoRequest body for POST requests
methodNoHTTP method. Default: GET
presetNoNamed preset that maps to a pre-configured URL + auth headers. No presets configured. Configure via env vars: POLL_PRESET_<NAME>_URL and POLL_PRESET_<NAME>_HEADERS (JSON object).
headersNoExtra HTTP headers (public APIs only - NEVER put API keys here)

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the description adds value by explaining how presets work via environment variables and emphasizing security. It does not cover all behavioral traits like response format or rate limiting, but the safety profile is well-covered by annotations.

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?

The description is concise with four sentences, front-loading the core purpose. Every sentence provides essential information: purpose, usage context, parameter distinction, and a critical security warning. No unnecessary words.

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?

Given the tool's complexity (5 optional parameters with security implications) and no output schema, the description covers the key points: when to use each parameter, authentication method, and a security warning. It omits details about response handling or error cases, but the openWorldHint annotation implies variability; overall sufficient for agent selection.

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

Parameters4/5

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

Schema coverage is 100%, so baseline is 3. The description adds semantic value by reinforcing the security distinction between 'preset' and 'url', and by stating that no presets are configured. This extra context helps the agent understand parameter usage beyond the schema's own descriptions.

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?

The description clearly states the tool fetches JSON from an HTTP endpoint, specifies its usage by render_live_chart for polling, and distinguishes it from siblings which are all rendering or file-saving tools. The verb 'Fetch' and resource 'JSON from HTTP endpoint' are specific and unambiguous.

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?

The description gives explicit guidance on when to use 'preset' (authenticated APIs) versus 'url' (public APIs), with a strong warning against passing API keys in headers. It also notes that no presets are configured, setting clear expectations. This directly helps the agent choose the correct parameter and avoid misuse.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_bar_chartBar ChartA
Read-onlyIdempotent

Render an interactive bar chart. Supports vertical/horizontal, stacked, multi-series, and click-to-drill-down (options.drilldown). Supports themes for styled visuals.

ParametersJSON Schema
NameRequiredDescriptionDefault
themeNoTheme preset: boardroom, corporate, sales-floor, golden-treasury, clinical, startup, ops-control, tokyo-midnight, zen-garden, consultant, black-tron, black-elegance, black-matrix, forest-amber, forest-earth, sky-light, sky-ocean, sky-twilight, gray-hf, gray-copilot, office-red
titleYesChart title
labelsYesCategory labels for the x-axis
effectsNoOverride effects: none, subtle, shimmer, neon, energetic
optionsNo
paletteNoOverride palette only (mix-and-match)
datasetsYesOne or more data series
typographyNoOverride typography: professional, luxury, cyberpunk, editorial, mono, bold, system, techno

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and idempotentHint, so the tool is safe and idempotent. The description adds that the chart is interactive (drill-down), providing behavioral value beyond annotations.

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?

Two concise sentences front-loading purpose then features, with zero waste.

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?

No output schema, but description covers key capabilities. It is mostly complete for a rendering tool, though could mention return type or side effects.

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 coverage is high (88%), so baseline is 3. Description mentions drilldown and themes but does not add substantial meaning beyond what schema descriptions already provide.

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?

The description clearly states it renders a bar chart and lists supported modes (vertical/horizontal, stacked, multi-series, click-to-drill-down), distinguishing it from sibling chart tools.

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?

No explicit guidance on when to use this tool vs alternatives. The description implies usage for bar chart needs but lacks exclusionary context or alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_boxplot_chartBoxplot / ViolinA
Read-onlyIdempotent

Render a boxplot or violin chart - 'What is the distribution?' Shows median, quartiles, whiskers, and outliers. Pass raw number arrays per category - stats computed automatically. Use style='violin' for density shape.

ParametersJSON Schema
NameRequiredDescriptionDefault
themeNoTheme preset: boardroom, corporate, sales-floor, golden-treasury, clinical, startup, ops-control, tokyo-midnight, zen-garden, consultant, black-tron, black-elegance, black-matrix, forest-amber, forest-earth, sky-light, sky-ocean, sky-twilight, gray-hf, gray-copilot, office-red
titleYesChart title
labelsYesCategory labels (e.g. ['Q1', 'Q2', 'Q3', 'Q4'])
effectsNoOverride effects: none, subtle, shimmer, neon, energetic
optionsNo
paletteNoOverride palette only (mix-and-match)
datasetsYesOne or more data series
typographyNoOverride typography: professional, luxury, cyberpunk, editorial, mono, bold, system, techno

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false. The description adds that stats are computed automatically, which is helpful. No contradiction, but no further behavioral details (e.g., return format) are provided.

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?

The description is three sentences, each adding value: purpose, input format, and an option example. No fluff, front-loaded, and easy to scan.

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?

The description covers core functionality and data input but omits output format (e.g., what is returned) and advanced options (theme, effects, etc.). Given moderate complexity and no output schema, more details would improve completeness.

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

Parameters4/5

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

Schema coverage is 88% so the schema describes most parameters. The description adds meaning by explaining that data should be raw number arrays and that stats are computed automatically, which complements the schema.

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?

The description clearly states 'Render a boxplot or violin chart' with the specific purpose of showing distribution (median, quartiles, whiskers, outliers). It distinguishes from sibling chart tools by name and functionality.

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

Usage Guidelines4/5

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

The description tells when to use it ('What is the distribution?') and how to pass data (raw number arrays). However, it does not explicitly exclude alternatives or compare to other distribution-oriented charts, missing some guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_bubble_mapBubble MapA
Read-onlyIdempotent

Render a bubble/pin map - sized circles at geographic coordinates. Pass an array of { label, latitude, longitude, value } points. Great for showing city-level data, office locations, event density, etc.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYesArray of geographic data points
themeNoTheme preset: boardroom, corporate, sales-floor, golden-treasury, clinical, startup, ops-control, tokyo-midnight, zen-garden, consultant, black-tron, black-elegance, black-matrix, forest-amber, forest-earth, sky-light, sky-ocean, sky-twilight, gray-hf, gray-copilot, office-red
titleYesChart title
effectsNoOverride effects: none, subtle, shimmer, neon, energetic
paletteNoOverride palette only (mix-and-match)
sizeRangeNoMin and max bubble radius in pixels. Default: [3, 25]
projectionNoMap projection. Default: naturalEarth1
typographyNoOverride typography: professional, luxury, cyberpunk, editorial, mono, bold, system, techno
bubbleColorNoBubble fill color. Default: theme accent
showOutlineNoShow country outlines. Default: true

TDQS

A3.6/5.0
Behavior2/5

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

Annotations provide readOnlyHint, idempotentHint, and destructiveHint, but the description does not add any behavioral details beyond 'render', such as what the tool returns (e.g., image URL, file path). It misses explaining the output or side effects.

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?

Two sentences that are front-loaded with the core purpose and data structure. Every word serves a purpose; no unnecessary information.

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

Completeness2/5

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

With 10 parameters and no output schema, the description should clarify what the tool returns or how to use its result. It only describes input, leaving gaps for an agent to understand the full workflow.

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

Parameters4/5

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

Schema coverage is 100%, so baseline is 3. The description adds context by specifying the expected point fields ({label, latitude, longitude, value}) and example uses (city-level data, etc.), adding meaning beyond the schema.

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?

The description clearly states the tool renders a bubble/pin map with sized circles at geographic coordinates. It specifies the expected data structure and provides example use cases, distinguishing it from other render tools.

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?

The description gives use cases like city-level data, office locations, and event density, but does not explicitly state when not to use this tool or provide alternatives like render_geo_chart. Usage guidance is implied rather than explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_bullet_chartBullet ChartA
Read-onlyIdempotent

Render bullet charts - 'Are we hitting target?' Horizontal bars with qualitative zones and a target marker. Supports 2-8 zones with optional labels and colors. Great for KPI vs target, seniority bands, maturity models.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYesArray of bullet items
themeNoTheme preset: boardroom, corporate, sales-floor, golden-treasury, clinical, startup, ops-control, tokyo-midnight, zen-garden, consultant, black-tron, black-elegance, black-matrix, forest-amber, forest-earth, sky-light, sky-ocean, sky-twilight, gray-hf, gray-copilot, office-red
titleYesChart title
effectsNoOverride effects: none, subtle, shimmer, neon, energetic
paletteNoOverride palette only (mix-and-match)
typographyNoOverride typography: professional, luxury, cyberpunk, editorial, mono, bold, system, techno
zoneColorsNoCustom colors per zone band. Defaults to red-to-green gradient
zoneLabelsNoLabels for each zone band. Length should be zones+1 (e.g., 5 thresholds = 6 labels)

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the description adds value by detailing the chart's visual elements (zones, target marker) and constraints (2-8 zones). No contradiction with annotations.

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?

Two efficient sentences covering purpose, features, and use cases. No filler, front-loaded with key information.

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 chart-rendering tool with no output schema and 8 parameters, the description covers core purpose and zone details. Could mention theme/palette support briefly, but schema handles specifics. Adequately complete.

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 coverage is 100% with descriptions for all parameters. The description does not add new parameter-specific details beyond the schema, so baseline score 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?

Description clearly states the verb ('render'), resource ('bullet chart'), and its purpose ('Are we hitting target?'). It distinguishes from sibling charts like render_bar_chart by defining the specific chart type and use case (KPI vs target, maturity models).

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

Usage Guidelines4/5

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

Provides examples of when to use (KPI vs target, seniority bands) but does not explicitly state when not to use or name alternatives. Still, the context helps the agent decide.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_candlestick_chartCandlestick ChartA
Read-onlyIdempotent

Render an interactive candlestick or OHLC financial chart. Provide date/OHLC data for stock prices, crypto, forex, or any time-series financial data. Supports themes for styled visuals.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYesArray of {date, o, h, l, c} OHLC data points
themeNoTheme preset: boardroom, corporate, sales-floor, golden-treasury, clinical, startup, ops-control, tokyo-midnight, zen-garden, consultant, black-tron, black-elegance, black-matrix, forest-amber, forest-earth, sky-light, sky-ocean, sky-twilight, gray-hf, gray-copilot, office-red
titleYesChart title
effectsNoOverride effects: none, subtle, shimmer, neon, energetic
optionsNo
paletteNoOverride palette only (mix-and-match)
typographyNoOverride typography: professional, luxury, cyberpunk, editorial, mono, bold, system, techno

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, which cover the major behavioral traits (non-destructive, idempotent, safe). The description adds no further behavioral context (e.g., authentication, rate limits, output format), but also does not contradict the annotations. The baseline score is appropriate given the annotations carry the transparency burden.

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?

The description is two sentences, front-loaded with the primary action and type, followed by supported data and themes. No unnecessary words; concise and efficient. Every sentence adds value.

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?

Given the rich input schema (86% coverage) and clear annotations, the description adequately covers the tool's purpose and data requirements. However, it omits the return type (e.g., rendered chart as HTML/image), which could aid the agent in understanding the output. Still, the description is largely complete for a chart rendering tool.

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?

With 86% schema description coverage, the input schema already provides detailed descriptions for most parameters, including the data array, theme presets, and options. The description only adds general context ('Provide date/OHLC data... Supports themes') without enriching specific parameter meanings. It meets the baseline for high-coverage schemas.

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?

The description clearly specifies the tool renders an interactive candlestick or OHLC financial chart, distinguishing it from other chart types. It explicitly mentions the data format (date/OHLC) and use cases (stock prices, crypto, forex), which is specific and differentiating from sibling tools like render_line_chart or render_bar_chart.

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?

The description implies the tool is for financial time-series data (stock, crypto, forex) but does not explicitly state when to use it versus alternatives or when not to use it. No exclusions or comparisons are provided, leaving the agent to infer appropriate usage from the name and description alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_catalogMaster CatalogA
Read-onlyIdempotent

Master entry point to discover everything mcp-dashboards can do. Each tile is a live visual preview of one customization dimension - a real bar chart for charts, a pie for themes, a progress ring for hero variants, a neon-glowing card for effects. Click any tile then hit Ask, and the AI will route to the matching sub-catalog tool (render_chart_catalog, render_theme_catalog, render_hero_catalog, render_effects_catalog).

ParametersJSON Schema
NameRequiredDescriptionDefault
themeNoTheme preset: boardroom, corporate, sales-floor, golden-treasury, clinical, startup, ops-control, tokyo-midnight, zen-garden, consultant, black-tron, black-elegance, black-matrix, forest-amber, forest-earth, sky-light, sky-ocean, sky-twilight, gray-hf, gray-copilot, office-red

TDQS

A4.3/5.0
Behavior4/5

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

Annotations declare readOnly, idempotent, non-destructive. Description adds context about previews and routing, which aligns with annotations. No contradictions.

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?

Two concise sentences that front-load the purpose and describe the interaction without unnecessary detail. Every sentence contributes.

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?

For a simple catalog tool with one optional parameter and no output schema, the description covers purpose, interaction, and routing behavior. No gaps.

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 coverage is 100% with a comprehensive list of theme values. Description does not add additional meaning about how the theme parameter affects the catalog output, so it does not add value beyond the schema.

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?

Description clearly states it is the 'master entry point' to discover capabilities, with live visual previews and routing to sub-catalog tools. This distinguishes it from sibling render tools that focus on specific chart types.

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

Usage Guidelines4/5

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

Description implies usage by suggesting to click a tile and hit Ask, and mentions sub-catalog tools as alternatives. However, it does not explicitly state when not to use it or contrast with direct render tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_chart_catalogChart CatalogA
Read-onlyIdempotent

Show a visual catalog of every available chart type as a dashboard of mini previews. Click any card to learn more about that chart tool. For a master entry point covering all customization dimensions, see render_catalog.

ParametersJSON Schema
NameRequiredDescriptionDefault
themeNoTheme preset: boardroom, corporate, sales-floor, golden-treasury, clinical, startup, ops-control, tokyo-midnight, zen-garden, consultant, black-tron, black-elegance, black-matrix, forest-amber, forest-earth, sky-light, sky-ocean, sky-twilight, gray-hf, gray-copilot, office-red

TDQS

A4.1/5.0
Behavior3/5

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

Annotations already indicate safety (readOnlyHint, idempotentHint, destructiveHint false). The description adds that clicking cards leads to more info, but no additional behavioral traits beyond what annotations provide. It does not contradict annotations.

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?

Two sentences with no wasted words. The first sentence states purpose, the second provides a useful alternative reference.

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?

For a simple tool with one optional parameter, no output schema, and full annotation coverage, the description adequately covers purpose and provides a pointer to a related tool. No gaps for the use case.

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 coverage is 100% with one parameter 'theme' fully described in the schema. The description adds no additional meaning for this parameter, so baseline score of 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?

The description clearly states the tool's action ('Show a visual catalog') and resource ('every available chart type as a dashboard of mini previews'). It also distinguishes itself from the sibling tool render_catalog by noting that this tool is for previews while render_catalog covers customization.

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

Usage Guidelines4/5

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

The description provides explicit guidance to use render_catalog for customization, implying this tool is for a visual overview. However, it does not give context on when to prefer this over other chart renderers like render_bar_chart.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_dashboardDashboardB
Read-onlyIdempotent

Render a full dashboard with KPI cards, charts, and optional hero metric in a responsive grid. Available themes: boardroom (investors, board decks), corporate (enterprise daily use), sales-floor (quota tracking, leaderboards), golden-treasury (wealth, luxury real estate), clinical (healthcare, compliance - WCAG AAA), startup (SaaS metrics, YC demos), ops-control (DevOps, manufacturing), tokyo-midnight (crypto, trading, gaming), zen-garden (wellness, sustainability), consultant (agency deliverables, presentations), office-red (corporate report-style, Word/PowerPoint aesthetic). Mix-and-match: set palette + typography + effects independently.

ParametersJSON Schema
NameRequiredDescriptionDefault
heroNoHero metric(s) - single object or array for multi-hero row
kpisNoKPI cards at the top. Include sparkline[] with 5-20 trend values whenever a metric has a % change - this adds an inline mini chart to the card
themeNoTheme preset: boardroom, corporate, sales-floor, golden-treasury, clinical, startup, ops-control, tokyo-midnight, zen-garden, consultant, black-tron, black-elegance, black-matrix, forest-amber, forest-earth, sky-light, sky-ocean, sky-twilight, gray-hf, gray-copilot, office-red
titleYesDashboard title
chartsYesArray of charts to display in the grid
footerNoFooter bar with text and/or timestamp
layoutNoLayout variant: default (hero above KPIs), hero-center (hero prominent), kpi-top (KPIs first)
columnsNoNumber of grid columns (1-4). Default: auto-fill based on available width
effectsNoOverride effects: none, subtle, shimmer, neon, energetic
paletteNoOverride palette only (mix-and-match)
typographyNoOverride typography: professional, luxury, cyberpunk, editorial, mono, bold, system, techno

TDQS

B3.4/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds theme listings and customization details but does not disclose any additional behavioral traits (e.g., data source expectations, limitations). Minimal value added beyond annotations.

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?

Description is a single paragraph that front-loads the main purpose and lists themes efficiently. It is concise, though the lengthy theme list could be shortened or placed in schema. Overall well-structured.

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?

Given the tool's complexity (11 parameters, nested objects), the description explains dashboard components and theming adequately but omits details about layout, grid behavior, and chart-specific options that are only in schema. With no output schema, more could be added to cover return format.

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 descriptions cover 100% of parameters. The description provides a list of themes and notes mix-and-match customization, but this largely echoes schema information. Baseline 3 is appropriate as the description adds marginal extra meaning.

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?

Description explicitly states 'Render a full dashboard with KPI cards, charts, and optional hero metric', clearly identifying the verb (render) and resource (dashboard). It contrasts with sibling single-chart renders by specifying it produces a composite dashboard.

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?

No explicit guidance on when to use this tool versus alternatives. The description implies it's for full dashboards, but does not provide criteria for choosing it over individual chart renders or other composite tools. Usage is implicit rather than prescriptive.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_dumbbell_chartDumbbell ChartB
Read-onlyIdempotent

Render a dumbbell chart - 'How big is the gap?' Before/after dots connected by a bar. Supports scale labels and background zones for absolute positioning context.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYesArray of {label, before, after} items
unitNoUnit suffix
themeNoTheme preset: boardroom, corporate, sales-floor, golden-treasury, clinical, startup, ops-control, tokyo-midnight, zen-garden, consultant, black-tron, black-elegance, black-matrix, forest-amber, forest-earth, sky-light, sky-ocean, sky-twilight, gray-hf, gray-copilot, office-red
titleYesChart title
zonesNoBackground zone thresholds (same as bullet chart zones)
effectsNoOverride effects: none, subtle, shimmer, neon, energetic
paletteNoOverride palette only (mix-and-match)
afterLabelNoLabel for 'after' column (default: After)
typographyNoOverride typography: professional, luxury, cyberpunk, editorial, mono, bold, system, techno
zoneColorsNoCustom colors per zone band
zoneLabelsNoLabels for each zone band
beforeLabelNoLabel for 'before' column (default: Before)
scaleLabelsNoLabels at scale positions, e.g. {'40': 'Engineer', '65': 'Sr. Engineer'}

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds that it supports scale labels and background zones, which is useful behavioral context. However, it doesn't detail rendering output (e.g., returns an image) or other behaviors.

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?

Two sentences, front-loaded with purpose, then features. No extraneous words. Efficient and to the point.

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?

Covers core chart type and two advanced features (scale labels, zones) but omits mention of cosmetic parameters (theme, effects) and does not describe output. For a tool with 13 parameters and no output schema, slightly more context would be beneficial.

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 coverage is 100% with descriptions for all parameters. The description adds no parameter-specific information beyond the chart's purpose. Baseline 3 is appropriate since the schema handles parameter documentation.

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 clearly states it renders a dumbbell chart and explains the visual metaphor ('Before/after dots connected by a bar'). It distinguishes from siblings by specifying this chart type, but does not explicitly differentiate from similar charts like render_slope_chart.

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?

The description provides an implicit usage hint ('How big is the gap?') suggesting before/after comparisons, but lacks explicit guidance on when to use this tool versus alternatives, and does not mention when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_effects_catalogEffects CatalogA
Read-onlyIdempotent

Show a visual catalog of all 5 effect presets - none, subtle, shimmer, neon, energetic. Each card previews the effect and lists the underlying treatments it bundles. Click any card to use that effect. For a master entry point covering all customization dimensions, see render_catalog.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds behavioral context by explaining that each card previews the effect and lists underlying treatments, which is beyond what annotations provide. No contradictions.

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?

The description is three concise sentences with no redundancy. It front-loads the core purpose, lists the presets, explains card behavior, and points to an alternative. Every sentence adds value.

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?

Given no parameters and no output schema, the description fully covers what the tool does: shows a visual catalog of 5 effect presets with previews and treatment lists. No gaps remain.

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

Parameters4/5

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

The tool has no parameters, and schema coverage is 100%. Per guidelines, baseline is 4 for zero parameters. The description doesn't need to add parameter info.

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?

The description clearly states the tool displays a visual catalog of exactly 5 effect presets, naming each one (none, subtle, shimmer, neon, energetic). It distinguishes itself from siblings by noting that 'render_catalog' is the master entry point for all customization dimensions.

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?

The description provides explicit guidance on when to use this tool (for effects presets) and when to use an alternative ('For a master entry point covering all customization dimensions, see render_catalog').

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_flowchartFlowchartA
Read-onlyIdempotent

Render an interactive flowchart or diagram. USE THIS whenever the user wants to visualize a flow or structure: a workflow, data pipeline / ETL, system or software architecture, multi-agent or LLM agent design, decision tree, process map, org chart, or state machine. Nodes are rich cards (6 kinds: agent / tool / decision / data / input / output) with a type chip, name, and up to 3 property rows (e.g. model, tokens, latency); pass icon for a custom glyph. Edges support 5 typed kinds (request / response / async / stream / error) with distinct styles. Dagre auto-layout (DAG); draggable, zoomable, pannable, with a node list, minimap, and step-through playback. Status states (queued / running / done / failed / skipped) animate in place: set pollTool + statusPath for live updates, or pass a steps sequence of {nodeId: status} snapshots for manual playback. Do NOT hand-author x/y coordinates to position nodes - omit them and dagre auto-lays out the graph cleanly. Only pass x/y that were round-tripped back to you from a previous render (a user's saved drag layout), and only as a complete set covering every node; a partial set is ignored to prevent overlaps. This is a full-canvas tool, not a dashboard tile - for multi-chart layouts use render_dashboard.

ParametersJSON Schema
NameRequiredDescriptionDefault
edgesYesEdges between nodes (form a DAG)
nodesYesNodes in the flow
stepsNoOptional playback sequence: an ordered array of {nodeId: status} snapshots. The user can step/play through them with the playback control. If omitted, a progressive reveal is derived from the graph topology.
themeNoTheme preset: boardroom, corporate, sales-floor, golden-treasury, clinical, startup, ops-control, tokyo-midnight, zen-garden, consultant, black-tron, black-elegance, black-matrix, forest-amber, forest-earth, sky-light, sky-ocean, sky-twilight, gray-hf, gray-copilot, office-red
titleYesChart title
effectsNoOverride effects: none, subtle, shimmer, neon, energetic
paletteNoOverride palette only (mix-and-match)
intervalNoPoll interval in seconds. Default: 2
pollArgsNoArguments to pass to pollTool
pollToolNoOptional: name of an MCP tool to poll for live status updates (use 'poll_http' with a preset for external APIs)
subtitleNoOptional subtitle
directionNoLayout direction. TB (top-bottom, default) or LR (left-right)
statusPathNoDot-path to a {nodeId: status} map in the poll result (e.g. 'states' or 'agents.statuses'). If omitted, the result itself is treated as the map.
typographyNoOverride typography: professional, luxury, cyberpunk, editorial, mono, bold, system, techno
interactiveNoAllow drag-to-reposition nodes. Default: true

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds behavioral details such as interactivity (draggable, zoomable, pannable), auto-layout via Dagre, status states with live polling or manual playback, and constraints on x/y usage. No contradiction with annotations.

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?

The description is comprehensive but somewhat lengthy; however, every sentence serves a purpose, and key information is front-loaded. It strikes a good balance between completeness and clarity.

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?

Despite lacking an output schema, the description thoroughly covers the tool's functionality, including interactive features, status updates, polling, and layout constraints. It equips the agent with all necessary context to select and invoke the tool correctly.

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

Parameters4/5

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

Schema coverage is 100%, so every parameter already has a description. The description adds value by explaining usage constraints (e.g., x/y only from previous renders, statusPath dot-path, pollTool usage) and providing context beyond the schema.

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?

The description clearly states the tool renders interactive flowcharts/diagrams and lists specific use cases (workflow, data pipeline, system architecture, etc.). It distinguishes itself from sibling tools like render_dashboard by noting it's a full-canvas tool.

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?

The description explicitly says 'USE THIS whenever the user wants to visualize a flow or structure' and provides numerous examples. It also warns when not to use it (for multi-chart layouts, use render_dashboard) and advises against hand-authoring coordinates unless round-tripped.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_from_jsonAuto ChartA
Read-onlyIdempotent

Automatically detect the best chart type for arbitrary JSON data. Pass any JSON - arrays, objects, nested structures - and get the most appropriate visualization.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYesAny JSON data - arrays, objects, key-value pairs, nested structures
titleYesChart title
optionsNo

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true, covering safety and idempotency. The description adds the core auto-detection behavior, which is valuable beyond annotations. It does not contradict annotations.

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?

Two sentences, front-loaded, every word earns its place. No unnecessary information.

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 low-complexity tool with strong annotations and moderate schema, the description provides enough context (auto-detection, input flexibility). The lack of output schema is partially mitigated by the description's mention of 'visualization'.

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 coverage is 67% with descriptions for title and options.preferredType. The tool description adds context for the 'data' parameter ('arrays, objects, nested structures'), which is not fully detailed in the schema (type missing). This provides moderate added value.

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?

The description clearly states the tool's action: automatically detects the best chart type for arbitrary JSON data. It distinguishes itself from sibling tools that produce specific chart types (e.g., render_bar_chart) by emphasizing auto-detection.

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?

The description implies usage when you have arbitrary JSON and want automatic chart selection, but it does not explicitly declare when to use this tool versus the many specific chart renderers (e.g., render_bar_chart). No guidance on when not to use or prerequisites is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_from_urlChart from URLA
Read-only

Fetch JSON data from a URL and automatically visualize it. The server fetches the data, detects the best chart type, and renders it interactively.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesURL that returns JSON data
titleYesChart title
optionsNo

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already indicate read-only and non-destructive behavior. The description adds that it fetches data from a URL, auto-detects chart type, and renders interactively, which goes beyond annotations. No mention of error handling or edge cases, but overall transparent.

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?

Two sentences, front-loading the core purpose, with no unnecessary words. Every sentence adds value.

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?

Given the tool's complexity (URL fetch, auto-detection, interactive rendering) and no output schema, the description covers key behaviors but lacks details on error handling, authentication, or return format. Still sufficient to differentiate from siblings.

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 coverage is 67% with descriptions for title and url. The description does not add new parameter meanings beyond what the schema provides; the auto-detection mention relates to options.preferredType but adds no syntax. 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?

The description clearly states the tool fetches JSON from a URL, auto-detects the chart type, and renders it interactively. This distinguishes it from siblings like render_from_json (inline JSON) and chart-specific tools (which require explicit type selection).

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

Usage Guidelines4/5

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

The description implies use when you have a URL with JSON data and want automatic chart rendering. It does not provide explicit when-not or alternative tool references, but the context is clear given the sibling list.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_funnel_chartFunnel ChartA
Read-onlyIdempotent

Render a funnel chart - 'Where do we lose people?' Width-proportional bars showing conversion stages with optional conversion percentages between stages.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYesArray of funnel stages (top to bottom)
themeNoTheme preset: boardroom, corporate, sales-floor, golden-treasury, clinical, startup, ops-control, tokyo-midnight, zen-garden, consultant, black-tron, black-elegance, black-matrix, forest-amber, forest-earth, sky-light, sky-ocean, sky-twilight, gray-hf, gray-copilot, office-red
titleYesChart title
effectsNoOverride effects: none, subtle, shimmer, neon, energetic
paletteNoOverride palette only (mix-and-match)
typographyNoOverride typography: professional, luxury, cyberpunk, editorial, mono, bold, system, techno
showConversionNoShow conversion % between stages (default: true)

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnly and idempotent behavior. The description adds visual details (width-proportional bars, conversion percentages) that go beyond annotations without contradiction.

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?

The description is a concise single sentence that provides core purpose and visual details. It is front-loaded and efficient, though could benefit from additional context without becoming verbose.

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?

Given 7 parameters, 100% schema coverage, and no output schema, the description covers the basic purpose and visual behavior. However, it lacks information on return value, ordering of stages, default options, or error handling, leaving some gaps for a complex chart tool.

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 coverage is 100%, so parameter semantics are already well-defined. The description adds value by mentioning the showConversion parameter's effect but does not significantly enhance understanding beyond the schema.

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?

The description clearly states the tool renders a funnel chart for conversion stages, with width-proportional bars and optional conversion percentages. It distinguishes from siblings like render_bar_chart or render_pie_chart by specifying the funnel chart purpose.

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?

The description implies usage for conversion analysis ('Where do we lose people?') but does not explicitly state when to use this versus other chart tools, nor provide when-not or alternative guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_geo_chartGeo MapA
Read-onlyIdempotent

Render a choropleth world map - 'Where is the value concentrated?' Color-coded countries by numeric value. Pass data as { countryCode: value } using ISO 3166-1 alpha-2 codes (US, DE, IN, GB, etc.).

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYesCountry values as { alpha2Code: number }. e.g. { 'US': 100, 'DE': 50, 'IN': 75 }
themeNoTheme preset: boardroom, corporate, sales-floor, golden-treasury, clinical, startup, ops-control, tokyo-midnight, zen-garden, consultant, black-tron, black-elegance, black-matrix, forest-amber, forest-earth, sky-light, sky-ocean, sky-twilight, gray-hf, gray-copilot, office-red
titleYesChart title
effectsNoOverride effects: none, subtle, shimmer, neon, energetic
paletteNoOverride palette only (mix-and-match)
colorScaleNoColor scale: blue (default), green, red, heat, purple, orange
projectionNoMap projection. Default: naturalEarth1
showLegendNoShow color scale legend. Default: true
typographyNoOverride typography: professional, luxury, cyberpunk, editorial, mono, bold, system, techno
missingColorNoHex color for countries without data. Default: theme border color

TDQS

A4.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint and idempotentHint as true, and destructiveHint as false. The description adds the fact that it renders a map but does not elaborate on behavior like performance or edge cases. With annotations covering safety, the description adds minimal extra behavioral context.

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?

The description is two sentences, front-loading the purpose and data format. Every word earns its place, with no fluff or repetition.

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 10 parameters (2 required) and no output schema, the description captures the core functionality concisely. It could mention that the output is an image or chart, but the purpose is clear enough for an agent to invoke correctly.

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

Parameters4/5

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

Schema description coverage is 100%, so the baseline is 3. The description adds value by clarifying that country codes must be ISO 3166-1 alpha-2 and providing an example data format, which goes beyond the schema's property descriptions.

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?

The description clearly states the tool renders a choropleth world map, using the verb 'Render' and specifying the resource as a geographic map color-coded by numeric values. It distinguishes from sibling tools like render_bar_chart by focusing on geographic concentration.

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

Usage Guidelines4/5

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

The description implies use for geographic data visualization with the question 'Where is the value concentrated?' and specifies the data format with ISO codes. However, it does not explicitly state when not to use or provide alternatives among the many sibling render tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_heatmap_chartHeatmapB
Read-onlyIdempotent

Render a heatmap - 'When are patterns strongest?' Color-coded grid of values across rows and columns. Supports color scales: default (blue-purple-orange), red-green, blue, heat.

ParametersJSON Schema
NameRequiredDescriptionDefault
rowsYesRow labels
themeNoTheme preset: boardroom, corporate, sales-floor, golden-treasury, clinical, startup, ops-control, tokyo-midnight, zen-garden, consultant, black-tron, black-elegance, black-matrix, forest-amber, forest-earth, sky-light, sky-ocean, sky-twilight, gray-hf, gray-copilot, office-red
titleYesChart title
valuesYes2D array of values [row][column]
columnsYesColumn labels
effectsNoOverride effects: none, subtle, shimmer, neon, energetic
paletteNoOverride palette only (mix-and-match)
colorScaleNoColor scale: default, red-green, blue, heat
typographyNoOverride typography: professional, luxury, cyberpunk, editorial, mono, bold, system, techno

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already provide readOnlyHint=true and idempotentHint=true, so the description need not repeat those. It adds that color scales are supported, but does not disclose other behavioral traits like input validation, performance, or error handling.

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?

The description is a single, concise sentence with a question and key details. It is front-loaded and efficient, though it could benefit from slightly more structure to separate use case from features.

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

Completeness2/5

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

Given the tool has 9 parameters (4 required) and no output schema, the description fails to explain how values map to colors, usage of theme and effects, or expected output format. It is minimal and leaves many behavioral aspects undocumented.

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 coverage is 100%, so the schema already describes each parameter. The description mentions supported color scales, which overlaps with the schema's colorScale description. It adds marginal value beyond what the schema provides.

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 clearly states it renders a heatmap, a color-coded grid, and adds a use-case question 'When are patterns strongest?'. It distinguishes from sibling tools by specifying the heatmap type, but does not explicitly differentiate from other heatmap-like tools if any exist.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. The question 'When are patterns strongest?' implies a use case but does not explicitly state scenarios or when not to use it. No alternatives mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_hero_catalogHero Variant CatalogA
Read-onlyIdempotent

Show all 11 hero metric variants in a single dashboard - big_number, progress_ring, status, comparison, rank, countdown, threshold, breakdown, nps, orb, gem. Each card is a working preview with sample data. Click any card to learn about that variant.

ParametersJSON Schema
NameRequiredDescriptionDefault
themeNoTheme preset: boardroom, corporate, sales-floor, golden-treasury, clinical, startup, ops-control, tokyo-midnight, zen-garden, consultant, black-tron, black-elegance, black-matrix, forest-amber, forest-earth, sky-light, sky-ocean, sky-twilight, gray-hf, gray-copilot, office-red

TDQS

A4.3/5.0
Behavior4/5

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

The description adds context beyond annotations by stating 'working preview with sample data' and 'click any card to learn'. Annotations already indicate read-only and idempotent, and the description aligns without contradiction.

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?

Two sentences, front-loaded with the main action, zero wasted words. Efficiently conveys purpose and interactive nature.

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?

For a display tool with one optional parameter and no output schema, the description fully covers what the tool does, including the interactive preview behavior. Annotations support completeness.

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 coverage is 100% for the single parameter 'theme', and its description in the schema is already comprehensive. The tool description does not add further parameter semantics, so baseline score 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?

The description clearly states the verb 'Show', the resource 'hero metric variants', and the scope 'all 11 variants in a single dashboard'. It lists the variants explicitly, distinguishing from sibling tools like render_hero_metric.

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

Usage Guidelines4/5

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

The description provides clear context for when to use this tool (to display all hero metric variants). It does not explicitly exclude scenarios or mention alternatives, but the purpose is well-defined.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_hero_metricHero MetricA
Read-onlyIdempotent

Render a purpose-driven hero metric widget. Pick the variant that answers your question:

  • big_number: 'How much? Which direction?' Default hero metric - clean, professional, works in any context. Large value + trend arrow + optional sparkline. Params: value, unit, change, changePeriod, sparkline[]

  • progress_ring: 'How close to goal?' Animated ring or half-gauge. Params: value, unit, label, progress (0-100), style ('ring'|'gauge'), size, color

  • status: 'Good or bad?' Pulsing dot + subsystem badges. Params: label, statusLevel ('good'|'warn'|'bad'), subsystems[{name,status}], count, peak

  • comparison: 'How do we compare?' Before/after + improvement. Params: before, after, improvement, beforeLabel, afterLabel

  • rank: 'Where do I stand?' Badge + percentile. Params: rank, total, percentile, rankChange

  • countdown: 'How long left?' Time segment boxes. Params: segments[{value,label}] OR deadline (ISO date)

  • threshold: 'Above or below limit?' Gradient bar + marker. Params: value, max, threshold, unit, zones[{label,from,to,color}]

  • breakdown: 'What is the split?' Stacked bar + legend. Params: items[{label,value,color?}]

  • nps: 'How satisfied?' Score + rating scale. Params: value, max (default 100), rating ('good'|'neutral'|'bad')

  • orb: 'What is the headline?' Dramatic glowing sphere. Use golden orb for resumes/portfolios. For tech meetings use only black, white, or crystal-colored orbs as subtle flair. Best with dark themes (tokyo-midnight, ops-control, startup). Avoid for formal contexts (boardroom, clinical, consultant). Params: value, unit, label, color

  • gem: 'Premium gem metric' Faceted/spherical gem - for wealth, fintech, trading, crypto, luxury contexts ONLY. Best with golden-treasury, tokyo-midnight themes. Do NOT use for corporate, clinical, consultant, or boardroom dashboards - use big_number instead. Params: value, unit, label, gemType. gemTypes: crystal='Future' (forecasts, projections) | black_pearl='Rare find' (alt investments, crypto) | golden_pearl='Treasure' (gold, commodities) | white_pearl='Clean total' (savings) diamond='Crown number' (net worth, total revenue) | ruby='What's critical' (urgent, burn rate) | sapphire='Foundation' (stability, uptime) | emerald='Growth' (YoY, appreciation)

ParametersJSON Schema
NameRequiredDescriptionDefault
maxNoMaximum value for threshold/nps
peakNoPeak count
rankNoCurrent rank
sizeNoSize: sm/md/lg/xl
unitNoUnit label (e.g. 'grams', '%', 'USD')
afterNoAfter value
colorNoOverride accent color (hex)
countNoLive count
itemsNoBreakdown items
labelNoSub-label
styleNoprogress_ring style
themeNoTheme preset: boardroom, corporate, sales-floor, golden-treasury, clinical, startup, ops-control, tokyo-midnight, zen-garden, consultant, black-tron, black-elegance, black-matrix, forest-amber, forest-earth, sky-light, sky-ocean, sky-twilight, gray-hf, gray-copilot, office-red
titleYesChart title
totalNoTotal in ranking
valueNoMain metric value
zonesNoColor zones
beforeNoBefore value
changeNoPercentage change
ratingNoNPS rating override
effectsNoOverride effects: none, subtle, shimmer, neon, energetic
gemTypeNoGem type for variant=gem: diamond, ruby, sapphire, emerald, golden_pearl, white_pearl, black_pearl, crystal
paletteNoOverride palette only (mix-and-match)
variantNoWidget variant (default: big_number)
deadlineNoISO deadline date
progressNoRing fill 0-100
segmentsNoTime segments
sparklineNoMini bar sparkline data
thresholdNoThreshold limit line
afterLabelNoAfter column label
percentileNoPercentile
rankChangeNoPositions moved
subsystemsNoSubsystem badges
typographyNoOverride typography: professional, luxury, cyberpunk, editorial, mono, bold, system, techno
beforeLabelNoBefore column label
improvementNoImprovement label
statusLevelNoStatus level
changePeriodNoPeriod label for change (e.g. 'vs last month')

TDQS

A4.7/5.0
Behavior5/5

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

Adds rich behavioral context beyond annotations: 'animated ring', 'pulsing dot', 'glowing sphere', gem type meanings, and theme/context usage rules. No contradiction with annotations.

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?

Well-structured with clear variant headings and bullet points. Every sentence is informative, no fluff, appropriate length for the complexity.

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?

Thoroughly covers all 37 parameters across 11 variants, including usage guidance, behavioral traits, theme contexts, and gem type meanings. No output schema but description compensates fully.

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

Parameters4/5

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

Schema coverage is 100%, but description groups parameters per variant and explains their purpose (e.g., 'Large value + trend arrow + optional sparkline'), adding semantic value beyond the schema.

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?

The description clearly states it renders 'purpose-driven hero metric widgets', then lists 11 specific variants each with a distinct question they answer, distinguishing from sibling chart tools.

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

Usage Guidelines4/5

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

Provides explicit when-to-use guidance for each variant via questions (e.g., 'How much?', 'How close to goal?') and context restrictions (e.g., orb dark theme, gem luxury only). Lacks explicit exclusion of the tool itself versus siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_line_chartLine ChartA
Read-onlyIdempotent

Render an interactive line or area chart. Supports smooth curves, gradient fill, and multiple series. Supports themes for styled visuals.

ParametersJSON Schema
NameRequiredDescriptionDefault
themeNoTheme preset: boardroom, corporate, sales-floor, golden-treasury, clinical, startup, ops-control, tokyo-midnight, zen-garden, consultant, black-tron, black-elegance, black-matrix, forest-amber, forest-earth, sky-light, sky-ocean, sky-twilight, gray-hf, gray-copilot, office-red
titleYesChart title
labelsYesX-axis labels (e.g. dates, categories)
effectsNoOverride effects: none, subtle, shimmer, neon, energetic
optionsNo
paletteNoOverride palette only (mix-and-match)
datasetsYesOne or more data series
typographyNoOverride typography: professional, luxury, cyberpunk, editorial, mono, bold, system, techno

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, so the safety profile is clear. The description adds 'interactive' but no additional behavioral details (e.g., success/failure patterns, performance). No contradiction with annotations.

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?

Two sentences with no wasted words. Front-loaded with the core action ('Render an interactive line or area chart') followed by key features. Highly concise.

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?

Given 8 parameters, nested objects, and no output schema, the description is adequate but minimal. It covers core functionality but lacks usage guidance and behavioral context that would make it fully complete.

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 88%, which is high. The description does not add new meaning beyond listing capabilities already evident from the schema. Baseline score of 3 applies as the schema does the heavy lifting.

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?

The description clearly specifies the tool renders an interactive line or area chart, with support for smooth curves, gradient fill, multiple series, and themes. This distinguishes it from sibling chart tools like render_bar_chart or render_scatter_chart.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives (e.g., render_bar_chart, render_scatter_chart). The description does not state use cases or exclusions, leaving the agent without decision criteria.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_live_chartLive ChartA
Read-onlyIdempotent

Render a real-time auto-updating line chart that polls a tool at a regular interval. Use when the user wants to MONITOR a live data source. Set pollTool to 'poll_http' with pollArgs containing a preset or URL to poll external APIs (including other MCP servers' data). The chart auto-refreshes - no user action needed.

ParametersJSON Schema
NameRequiredDescriptionDefault
yMaxNoY-axis maximum (e.g. 100 for percentages)
yMinNoY-axis minimum
themeNoTheme preset: boardroom, corporate, sales-floor, golden-treasury, clinical, startup, ops-control, tokyo-midnight, zen-garden, consultant, black-tron, black-elegance, black-matrix, forest-amber, forest-earth, sky-light, sky-ocean, sky-twilight, gray-hf, gray-copilot, office-red
titleYesChart title
colorsNoCustom color palette as hex codes (e.g. ['#FF6384', '#36A2EB']). Uses default palette if omitted.
valuesYesOne or more numeric values to track per poll
yLabelNoY-axis label
effectsNoOverride effects: none, subtle, shimmer, neon, energetic
paletteNoOverride palette only (mix-and-match)
intervalNoPoll interval in seconds. Default: 2
pollArgsNoArguments to pass to the polled tool
pollToolYesName of the MCP tool to call on each poll (e.g. 'get_system_metrics')
maxPointsNoRolling window size. Default: 30
typographyNoOverride typography: professional, luxury, cyberpunk, editorial, mono, bold, system, techno

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true. The description adds value by explaining that the chart auto-refreshes and polls a tool at a regular interval, which is behavioral context beyond the annotations.

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?

The description is three sentences long, front-loads the main action, and uses clear, direct language with no wasted words or redundancy.

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?

Given the tool's high complexity (14 parameters, nested objects) and many sibling tools, the description adequately explains the core functionality and usage. It could elaborate slightly on why to choose this over static line charts, but it is sufficient for correct invocation.

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

Parameters4/5

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

Schema descriptions cover 100% of parameters, so baseline is 3. The description adds meaning by giving an example of using 'pollTool' with 'poll_http' and explaining how to poll external APIs, which provides context beyond the schema's generic descriptions.

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?

The description clearly states it renders a real-time auto-updating line chart that polls a tool. It uses a specific verb ('Render') and resource ('live chart'), and distinguishes itself from sibling tools like 'render_line_chart' by emphasizing the real-time, auto-updating polling behavior.

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

Usage Guidelines4/5

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

The description explicitly says 'Use when the user wants to MONITOR a live data source' and provides guidance on setting up polling via 'pollTool' and 'pollArgs'. It does not explicitly mention when not to use it, but the context is clear and helpful.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_lollipop_chartLollipop ChartA
Read-onlyIdempotent

Render a lollipop chart - 'How do segments compare?' Horizontal lines with dots at the value. Supports optional target markers for benchmarking. Clean alternative to bar charts for ranked data.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYesArray of {label, value} items
themeNoTheme preset: boardroom, corporate, sales-floor, golden-treasury, clinical, startup, ops-control, tokyo-midnight, zen-garden, consultant, black-tron, black-elegance, black-matrix, forest-amber, forest-earth, sky-light, sky-ocean, sky-twilight, gray-hf, gray-copilot, office-red
titleYesChart title
effectsNoOverride effects: none, subtle, shimmer, neon, energetic
paletteNoOverride palette only (mix-and-match)
typographyNoOverride typography: professional, luxury, cyberpunk, editorial, mono, bold, system, techno

TDQS

A4.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and non-destructive behavior. The description adds that the tool renders a chart (non-destructive) and supports optional target markers, but goes beyond what annotations provide. It does not elaborate on other behavioral aspects like resource usage or side effects.

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?

Two highly efficient sentences: first defines purpose and visual, second adds features and usage context. No filler, each sentence earns its place.

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?

Given 6 parameters, 100% schema coverage, and annotations, the description covers purpose, key features, and usage context. It lacks details on parameters like theme or effects, but those are self-explanatory from the schema. The description is sufficiently complete for a straightforward chart tool.

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

Parameters4/5

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

Schema coverage is 100%, achieving baseline 3. The description adds value by explaining that the tool 'supports optional target markers for benchmarking,' which directly informs the target parameter. However, it does not elaborate on the other parameters (theme, effects, etc.), but they are adequately described in the schema.

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?

Description clearly states the tool renders a lollipop chart for comparing segments, with horizontal lines and dots. Also mentions optional target markers and positions it as a cleaner alternative to bar charts, effectively distinguishing it from sibling chart tools like render_bar_chart.

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

Usage Guidelines4/5

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

The description specifies the tool is for 'How do segments compare?' and labels it a 'Clean alternative to bar charts for ranked data,' giving clear context for when to use it over bar charts. However, it doesn't explicitly state when not to use it or mention other alternatives like dumbbell charts.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_pie_chartPie ChartA
Read-onlyIdempotent

Render an interactive pie or donut chart from key-value data. Provide an array of {label, value} pairs. Supports themes for styled visuals.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYesArray of {label, value} pairs
themeNoTheme preset: boardroom, corporate, sales-floor, golden-treasury, clinical, startup, ops-control, tokyo-midnight, zen-garden, consultant, black-tron, black-elegance, black-matrix, forest-amber, forest-earth, sky-light, sky-ocean, sky-twilight, gray-hf, gray-copilot, office-red
titleYesChart title
effectsNoOverride effects: none, subtle, shimmer, neon, energetic
optionsNo
paletteNoOverride palette only (mix-and-match)
typographyNoOverride typography: professional, luxury, cyberpunk, editorial, mono, bold, system, techno

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already indicate readOnlyHint=true, idempotentHint=true, and destructiveHint=false, conveying safety. The description adds that it renders interactive charts and supports themes, but does not contradict annotations. However, it does not add deep behavioral context beyond what annotations imply.

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?

Two sentences with no redundancy. First sentence states purpose and required input; second mentions themes. Front-loaded and concise.

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?

The description covers essential aspects (data format, theme) but omits details on customization options (effects, donut mode, colors, legend, palette, typography). Given 7 parameters and no output schema, more context could help an agent select or configure the tool correctly.

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 86%, so the schema already explains most parameters. The description mentions the core data format and theme support but does not delve into other parameters like effects, options, palette, etc. With high schema coverage, the description adds marginal value.

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?

The description clearly states the tool renders an interactive pie or donut chart from key-value data, specifying the input format as an array of {label, value} pairs. It distinguishes from siblings (many other render_* charts) by explicitly naming the chart type.

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?

The description implies the tool is for pie/donut charts but provides no explicit guidance on when to use it vs alternatives like render_bar_chart or render_line_chart. No when-to-use, when-not-to-use, or alternative suggestions are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_radar_chartRadar ChartA
Read-onlyIdempotent

Render a radar (spider/web) chart - 'How do items compare across multiple dimensions?' Great for skill profiles, product comparisons, competitive analysis.

ParametersJSON Schema
NameRequiredDescriptionDefault
themeNoTheme preset: boardroom, corporate, sales-floor, golden-treasury, clinical, startup, ops-control, tokyo-midnight, zen-garden, consultant, black-tron, black-elegance, black-matrix, forest-amber, forest-earth, sky-light, sky-ocean, sky-twilight, gray-hf, gray-copilot, office-red
titleYesChart title
labelsYesAxis labels around the perimeter (e.g. Speed, Cost, UX)
effectsNoOverride effects: none, subtle, shimmer, neon, energetic
optionsNo
paletteNoOverride palette only (mix-and-match)
datasetsYesOne or more data series to compare
typographyNoOverride typography: professional, luxury, cyberpunk, editorial, mono, bold, system, techno

TDQS

A3.5/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds no behavioral context beyond this, e.g., about rendering process, file output, or limitations.

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?

The description is two sentences with no fluff, front-loading the core purpose and then adding clarifying context. Every sentence contributes value.

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?

The tool has 8 parameters, nested objects, and no output schema. The description covers purpose and use cases but lacks details on output format, side effects, or constraints beyond the annotations. Adequate but not comprehensive.

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 coverage is high (88%), and the description adds a summary phrase but does not explain parameters beyond what the schema already provides. 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?

The description clearly states it renders a radar (spider/web) chart, gives a question phrase to illustrate its use, and provides specific examples (skill profiles, product comparisons). This distinguishes it from many sibling chart-rendering tools.

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?

The description implies usage through the question and examples, but does not explicitly state when not to use this tool or mention alternative chart types available in the sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_radial_clusterRadial ClusterA
Read-onlyIdempotent

Render a radial cluster - 'Multi-metric health check?' Multiple small ring gauges showing percentage metrics with status colors. Optional alert message.

ParametersJSON Schema
NameRequiredDescriptionDefault
alertNoAlert message below rings
themeNoTheme preset: boardroom, corporate, sales-floor, golden-treasury, clinical, startup, ops-control, tokyo-midnight, zen-garden, consultant, black-tron, black-elegance, black-matrix, forest-amber, forest-earth, sky-light, sky-ocean, sky-twilight, gray-hf, gray-copilot, office-red
titleYesChart title
effectsNoOverride effects: none, subtle, shimmer, neon, energetic
metricsYesArray of ring metrics
paletteNoOverride palette only (mix-and-match)
typographyNoOverride typography: professional, luxury, cyberpunk, editorial, mono, bold, system, techno

TDQS

A3.5/5.0
Behavior2/5

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

Annotations already declare the tool as read-only, idempotent, and non-destructive. The description adds no additional behavioral context (e.g., return format, side effects, or dependencies). With annotations covering safety, the description contributes little extra transparency.

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?

The description is two sentences, highly concise and front-loaded with the tool's purpose. No redundant or irrelevant information.

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?

The description is minimal but adequate for a simple rendering tool with fully documented parameters and annotations. It lacks output schema information, but that is accounted for. It does not cover limitations or prerequisites, which would be useful for a chart tool.

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 input schema already documents all parameters. The description mentions 'status colors', which relates to the metrics' status field, but does not add meaning beyond the schema. Baseline score of 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?

The description clearly states the tool renders a radial cluster chart for multi-metric health checks, with multiple ring gauges showing percentage metrics and status colors. It distinctively describes the chart type, differentiating it from sibling chart renderers.

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?

The phrase 'Multi-metric health check?' implies usage for comparing multiple metrics, but no explicit guidance on when to use this tool versus alternatives like render_bar_chart or render_pie_chart. No exclusions or when-not-to guidance provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_sankey_chartSankey DiagramA
Read-onlyIdempotent

Render a sankey flow diagram - 'Where does it go?' Shows flows between nodes with width proportional to value. Great for budget flows, user journeys, energy transfers, conversion funnels with multiple paths.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYesArray of flows between nodes
themeNoTheme preset: boardroom, corporate, sales-floor, golden-treasury, clinical, startup, ops-control, tokyo-midnight, zen-garden, consultant, black-tron, black-elegance, black-matrix, forest-amber, forest-earth, sky-light, sky-ocean, sky-twilight, gray-hf, gray-copilot, office-red
titleYesChart title
effectsNoOverride effects: none, subtle, shimmer, neon, energetic
optionsNo
paletteNoOverride palette only (mix-and-match)
typographyNoOverride typography: professional, luxury, cyberpunk, editorial, mono, bold, system, techno

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering safety and idempotency. The description adds no behavioral details beyond the chart's visual mapping, which is consistent but not supplementary.

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?

Two sentences, no redundancy. The first sentence clearly states the action and concept; the second lists use cases. Every word is purposeful and front-loaded.

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 rendering tool with 7 parameters (2 required) and no output schema, the description adequately explains the chart type and typical applications. It could mention that the output is a rendered image, but the purpose is clear enough.

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 86%, meaning most parameters are well-documented in the schema. The description adds minimal parameter-level value (only implicitly explains 'flow' width). Baseline score of 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?

The description explicitly states 'Render a sankey flow diagram' and explains the concept with 'Where does it go? Shows flows between nodes with width proportional to value.' It lists specific use cases (budget flows, user journeys, etc.), clearly differentiating from other chart siblings.

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

Usage Guidelines4/5

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

The description provides clear use case examples ('Great for budget flows, user journeys, energy transfers, conversion funnels'), giving the agent context on when to use this tool. However, it lacks explicit when-not-to-use guidance or direct comparisons to alternative chart types among siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_scatter_chartScatter ChartB
Read-onlyIdempotent

Render an interactive scatter plot with x/y coordinate data. Supports multiple series and optional connecting lines. Supports themes for styled visuals.

ParametersJSON Schema
NameRequiredDescriptionDefault
themeNoTheme preset: boardroom, corporate, sales-floor, golden-treasury, clinical, startup, ops-control, tokyo-midnight, zen-garden, consultant, black-tron, black-elegance, black-matrix, forest-amber, forest-earth, sky-light, sky-ocean, sky-twilight, gray-hf, gray-copilot, office-red
titleYesChart title
effectsNoOverride effects: none, subtle, shimmer, neon, energetic
optionsNo
paletteNoOverride palette only (mix-and-match)
datasetsYesOne or more data series with {x, y} points
typographyNoOverride typography: professional, luxury, cyberpunk, editorial, mono, bold, system, techno

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, so the safety profile is clear. The description adds context about themes and optional lines, but doesn't disclose any unexpected behaviors or side effects. With strong annotations, the description adds moderate value.

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?

Two concise sentences with no superfluous information. Front-loaded with the core purpose and key features. Every sentence adds value.

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?

No output schema exists, so description should clarify what the tool returns (e.g., an image URL, HTML, etc.). It says 'render' but not the format. Otherwise, given complex nested input and good annotations, the description is adequate but could be more complete.

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 coverage is high (86%), so schema documents most parameters. The description mentions themes and optional connecting lines, which are already covered by schema properties. No additional semantic guidance is provided beyond what's in the input schema.

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 clearly states it renders a scatter plot with x/y coordinate data, supporting multiple series and optional connecting lines. It distinguishes from sibling chart tools by specifying the data type (x/y coordinates) and features like multiple series. Could be more explicit about use cases like correlation or distribution.

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

Usage Guidelines2/5

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

No guidance on when to use this tool vs alternatives like render_line_chart or render_bubble_map. The description doesn't mention when not to use or provide contextual cues for selection among many sibling chart tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_slope_chartSlope ChartA
Read-onlyIdempotent

Render a slope chart - 'How did rankings change?' SVG lines connecting two time periods showing relative position changes.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYesArray of {label, start, end} items
themeNoTheme preset: boardroom, corporate, sales-floor, golden-treasury, clinical, startup, ops-control, tokyo-midnight, zen-garden, consultant, black-tron, black-elegance, black-matrix, forest-amber, forest-earth, sky-light, sky-ocean, sky-twilight, gray-hf, gray-copilot, office-red
titleYesChart title
effectsNoOverride effects: none, subtle, shimmer, neon, energetic
paletteNoOverride palette only (mix-and-match)
periodEndYesLabel for end period (e.g. '2025')
typographyNoOverride typography: professional, luxury, cyberpunk, editorial, mono, bold, system, techno
periodStartYesLabel for start period (e.g. '2024')

TDQS

A3.9/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, indicating a safe, non-destructive operation. The description adds that it produces SVG lines, confirming the output format and visual nature, which is useful but not extensive.

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?

The description is a single, front-loaded sentence that efficiently conveys the tool's purpose and output. The clarifying question adds value without unnecessary verbosity.

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 8 parameters (4 required) and no output schema, the description sufficiently conveys the tool's conceptual purpose and output format (SVG lines). It does not detail optional parameters like theme or effects, but the schema covers those. The description is adequate for this complexity level.

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%, meaning every parameter already has a description in the schema. The tool description does not provide additional details about parameter usage, so it meets but does not exceed the baseline for parameter documentation.

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?

The description clearly states the tool renders a slope chart, specifically for showing 'How did rankings change?' using SVG lines between two time periods. This specific verb-resource combination and the clarifying question distinguish it from siblings like render_bar_chart or render_line_chart.

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

Usage Guidelines4/5

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

The description implicitly guides usage for comparing relative position changes across two time periods. While it does not explicitly state when not to use this tool or provide alternatives, the context is clear enough for an AI agent to select it for ranking-change scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_sparkline_chartSparkline CardsA
Read-onlyIdempotent

Standalone sparkline card grid. Prefer using KPI cards with sparkline[] inside render_dashboard instead for a cleaner integrated look.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYesArray of sparkline card items
themeNoTheme preset: boardroom, corporate, sales-floor, golden-treasury, clinical, startup, ops-control, tokyo-midnight, zen-garden, consultant, black-tron, black-elegance, black-matrix, forest-amber, forest-earth, sky-light, sky-ocean, sky-twilight, gray-hf, gray-copilot, office-red
titleYesChart title
effectsNoOverride effects: none, subtle, shimmer, neon, energetic
paletteNoOverride palette only (mix-and-match)
typographyNoOverride typography: professional, luxury, cyberpunk, editorial, mono, bold, system, techno

TDQS

A4.2/5.0
Behavior3/5

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

Annotations already convey readOnlyHint=true, idempotentHint=true, destructiveHint=false. Description adds that the tool creates a standalone grid, but does not elaborate further on behavior such as rendering details or limitations.

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?

Description is two sentences, no filler, front-loaded with purpose and guidance.

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?

Given the tool's simplicity (6 parameters, 2 required, no output schema), the description adequately covers purpose and usage. It could mention output format but is sufficient for basic understanding.

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 coverage is 100% so baseline is 3. Description adds no additional parameter-specific information beyond what the schema already provides.

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?

Description clearly states it renders a 'standalone sparkline card grid', with a specific verb and resource. It also distinguishes from sibling tools by noting that KPI cards with sparkline inside render_dashboard are preferred for an integrated look.

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?

Description explicitly advises preferring render_dashboard with sparkline[] for cleaner integration, providing a clear when-not-to-use and an alternative.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_tableData TableA
Read-onlyIdempotent

Render a sortable, interactive data table. Click column headers to sort. Supports themes for styled visuals.

ParametersJSON Schema
NameRequiredDescriptionDefault
rowsYesArray of row objects. Keys must match column names.
themeNoTheme preset: boardroom, corporate, sales-floor, golden-treasury, clinical, startup, ops-control, tokyo-midnight, zen-garden, consultant, black-tron, black-elegance, black-matrix, forest-amber, forest-earth, sky-light, sky-ocean, sky-twilight, gray-hf, gray-copilot, office-red
titleYesTable title
columnsYesColumn names in display order
effectsNoOverride effects: none, subtle, shimmer, neon, energetic
optionsNo
paletteNoOverride palette only (mix-and-match)
typographyNoOverride typography: professional, luxury, cyberpunk, editorial, mono, bold, system, techno

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnly and idempotent hints. The description adds that the table is sortable and supports themes, providing behavioral context beyond annotations without contradiction.

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?

Two concise sentences that front-load the core functionality. No redundant information. Every sentence adds value.

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 rendering tool with no output schema, the description adequately covers the table's interactive features. Could mention that it is part of a suite of render tools, but not necessary.

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 high (88% or more), so parameters are well-documented. The description does not add additional meaning beyond what the schema provides, such as sorting behavior or theme examples.

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?

The description clearly states it renders a sortable, interactive data table, distinguishing it from sibling tools that render charts or maps. The verb 'render' and resource 'data table' are specific.

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?

No explicit when-to-use or when-not-to-use information is provided. The description implies it is for tables but does not guide the agent on alternatives like render_bar_chart for visual data.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_theme_catalogTheme CatalogA
Read-onlyIdempotent

Show a visual catalog of all 21 available themes. Each card previews the theme's colors, typography, and effects. Click any card to use that theme. For a master entry point covering all customization dimensions, see render_catalog.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true. The description adds behavioral context: it shows 21 theme cards with previews of colors, typography, and effects, and allows clicking to use a theme. This is sufficient beyond the annotations.

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?

Three sentences with no wasted words. The first sentence states the purpose, the second adds detail about content, and the third provides a useful alternative reference. Front-loaded and efficient.

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?

Given 0 parameters, no output schema, and annotations that cover safety, the description is complete. It describes the visual output, user interaction, and points to a broader tool. Minor omission: how the theme is applied after clicking is implied but not specified.

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

Parameters4/5

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

There are 0 parameters and schema coverage is 100%. The description does not need to explain parameters. Baseline for 0-parameter tools is 4.

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?

The description clearly states the verb 'show' and the resource 'visual catalog of all 21 available themes'. It distinguishes from sibling tools by mentioning an alternative master entry point (render_catalog), avoiding confusion with other catalog tools.

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

Usage Guidelines4/5

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

Provides explicit guidance to use render_catalog for a master entry, implying this tool is for theme-specific selection. However, it does not explicitly state when not to use it or provide prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_timeline_chartTimelineA
Read-onlyIdempotent

Render a timeline - 'Where are we in the process?' Progress dots on a track with status colors (done, active, pending, blocked). Great for project milestones. Use horizontal for ≤8 items (better for slides), vertical for longer lists.

ParametersJSON Schema
NameRequiredDescriptionDefault
themeNoTheme preset: boardroom, corporate, sales-floor, golden-treasury, clinical, startup, ops-control, tokyo-midnight, zen-garden, consultant, black-tron, black-elegance, black-matrix, forest-amber, forest-earth, sky-light, sky-ocean, sky-twilight, gray-hf, gray-copilot, office-red
titleYesChart title
effectsNoOverride effects: none, subtle, shimmer, neon, energetic
paletteNoOverride palette only (mix-and-match)
subtitleNoSubtitle text
milestonesYesArray of milestone items
typographyNoOverride typography: professional, luxury, cyberpunk, editorial, mono, bold, system, techno
orientationNoLayout direction (default: vertical). Horizontal works best with ≤8 milestones.

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive. Description adds visual behavior (progress dots, status colors) and orientation advice, complementing annotations without contradiction.

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?

Three sentences covering purpose, usage, and orientation advice. No wasted words, front-loaded with key information.

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?

Adequate for a render tool with good annotations and high schema coverage. Covers purpose, usage context, and orientation guidance. Could mention output format but not needed given typical render behavior.

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

Parameters4/5

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

Schema coverage is 100%, so baseline is 3. Description adds value with orientation recommendation and explanation of status colors, going beyond schema definitions.

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?

Clearly states it renders a timeline chart with progress dots and status colors. Distinguishes from sibling chart renderers by naming the specific chart type and its use case.

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

Usage Guidelines4/5

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

Provides guidance on when to use (project milestones) and orientation recommendation based on number of items (horizontal ≤8, vertical longer). Lacks explicit when-not-to-use or alternatives, but context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_treemap_chartTreemapA
Read-onlyIdempotent

Render a treemap - 'What takes up the most space?' Nested rectangles sized by value. Supports optional grouping for hierarchical data (e.g. region > country). Great for budget breakdowns, disk usage, portfolio allocation.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYesArray of items to display
themeNoTheme preset: boardroom, corporate, sales-floor, golden-treasury, clinical, startup, ops-control, tokyo-midnight, zen-garden, consultant, black-tron, black-elegance, black-matrix, forest-amber, forest-earth, sky-light, sky-ocean, sky-twilight, gray-hf, gray-copilot, office-red
titleYesChart title
effectsNoOverride effects: none, subtle, shimmer, neon, energetic
optionsNo
paletteNoOverride palette only (mix-and-match)
typographyNoOverride typography: professional, luxury, cyberpunk, editorial, mono, bold, system, techno

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare the tool as read-only, idempotent, and non-destructive. The description does not contradict this and adds context about the chart type but no additional behavioral traits beyond what annotations provide.

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?

The description is very concise, using two short sentences that front-load the core purpose and immediately convey value. Every phrase is purposeful and avoids redundancy.

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?

Given the tool's complexity and absence of output schema, the description covers key aspects: chart type, hierarchical grouping, and example use cases. It could mention parameter requirements briefly, but high schema coverage mitigates the gap.

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 high (86%), so the schema handles most parameter meaning. The description reinforces the data parameter's role with 'value' and 'group' but adds minimal new semantic detail beyond the schema.

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?

The description clearly states the tool renders a treemap, defines its purpose as visualizing 'what takes up the most space' with nested rectangles sized by value, and distinguishes it from sibling chart tools by mentioning optional hierarchical grouping.

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

Usage Guidelines4/5

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

The description provides concrete use cases like budget breakdowns, disk usage, and portfolio allocation, offering context for when to use this tool. It does not explicitly exclude other chart types or mention alternatives, but the examples help guide selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_variance_chartVariance ChartB
Read-onlyIdempotent

Render a variance chart - 'Over or under budget?' Bars showing actual vs budget with color-coded over/under indicators.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYesArray of {label, budget, actual} items
unitNoUnit suffix (e.g. '$', 'k')
themeNoTheme preset: boardroom, corporate, sales-floor, golden-treasury, clinical, startup, ops-control, tokyo-midnight, zen-garden, consultant, black-tron, black-elegance, black-matrix, forest-amber, forest-earth, sky-light, sky-ocean, sky-twilight, gray-hf, gray-copilot, office-red
titleYesChart title
effectsNoOverride effects: none, subtle, shimmer, neon, energetic
paletteNoOverride palette only (mix-and-match)
typographyNoOverride typography: professional, luxury, cyberpunk, editorial, mono, bold, system, techno

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the agent knows it's a safe read operation. The description adds that it renders a chart with color-coded indicators, but does not disclose side effects (e.g., does it save to disk?). With annotations covering safety, a score of 3 is appropriate.

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?

The description is a single sentence with 21 words, front-loading the purpose. Every word earns its place with no wasted content.

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?

Given no output schema, the description explains the chart's visual output. However, it does not specify where the chart is rendered (e.g., displayed, saved as a file), which could be important for an agent. Still, it is mostly complete for a simple chart tool.

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 all parameters. The description provides context about the chart's purpose (variance) but does not add meaningful semantics beyond what is in the schema.

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 clearly states the tool renders a variance chart comparing actual vs budget with color-coding. However, it does not explicitly differentiate from sibling chart tools like render_bar_chart.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives. The description implies it's for variance/over-under budget scenarios but does not state when not to use it or provide comparisons.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_waffle_chartWaffle ChartA
Read-onlyIdempotent

Render a waffle chart - 'What is the composition?' 10x10 grid of colored squares showing proportional composition. Values should sum to 100.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYesArray of {label, value} composition items
themeNoTheme preset: boardroom, corporate, sales-floor, golden-treasury, clinical, startup, ops-control, tokyo-midnight, zen-garden, consultant, black-tron, black-elegance, black-matrix, forest-amber, forest-earth, sky-light, sky-ocean, sky-twilight, gray-hf, gray-copilot, office-red
titleYesChart title
effectsNoOverride effects: none, subtle, shimmer, neon, energetic
paletteNoOverride palette only (mix-and-match)
typographyNoOverride typography: professional, luxury, cyberpunk, editorial, mono, bold, system, techno

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, ensuring the agent knows it's a safe read operation. The description adds the key behavioral constraint that values should sum to 100, which is not in annotations. No contradictions.

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?

Two sentences, each earning its place: the first defines the tool and its visual form, the second adds the key constraint. No unnecessary words, well front-loaded.

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?

Given the complexity (6 params, no output schema) and the presence of annotations, the description covers the essential aspects: what the chart is, the data format, and a key constraint. It does not explain the return value, but for a render tool this is often implied.

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 all parameters. The description repeats the sum-to-100 constraint and adds the 10x10 grid context, but this does not significantly augment the parameter semantics beyond the schema.

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?

The description clearly states the verb 'Render' and the resource 'waffle chart', specifies the 10x10 grid and proportional composition, and distinguishes from sibling chart tools like pie or bar charts by focusing on composition with a grid layout.

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?

The phrase 'What is the composition?' implies it's used for showing parts of a whole, but there is no explicit guidance on when to use it versus alternatives like render_pie_chart or render_bar_chart, nor any when-not conditions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_waterfall_chartWaterfall ChartA
Read-onlyIdempotent

Render a waterfall chart - 'What drove the change?' Cascading bars showing how individual items add up or subtract to reach a total. Auto-infers add/sub/total if type omitted.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYesArray of waterfall items
unitNoUnit suffix (e.g. '$', 'k')
themeNoTheme preset: boardroom, corporate, sales-floor, golden-treasury, clinical, startup, ops-control, tokyo-midnight, zen-garden, consultant, black-tron, black-elegance, black-matrix, forest-amber, forest-earth, sky-light, sky-ocean, sky-twilight, gray-hf, gray-copilot, office-red
titleYesChart title
effectsNoOverride effects: none, subtle, shimmer, neon, energetic
paletteNoOverride palette only (mix-and-match)
typographyNoOverride typography: professional, luxury, cyberpunk, editorial, mono, bold, system, techno

TDQS

A4/5.0
Behavior4/5

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

Annotations indicate read-only, idempotent, and non-destructive behavior. The description adds value by explaining the auto-inference logic for bar types, which is beyond what annotations provide. No contradiction.

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?

Two concise sentences that front-load the purpose. No unnecessary words; every sentence adds value.

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?

Given the tool's complexity (7 parameters, no output schema), the description adequately covers the core behavior and auto-inference. It could mention what the output looks like, but the schema handles most parameter details.

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%, and the description does not add new information beyond the schema. The auto-inference rule is already present in 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?

The description clearly states it renders a waterfall chart, explains the concept ('What drove the change?'), and mentions auto-inference of bar types. The name and title are specific and distinct from sibling chart tools.

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?

The description mentions auto-inference of bar types but does not provide explicit guidance on when to use this tool vs. other chart renderers or when not to use it. Usage is implied but not compared to alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render_wordcloud_chartWord CloudA
Read-onlyIdempotent

Render a word cloud - 'What are the dominant themes?' Words sized by frequency or importance. Great for survey responses, keyword analysis, topic frequency.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYesArray of words with values
themeNoTheme preset: boardroom, corporate, sales-floor, golden-treasury, clinical, startup, ops-control, tokyo-midnight, zen-garden, consultant, black-tron, black-elegance, black-matrix, forest-amber, forest-earth, sky-light, sky-ocean, sky-twilight, gray-hf, gray-copilot, office-red
titleYesChart title
effectsNoOverride effects: none, subtle, shimmer, neon, energetic
optionsNo
paletteNoOverride palette only (mix-and-match)
typographyNoOverride typography: professional, luxury, cyberpunk, editorial, mono, bold, system, techno

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, so the description's additional context about word sizing adds some value but does not contradict annotations. Behavioral traits beyond safety are not detailed.

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?

The description is two sentences and fairly concise, but the first sentence is a quoted phrase that adds little structure. It could be more efficiently worded without losing information.

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?

Given high schema coverage and no output schema, the description covers the core functionality and use cases. However, it does not mention output format or behavior for edge cases, leaving some gaps for a rendering tool.

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 86%, so baseline is 3. The description references the 'value' parameter (frequency/importance) but does not explain other parameters like theme, effects, or palette. It adds marginal meaning beyond the schema.

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?

The description clearly states it renders a word cloud and explains the purpose: identifying dominant themes with words sized by frequency or importance. It distinguishes itself from 36 sibling render_* tools by specifying the chart type and use cases.

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

Usage Guidelines4/5

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

It provides explicit use case examples (survey responses, keyword analysis, topic frequency) but does not mention when not to use it or alternatives among sibling tools. Some guidance is given, but exclusions are absent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

save_fileSave FileA
Idempotent

Save a chart export (PNG or CSV) to the user's Downloads folder. App-only - invoked by the chart View's Download buttons, not by the AI.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYesFile contents: base64-encoded binary or plain text
encodingYesHow data is encoded
filenameYesFilename with extension (.png or .csv only)

TDQS

A4.5/5.0
Behavior4/5

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

Annotations indicate idempotent and non-destructive. Description adds that it writes to the Downloads folder and accepts only .png or .csv filenames, and that it's app-only. This provides good behavioral context beyond annotations, though it doesn't explicitly mention overwrite behavior.

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?

Two concise sentences with no filler. All information is necessary and front-loaded.

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?

Tool has three required parameters, no output schema. Description covers purpose, target location, file type restrictions, and who invokes it. This is fully sufficient for correct usage.

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 each parameter. The description adds context about file extension restrictions and app-only invocation but does not significantly enhance parameter understanding beyond schema.

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?

Clearly states it saves a chart export (PNG or CSV) to user's Downloads folder. Distinguishes itself from sibling render tools by specifying it is a file-saving operation, not a rendering operation.

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?

Explicitly states 'App-only - invoked by the chart View's Download buttons, not by the AI.' This tells the AI not to call this tool directly and that it is triggered by user interaction in the app, providing clear when-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

A3.9/5.0
Disambiguation5/5

Each tool has a distinct chart type or purpose (e.g., bar, line, pie, map) with clear descriptions. Even similar tools like render_chart_catalog and render_from_json serve different roles: catalog browsing vs. automatic detection.

Naming Consistency5/5

All chart rendering tools follow the 'render_<chart_type>' pattern. The few non-rendering tools (poll_http, save_file) are clearly auxiliary and do not break the overall consistency.

Tool Count3/5

With 34 tools, the server is large but still scoped to visualization. Many chart types are included, but the count exceeds the typical well-scoped range (3-15), making it feel slightly heavy.

Completeness4/5

The server covers a wide range of chart types (bar, line, scatter, maps, etc.) plus dashboards, themes, and live data. Minor omissions like network graphs or advanced statistical charts leave some gaps.

Maintenance

ActivityMaintained
ResponsivenessSyncing

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/KyuRish/mcp-dashboards'

If you have feedback or need assistance with the MCP directory API, please join our Discord server