Skip to main content
Glama
Teradata

Teradata MCP Server

Official
by Teradata

Plot Line Chart

plot_line_chart
Read-onlyIdempotent

Plot time-series or trend data directly from a Teradata table by specifying the table, x-axis column, and numeric y-axis columns. Ideal for sequential data analysis without pre-fetching.

Instructions

Generate a line chart that reads directly from a Teradata table — do NOT use base_readQuery to pre-fetch data first. Specify the table in table_name, the x-axis column in labels (typically a date or time field), and one or more y-axis numeric columns in columns. Use for time-series, trend lines, or sequential data. Do NOT use for proportional category breakdowns — use plot_pie_chart or plot_polar_chart. Do NOT use for multi-dimensional spider comparisons — use plot_radar_chart.

PARAMETERS: table_name: Required Argument. Specifies the name of the table to generate the line chart. Types: str

labels:
    Required Argument.
    Specifies the x-axis column (typically date or time).
    Types: str

columns:
    Required Argument.
    Specifies the y-axis numeric column(s) for the line chart.
    Types: List[str]

RETURNS: dict

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
labelsYes Required Argument. Specifies the x-axis column (typically date or time). Types: str
columnsYes Required Argument. Specifies the y-axis numeric column(s) for the line chart. Types: List[str]
table_nameYes Required Argument. Specifies the name of the table to generate the line chart. Types: str

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changedv1.0.1
    • changedInput schema / properties / columns / description
      Previous value: -"\nRequired Argument.\nSpecifies the column to be used for generating the line plot.\nTypes: List[str]"New value: +"\nRequired Argument.\nSpecifies the y-axis numeric column(s) for the line chart.\nTypes: List[str]"
    • changedInput schema / properties / labels / description
      Previous value: -"\nRequired Argument.\nSpecifies the labels to be used for the line plot.\nTypes: str"New value: +"\nRequired Argument.\nSpecifies the x-axis column (typically date or time).\nTypes: str"
    • changedInput schema / properties / table_name / description
      Previous value: -"\nRequired Argument.\nSpecifies the name of the table to generate the donut plot.\nTypes: str"New value: +"\nRequired Argument.\nSpecifies the name of the table to generate the line chart.\nTypes: str"
  2. Changed7 schema fields changedv0.2.1
    • addedInput schema / additionalProperties
      Added value: +false
    • addedInput schema / properties / columns / description
      Added value: +"\nRequired Argument.\nSpecifies the column to be used for generating the line plot.\nTypes: List[str]"
    • removedInput schema / properties / columns / title
      Removed value: -"Columns"
    • addedInput schema / properties / labels / description
      Added value: +"\nRequired Argument.\nSpecifies the labels to be used for the line plot.\nTypes: str"
    • removedInput schema / properties / labels / title
      Removed value: -"Labels"
    • addedInput schema / properties / table_name / description
      Added value: +"\nRequired Argument.\nSpecifies the name of the table to generate the donut plot.\nTypes: str"
    • removedInput schema / properties / table_name / title
      Removed value: -"Table Name"
  3. Addedv1.0.0

TDQS

A4.7/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, so the description doesn't need to repeat those. It adds useful behavioral context by stating 'reads directly from a Teradata table — do NOT use base_readQuery to pre-fetch data first', which clarifies the data-access pattern and implies an efficient read operation. It also mentions the return type (dict) which is not in the schema. This enriches the behavioral picture without contradicting 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 a single paragraph that is front-loaded with the core purpose, immediately followed by essential usage directives. Every sentence serves a distinct function: statement of action, explicit anti-pattern, parameter specification, and grouped alternatives. There is no repetition or filler. The length is appropriate for the amount of guidance provided.

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 that the tool is a simple charting operation with no output schema and only three straightforward parameters, the description covers everything an agent needs to select and invoke it correctly: purpose, parameter roles, usage conditions, and alternatives. The annotations cover safety, and the return type is stated. No crucial information is missing for correct execution.

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% (each parameter has its own description), so the baseline is 3. The description adds semantic value beyond the schema: it specifies that `labels` is 'typically a date or time field' and that `columns` accepts 'one or more y-axis numeric columns'. This clarifies the expected column types and cardinality, which helps the agent select appropriate values. The description also ties the parameters to the chart's purpose, enriching the structured schema data.

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 states a specific verb and resource: 'Generate a line chart that reads directly from a Teradata table'. It clearly distinguishes the tool from siblings by explicitly stating what it is not for (proportional breakdowns, spider comparisons) and naming the alternatives. This leaves no ambiguity about the tool's primary function.

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 when-to-use guidance ('Use for time-series, trend lines, or sequential data') and explicit when-not-to-use guidance with named alternatives ('Do NOT use for proportional category breakdowns — use plot_pie_chart or plot_polar_chart... Do NOT use for multi-dimensional spider comparisons — use plot_radar_chart'). It also instructs against using a sibling tool (base_readQuery) for pre-fetching, which is a clear usage directive.

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