Skip to main content
Glama

Server Quality Checklist

58%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v0.1.0

  • Disambiguation5/5

    Each tool has a clearly distinct purpose corresponding to a specific plot type (area, bar, box, contour, heatmap, histogram, line, pie, scatter). The names directly indicate the visualization type, making it impossible to confuse one tool for another. There is no functional overlap between tools as each creates a fundamentally different chart format.

    Naming Consistency5/5

    All tools follow the exact same 'plot_' prefix + chart_type naming pattern (plot_area, plot_bar, plot_box, etc.). This consistent verb_noun structure (where 'plot' is the verb and the chart type is the noun) creates perfect predictability. Every tool name uses the same snake_case convention without any deviations.

    Tool Count5/5

    Nine tools is ideal for a plotting server, covering the most common visualization types without being overwhelming. Each tool represents a distinct, essential chart type that earns its place in the set. The count aligns perfectly with the domain scope of providing core plotting functionality.

    Completeness5/5

    The tool set provides comprehensive coverage of standard plot types including area, bar, box, contour, heatmap, histogram, line, pie, and scatter plots. This covers the fundamental visualization needs for data analysis and presentation. There are no obvious gaps in the plotting domain - agents can create any common chart type needed for data visualization tasks.

  • Average 3/5 across 9 of 9 tools scored.

    See the Tool Scores section below for per-tool breakdowns.

    • No community issues in the last 6 months
    • 0 commits in the last 12 weeks
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI status not available
  • Add a LICENSE file by following GitHub's guide. Once GitHub recognizes the license, the system will automatically detect it within a few hours.

    If the license does not appear after some time, you can manually trigger a new scan using the MCP server admin interface.

    MCP servers without a LICENSE cannot be installed.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • Add a glama.json file to provide metadata about your server.

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior2/5

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

    No annotations are provided, so the description carries full burden. It states the tool renders a plot, implying a visual output, but doesn't disclose behavioral traits like whether it returns an image file, displays interactively, requires specific permissions, or has rate limits. The example shows parameter usage but lacks context on the tool's operation or output format.

    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 appropriately sized and front-loaded: the first sentence states the purpose clearly, followed by a note on parameters and an example. There's minimal waste, though the example could be more integrated. It's efficient but not perfectly structured for maximum clarity.

    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 has an output schema (which should cover return values), the description doesn't need to explain outputs. However, with no annotations and low schema coverage, it lacks context on usage scenarios, behavioral details, and full parameter explanations. It's minimally adequate but has clear gaps for a plotting tool with multiple 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 description coverage is 0%, so the description must compensate. It provides an example with parameters (x, y, title, fill_color), adding meaning beyond the bare schema. However, it doesn't explain all 9 parameters (e.g., width, height, opacity, x_label, y_label), leaving gaps. The baseline is lower due to low coverage, and the description partially helps but isn't comprehensive.

    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's purpose: 'Render filled area under a curve.' It specifies the verb ('render') and resource ('filled area under a curve'), making it distinct from siblings like plot_line or plot_scatter. However, it doesn't explicitly differentiate from plot_bar or plot_histogram which might also involve filled areas, so it's not a perfect 5.

    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 its siblings. It mentions 'Simple flat parameters - no nested objects!' which hints at parameter structure but doesn't help an agent choose between plot_area, plot_line, or other plotting tools. There are no explicit when/when-not statements or alternatives named.

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

  • Behavior2/5

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

    With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool renders a chart, implying a read-only output generation, but doesn't specify if it's interactive, static, or what format it returns (e.g., image, HTML). It also lacks details on performance, error handling, or dependencies. The example helps but doesn't cover behavioral traits comprehensively.

    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 concise and front-loaded, starting with the core purpose. The example is well-integrated and illustrative without being verbose. However, the second sentence ('Simple flat parameters - no nested objects!') could be more polished, and there's room to add brief usage context without sacrificing brevity.

    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 moderate complexity (10 parameters, no annotations, but with an output schema), the description is partially complete. It explains the basic functionality and provides an example, but lacks behavioral details and full parameter guidance. The presence of an output schema means return values don't need explanation, but other aspects like error cases or performance are missing.

    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?

    The description includes an example that illustrates key parameters (categories, values, title, orientation), adding meaning beyond the schema. However, with 0% schema description coverage and 10 parameters in the schema, the example only covers 4 parameters explicitly, leaving others like width, height, bar_width, color, x_label, and y_label unexplained. This provides some value but doesn't fully compensate for the low coverage.

    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's purpose: 'Render categorical bar chart.' It specifies the verb ('Render') and resource ('categorical bar chart'), making it easy to understand what the tool does. However, it doesn't explicitly differentiate from sibling tools like plot_histogram or plot_box, which might also handle categorical data visualization.

    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 minimal usage guidance. It mentions 'Simple flat parameters - no nested objects!' which hints at when to use this tool (for straightforward bar charts), but it doesn't offer explicit alternatives or contrast with sibling tools like plot_histogram for distribution visualization or plot_pie for proportional data. No when-not-to-use scenarios are provided.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full burden. It states 'Render box plot' implying a visualization output, but lacks details on behavior: no mention of output format (e.g., image, URL), error handling, performance, or side effects. The example shows input structure but not behavioral traits.

    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 front-loaded with the core purpose, followed by a note on parameters and a clear example. It's efficient with minimal waste, though the parameter note could be integrated more smoothly. Every sentence adds value, but slight structural improvement is possible.

    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 no annotations, 0% schema coverage, and an output schema (implied by context signals), the description is moderately complete. It covers the basic purpose and input example but lacks behavioral details and full parameter explanations. The output schema likely handles return values, but the description doesn't address mutation risks or usage context adequately.

    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 0%, so the description must compensate. It provides an example illustrating 'groups' and 'title' parameters, adding meaning beyond the bare schema. However, it doesn't explain other parameters like 'width', 'height', or 'color', leaving gaps. With 0% coverage, this partial compensation earns a baseline score.

    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's purpose: 'Render box plot from raw values.' It specifies the verb ('Render') and resource ('box plot'), distinguishing it from siblings like plot_line or plot_scatter. However, it doesn't explicitly differentiate from other plot types beyond the name, missing sibling-specific nuances.

    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 like plot_histogram or plot_scatter. It mentions 'Simple flat parameters - no nested objects!' which hints at a structural preference but doesn't define use cases, prerequisites, or exclusions relative to siblings.

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

  • Behavior2/5

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

    With no annotations provided, the description carries full burden. It mentions 'render' which implies visual output, but doesn't disclose what format the output takes (image, HTML, etc.), whether it's interactive, or any performance characteristics. The 'simple flat parameters' note is helpful but insufficient for behavioral understanding.

    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 appropriately sized and front-loaded with the core purpose. The example is helpful but could be more concise. The 'simple flat parameters' note is valuable context. Overall efficient with minimal waste.

    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 1 parameter (a nested object with 9 sub-properties), 0% schema coverage, no annotations, but an output schema exists, the description is moderately complete. It covers the basic purpose and shows a partial example, but doesn't explain all parameters, behavioral traits, or usage context relative to siblings. The output schema reduces burden but doesn't compensate for missing parameter semantics.

    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 0%, so the description must compensate. The example shows values, bins, and title parameters, providing some semantic context. However, it doesn't explain the other 7 parameters (width, height, density, color, x_label, y_label) or their purposes. The description adds value but doesn't fully compensate for the schema coverage gap.

    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 1D histogram, which is a specific verb (render) and resource (histogram). It distinguishes from siblings by specifying '1D' and 'histogram', but doesn't explicitly contrast with other plot types like plot_bar or plot_box. The 'simple flat parameters' note adds useful context about the input structure.

    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 the 8 sibling plot tools. There's no mention of when a histogram is appropriate versus bar charts, box plots, scatter plots, etc. The example shows usage but doesn't explain context or alternatives.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full burden. It states the tool renders lines but doesn't disclose behavioral traits like what format the output takes (image, interactive plot, etc.), whether it's idempotent, performance characteristics, or error conditions. The example shows parameter structure but doesn't explain what happens when invoked. For a rendering tool with no annotations, this is insufficient.

    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 appropriately sized with two sentences and an example. The first sentence states the purpose clearly, and the second provides a helpful constraint about flat parameters. The example is well-structured and illustrates key parameters. However, the example could be more concise by omitting redundant details like 'My Plot' if not necessary.

    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 has an output schema (which should describe return values), the description doesn't need to explain outputs. However, with 1 parameter (a complex object with 9 sub-properties), 0% schema description coverage, and no annotations, the description should do more to explain parameter semantics and behavioral context. The example helps but leaves many aspects uncovered 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 0%, so the description must compensate. It provides an example showing the 'series', 'title', 'width', and 'height' parameters in use, which adds meaning beyond the bare schema. However, it doesn't explain the other parameters (line_style, stroke_width, show_markers, x_label, y_label) or their effects on the plot. The example is helpful but incomplete given the 9 total parameters 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's purpose: 'Render one or more continuous 2D lines.' It specifies the verb ('render') and resource ('2D lines'), and the 'continuous' qualifier helps distinguish it from discrete plot types like bar or scatter plots. However, it doesn't explicitly differentiate from similar siblings like plot_area (which might also render continuous lines with area fills).

    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 the eight sibling plot tools listed. It mentions 'simple flat parameters - no nested objects!' which is a technical constraint but not usage guidance. There's no mention of appropriate data types (continuous vs. categorical), visualization goals, or alternatives like plot_scatter for similar data.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions 'Render circular pie chart' but doesn't explain what rendering entails (e.g., generates an image file, displays in UI, returns data), any performance considerations, or error handling. The example shows input structure but lacks behavioral context, leaving significant gaps.

    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 front-loaded with the core purpose and includes a concise example. The sentences are efficient, with no wasted words. However, the example could be more integrated into the text rather than standalone, and some redundancy exists (e.g., 'Simple flat parameters' is implied by the schema).

    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 moderate complexity (rendering a chart with multiple parameters), no annotations, and an output schema (which reduces the need to describe return values), the description is partially complete. It covers basic input structure but lacks behavioral details, usage context, and full parameter explanations, making it adequate but with clear 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 description coverage is 0%, so the description must compensate. It provides an example with labels, values, and title, which adds meaning for those parameters. However, it doesn't cover all parameters (e.g., width, height, inner_radius_ratio, start_angle) or explain their semantics (e.g., units, constraints). This partial coverage meets the baseline but doesn't fully address the schema gap.

    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's purpose: 'Render circular pie chart.' It specifies the resource (pie chart) and verb (render), making it easy to understand what the tool does. However, it doesn't explicitly differentiate from sibling tools like plot_bar or plot_scatter beyond the chart type, which prevents a perfect score.

    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. With sibling tools like plot_bar and plot_line available, there's no mention of scenarios where a pie chart is appropriate (e.g., for showing proportions) or when other chart types might be better. This lack of context leaves the agent without usage direction.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full burden. It states the tool 'renders' points, implying a visual output, but doesn't disclose behavioral traits like what format the output takes (image file, HTML, etc.), whether it's interactive, or any performance considerations. The example shows parameters but doesn't explain the tool's behavior beyond basic rendering.

    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 appropriately sized and front-loaded with the core purpose. The example is useful but could be more integrated. There's minimal waste, though the 'Simple flat parameters' note could be more concise. Overall, it's efficient but not perfectly 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 (rendering visualizations) and the presence of an output schema, the description is moderately complete. It covers the basic purpose and provides an example, but lacks details on output format, behavioral traits, and usage guidelines. With no annotations and incomplete parameter semantics, it's adequate but has clear gaps for effective tool selection.

    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 0%, so the description must compensate. It provides an example with x, y, title, and color parameters, adding some semantic context beyond the schema's property names. However, it doesn't explain all 10 parameters (e.g., width, height, point_radius, opacity, x_label, y_label), leaving gaps. The baseline would be lower due to low coverage, but the example provides partial compensation.

    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's purpose: 'Render discrete 2D points.' It specifies the verb ('render') and resource ('discrete 2D points'), making it clear this creates scatter plots. However, it doesn't explicitly differentiate from sibling tools like plot_line or plot_contour beyond the 'scatter' name, which is why it's not a 5.

    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. It mentions 'Simple flat parameters - no nested objects!' which is a technical constraint but not usage context. With multiple sibling plotting tools available, there's no indication of when scatter plots are appropriate compared to line plots, bar charts, etc.

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

  • Behavior2/5

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

    With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool renders a heatmap but doesn't describe what happens (e.g., outputs an image file, displays in UI, returns a URL), performance characteristics, or any side effects. The example shows input structure but lacks context on the rendering process or output format.

    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 appropriately sized and front-loaded: the first sentence states the purpose clearly, followed by a brief note on parameter structure and a comprehensive example. Every sentence earns its place, though the 'Simple flat parameters' note could be more integrated with the purpose statement.

    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 moderate complexity (visualization with 8 parameters), no annotations, and an output schema present (which handles return values), the description is reasonably complete. It covers the core purpose, parameter structure via example, and distinguishes the tool type. However, it lacks behavioral context and usage guidelines, which are gaps for a tool with no annotations.

    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 0%, so the description must compensate. It provides a clear example with all required parameters (matrix, x_labels, y_labels, title) and hints at optional ones (width, height, color_scale, show_values through defaults in the example). This adds significant meaning beyond the bare schema, though it doesn't explicitly document all 8 parameters or their semantics in text.

    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's purpose: 'Render 2D matrix as color grid.' It specifies the verb ('render') and resource ('2D matrix'), and distinguishes it from siblings by mentioning it's for heatmaps (color grids) rather than other plot types like bars or lines. However, it doesn't explicitly differentiate from plot_contour, which might also visualize matrices.

    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 like plot_contour or other visualization tools. It mentions 'Simple flat parameters - no nested objects!' which hints at parameter structure but doesn't help with tool selection. No explicit when/when-not instructions or sibling comparisons are included.

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

  • Behavior2/5

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

    With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool renders contour lines but lacks details on output format (e.g., image file, URL), performance implications, error handling, or any side effects. The mention of 'flat parameters' adds minimal context but doesn't cover critical behavioral traits.

    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 front-loaded with the core purpose and a key constraint ('no nested objects'), followed by a helpful example. It's efficient with two sentences and an example, though the example could be more concise by omitting redundant details or integrating parameter explanations.

    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 moderate complexity (rendering plots with multiple parameters), no annotations, and an output schema present (which should cover return values), the description is partially complete. It explains the main parameters via example but misses behavioral context and usage guidelines, making it adequate but with clear gaps for effective agent use.

    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 0%, so the description must compensate. The example provides concrete semantics for x, y, z, and title parameters, clarifying they are arrays and a 2D array for z with a string title. However, it doesn't explain other parameters like width, height, levels, stroke_width, x_label, or y_label, leaving gaps in understanding.

    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 specific action ('Render 2D contour lines') and resource ('from grid data'), distinguishing it from sibling tools like plot_heatmap or plot_scatter by focusing on contour visualization. The example reinforces the purpose with concrete data structures.

    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 explicit guidance on when to use this tool versus alternatives like plot_heatmap or plot_line is provided. The description mentions 'Simple flat parameters - no nested objects!' which hints at a structural constraint but doesn't clarify functional use cases or comparisons to siblings.

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

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

plot-mcp MCP server

Copy to your README.md:

Score Badge

plot-mcp MCP server

Copy to your README.md:

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/Nexo-Agent/plot-mcp'

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