Skip to main content
Glama
harrybin

Visuals MCP Server

by harrybin

MCP Visuals Server

An MCP (Model Context Protocol) server that provides interactive visualizations for AI agents. Display data in rich, interactive formats including tables with TanStack Table, charts with Recharts, image previews with metadata, master-detail views for browsing collections, tree views for hierarchical data, and customizable lists with drag-and-drop reordering.

Quick Install

Install with VS Code °°° Install with VS Code Insiders

Features

Table Visualization

  • Interactive Table Display: Full-featured data table with TanStack Table v8

  • Sorting: Click column headers to sort ascending/descending

  • Filtering: Per-column text filters with apply button

  • Pagination: Customizable page sizes (5, 10, 20, 50, 100 rows)

  • Column Visibility: Toggle which columns are displayed

  • Row Selection: Select individual rows or all rows

  • Export: Copy as CSV/TSV or export to PDF

  • Agent Integration: Table state (selections, filters, sorting) automatically sent back to the LLM via updateModelContext

  • Theme Integration: Respects VS Code theme colors and fonts

  • Responsive: Works on different screen sizes

  • Generic Data Support: Accepts any column structure and data types

Chart Visualization

  • Interactive Charts: Render line, bar, area, pie, scatter, and composed charts

  • Multiple Charts Per View: Show several charts together in vertical, horizontal, or grid layouts

  • Flexible Series Configuration: Configure named series, custom colors, stacked bars/areas, and mixed composed charts

  • Rich Chart Features: Optional legends, tooltips, grid lines, and dual Y-axes

  • Export Options: Copy chart payloads as JSON or CSV directly from the UI

  • Agent Awareness: Active chart selection and hover state can be reported back to the host app

  • Theme Integration: Respects VS Code theme colors and fonts

  • Responsive: Adapts to narrow panels and wider layouts

Image Preview

  • Rich Image Cards: Display images with title, caption, and metadata

  • Metadata Display: Show filename, dimensions, and file size

  • Flexible Sources: Support URLs and data URIs

  • Local File Support: Automatically converts local file paths to data URIs

  • Theme Integration: Respects VS Code theme colors and fonts

Master-Detail View

  • Flexible Layout: Display a list of items with detailed content panel

  • Multiple Content Types: Detail panel supports tables, images, or custom text/HTML

  • Reusable Components: Leverages existing table and image visualizations

  • Configurable Layout: Choose horizontal (side-by-side) or vertical (stacked) orientation

  • State Management: Selection state automatically sent back to LLM

  • Rich Master List: Display items with icons, labels, and descriptions

  • Theme Integration: Consistent theming across all components

Tree View

  • Hierarchical Data Display: Interactive tree structure for nested data

  • Expand/Collapse: Click to expand or collapse nodes

  • Node Selection: Select individual nodes to highlight them

  • Metadata Support: Display optional metadata for each node

  • Icons: Add custom icons/emojis to nodes

  • Bulk Operations: Expand all or collapse all nodes at once

  • Export Options: Copy tree to clipboard, export as HTML, or save as image (PNG)

  • Agent Integration: Tree state (expanded nodes, selection) sent back to the LLM

  • Theme Integration: Respects VS Code theme colors and fonts

  • Use Cases: File systems, org charts, nested categories, JSON/XML structures

List Visualization

  • Interactive Lists: Display any type of list with rich formatting

  • Drag-and-Drop Reordering: Easily reorder items by dragging

  • Checkboxes: Optional checkboxes for task lists and selections

  • Image Thumbnails: Show images alongside list items

  • Compact Mode: Toggle between comfortable and compact layouts

  • Export Options: Copy as plain text, CSV, or JSON

  • Individual Item Copy: Quick copy button for each item

  • Subtext Support: Secondary text/description for each item

  • Metadata: Attach custom metadata to items

  • Theme Integration: Respects VS Code theme colors and fonts

Related MCP server: Interactive Feedback MCP

Screenshots

Table Example

Interactive table with sorting, filtering, pagination, and row selection

Chart Example

Interactive chart dashboard with multiple chart types and grid layout

Master-Detail Example

Master-detail view for browsing collections with tables, images, or custom content

List Example

Interactive list with drag-and-drop reordering, checkboxes, and image thumbnails

Tree Example

Interactive tree view with expand/collapse, node selection, and export options

Installation

VSCode Extension (Easiest)

Install directly from the VS Code Marketplace:

  1. Open VS Code

  2. Go to Extensions (Ctrl+Shift+X / Cmd+Shift+X)

  3. Search for "Visuals MCP"

  4. Click Install

The extension will automatically register the MCP server with VS Code and GitHub Copilot Chat.

In VSCode github Copilot Chat

  • click on the tools icon (Configure tools...)

  • click on "Add MCP Server"

  • click on "Install from npm"

  • enter @harrybin/visuals-mcp

  • press enter / click "Install"

Using command line:

npm install -g @harrybin/visuals-mcp
visuals-mcp

GitHub Packages

  1. Authenticate npm with GitHub Packages:

npm config set @harrybin:registry https://npm.pkg.github.com
npm config set //npm.pkg.github.com/:_authToken=YOUR_GITHUB_TOKEN
  1. Install and run:

npm install -g @harrybin/visuals-mcp
visuals-mcp

Local Development

# Install dependencies
npm install

# Build all UI bundles and the server
npm run build

# Optional: rebuild only the chart UI bundle
npm run build:charts

# Run the server
npm run serve

Chart Tool

Use display_chart to render one or more interactive charts in the MCP client.

Supported chart types:

  • line

  • bar

  • area

  • pie

  • scatter

  • composed

Repository Metrics Dashboard Example

Generate fresh metrics first:

npm run metrics:repo:write

This writes a snapshot to doc/repo-metrics.json.

Then render a dashboard that uses all chart types (line, bar, area, pie, scatter, composed):

For release-quality docs, always regenerate doc/repo-metrics.json right before updating README examples.

1. Configure MCP Server

For VS Code: This workspace includes MCP configuration in .vscode/settings.json.

To add globally, update your VS Code settings:

{
  "github.copilot.chat.mcpServers": {
    "visuals-mcp": {
			"type": "stdio",
			"command": "node",
			"args": [
				"dist/server.js"
			]
		}
  }
}

For Claude Desktop: See claude_desktop_config.json for example configuration.

License

MIT

Contributing

Contributions welcome! Please open an issue or PR.

Resources

Available Tools

7 tools
display_chartDisplay ChartA

Display interactive charts with support for multiple chart types: line, bar, area, pie, scatter, and composed charts. Use this to visualize data trends, comparisons, distributions, and relationships. Supports multiple charts in a single view with customizable layouts (vertical, horizontal, grid). Features include legends, tooltips, grid lines, dual Y-axes, and data export (JSON, CSV).

ParametersJSON Schema
NameRequiredDescriptionDefault
chartsYesArray of chart configurations to display
titleNoOverall title for the chart view
layoutNoLayout for multiple chartsvertical

TDQS

A4/5.0
Behavior3/5

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

No annotations provided; the description explains features and customization but does not explicitly state it is read-only or disclose side effects, leaving some behavioral uncertainty.

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 purpose and types, no wasted words, efficiently structured.

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 rich schema, the description covers key features and usage, though it could mention limitations or prohibitions for a higher score.

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 covers 100% of parameters with descriptions; the description adds overall context but no new parameter-specific 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 tool displays interactive charts, lists supported types, and distinguishes from sibling tools like display_table or display_image.

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 includes explicit usage intent ('Use this to visualize data trends...') but does not provide when-not-to-use or alternatives, though the context suggests it's for chart visualizations.

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

display_imageDisplay ImageA

Display/show any image to the user with an interactive preview card. Use this tool to show screenshots, diagrams, charts, photographs, or any visual content. Provides optional metadata including title, caption, dimensions, and file information. Always use this tool whenever you need to present visual content. This also applies to listings and any other imageoperations like get, download etc..these formats are explicitly handled: PNG, JPG, JPEG, GIF, SVG, WebP, BMP. The UI itself can display any image if the src is a valid URL or data URI, but local file paths are only auto-converted for those extensions

ParametersJSON Schema
NameRequiredDescriptionDefault
srcYesImage URL or data URI. Required. This is the source of the image to display.
titleNoOptional title displayed above the image. Use to provide context or describe what the image shows.
altNoAlt text for accessibility. Describe the image content for screen readers and when image fails to load.
captionNoOptional caption displayed below the image. Use to explain key details, findings, or analysis related to the image.
widthNoOptional width in pixels to constrain the image. Use to control display size.
heightNoOptional height in pixels to constrain the image. Use to control display size.
filenameNoOptional original filename to display. Useful for showing file information alongside the preview.
sizeBytesNoOptional file size in bytes. Displayed as formatted file size (KB, MB). Useful for showing storage information.

TDQS

A4.2/5.0
Behavior4/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 discloses that the UI supports any valid URL or data URI but local file paths are auto-converted only for the listed extensions. It also mentions optional metadata parameters. Missing details like security considerations or size limits.

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

Conciseness3/5

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

The description is a single paragraph that front-loads the main purpose, but it becomes verbose with a run-on sentence about listings and formats. While all sentences add value, the structure could be more concise with better punctuation and separation.

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, high schema description coverage, and no output schema, the description covers the tool's purpose, supported formats, parameter usage, and a key behavioral note on local file paths. It lacks error handling or constraints, but is fairly complete for a display 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 description coverage is 100%, so baseline is 3. The description adds value by explaining the overall purpose of parameters (e.g., metadata like title, caption, dimensions, file info) and clarifying src behavior (auto-conversion for local paths). This goes beyond the schema 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 displays images with an interactive preview card, lists supported formats (PNG, JPG, JPEG, GIF, SVG, WebP, BMP), and establishes it as the primary tool for any visual content, implicitly differentiating from siblings that handle non-image data.

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 'Always use this tool whenever you need to present visual content' and lists the supported formats. It also mentions applying to listings and image operations like get/download. However, it does not mention when to use alternatives (e.g., display_chart for charts) or 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.

display_listDisplay ListA

Display an interactive, customizable list with optional checkboxes, drag-and-drop reordering, image thumbnails, and copy/export functionality. Perfect for displaying any type of list: tasks, items, options, files, or any sequential data. Features include compact/comfortable views, individual item copy, and bulk export (CSV, JSON, text).

ParametersJSON Schema
NameRequiredDescriptionDefault
itemsYesArray of list items to display
titleNoOptional title for the list
allowReorderNoAllow drag-and-drop reordering
allowCheckboxesNoShow checkboxes for items
compactNoUse compact layout mode
showImagesNoDisplay item images if available

TDQS

A3.9/5.0
Behavior3/5

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

With no annotations, the description carries full burden. It discloses features like interactivity and customization but doesn't explicitly state read-only behavior or absence of side effects. While likely non-destructive, more explicit transparency would help.

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 relatively concise with two sentences. It front-loads key features and purpose. Minor redundancy (e.g., 'any type of list' could be implied) but overall 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 6 parameters, no output schema, and a display tool, the description provides a solid overview of features and use cases. It covers core capabilities, though lacks explicit mention of return value (likely void). Still 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 description coverage is 100%, so schema already describes each parameter. The description adds general feature context but doesn't enhance parameter meaning. 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 displays an interactive, customizable list with specific features like checkboxes, drag-and-drop, images, and export. It distinguishes from sibling tools by listing unique capabilities not present in display_chart or display_table.

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 says 'Perfect for displaying any type of list' and lists features, implicitly differentiating from siblings. However, it lacks explicit when-not or alternative tool guidance, though the context is clear.

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

display_master_detailDisplay Master DetailA

Display a master-detail view with a list of items on the left/top and details on the right/bottom. The detail panel can show tables, images, lists, or custom text/HTML content. Perfect for browsing collections, comparing items, or navigating hierarchical data.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleNoOptional title for the master-detail view
masterItemsYesArray of items to display in the master list
detailContentsYesMap of item IDs to their detail content. Each key should match a masterItems ID.
defaultSelectedIdNoID of item to select by default
masterWidthNoWidth of master panel in pixels (default: 300)
orientationNoLayout orientation: horizontal (side-by-side) or vertical (stacked)horizontal

TDQS

A3.9/5.0
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 does not disclose behavioral traits like side effects, permissions, or limitations (e.g., rendering constraints). As a display tool, it likely has no destructive behavior, but the description fails to state this.

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 plus a tagline, with no wasted words. It front-loads the core function and efficiently covers layout, content types, and use cases.

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 intended use and parameter-purpose mapping adequately, but given the complexity (6 params, nested objects, no output schema), it lacks details on default selection behavior, return value, or interaction with other display tools. Sufficient for a basic understanding but not fully comprehensive.

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%, providing strong baselines. The description adds context about detail content types (table, image, list, text/HTML) matching the oneOf schema, and mentions layout orientation, which adds semantic value beyond raw 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 displays a master-detail view with a list and detail panel, listing specific content types (tables, images, lists, text/HTML) and use cases (browsing, comparing, navigating). It distinguishes itself from sibling display tools by being composite.

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 suggests use cases ('perfect for browsing collections...'), giving clear context. It does not provide when-not-to-use or alternative tool names, but the sibling list helps differentiate.

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

display_tableDisplay TableB

Display an interactive table with sorting, filtering, pagination, column visibility, and row selection. Accepts column definitions and row data. Returns a visual table component that users can interact with.

ParametersJSON Schema
NameRequiredDescriptionDefault
columnsYesArray of column definitions
rowsYesArray of row data objects
titleNoOptional title for the table
allowRowSelectionNo
allowColumnVisibilityNo
pageSizeNo

TDQS

B3.2/5.0
Behavior2/5

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

No annotations provided, so description carries full burden. Describes features but does not disclose side effects, permissions, or whether it is read-only. Lacks explicit behavioral traits beyond the listed interactivity.

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 covering purpose and inputs/outputs. Efficient with no wasted words, though could structure feature list more clearly.

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?

Adequate for a display tool but lacks detail on return behavior (e.g., how interactions are handled, any callbacks). With no output schema, more explanation of component behavior would help.

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 50% of parameters. Description adds little beyond listing features; does not explain parameter nuances or constraints not already in 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 displays an interactive table with specific features (sorting, filtering, pagination, column visibility, row selection). Distinguishes from sibling tools like display_chart or display_list by focusing on tabular data.

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 siblings like query_table_data or display_master_detail. Does not mention prerequisites or conditions for use.

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

display_treeDisplay TreeA

Display an interactive tree view for hierarchical data structures. Use this tool to visualize file systems, organizational charts, nested categories, JSON/XML structures, or any hierarchical relationships. Supports node expansion/collapse, metadata display, and export functionality.

ParametersJSON Schema
NameRequiredDescriptionDefault
nodesYesArray of root tree nodes
titleNoOptional title for the tree view
expandAllNoExpand all nodes initially
showMetadataNoShow metadata in tree nodes

TDQS

A4.1/5.0
Behavior4/5

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

No annotations provided, so description must disclose behavior. It mentions node expansion/collapse, metadata display, and export functionality. However, it does not state that the tool is read-only or any 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?

Three sentences, front-loaded with purpose, no wasted words. Efficient and 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?

Lacks description of return value or output format. No mention of error handling or performance considerations. Given no output schema, this is a 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 coverage is 100%, so the description adds minimal value beyond the schema. It mentions 'metadata display' which aligns with showMetadata, but no extra context.

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 displays an interactive tree view for hierarchical data. Lists specific use cases like file systems and org charts, distinguishing it from sibling tools like display_chart or display_table.

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 mentions when to use (hierarchical structures) but does not provide when-not-to-use or alternative tools. The sibling tools context implies alternatives, but not explicitly stated.

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

query_table_dataQuery Table DataB

Query table data with server-side sorting and filtering. UI-only tool for performance with large datasets.

ParametersJSON Schema
NameRequiredDescriptionDefault
sortByNo
filtersNo
pageNo
pageSizeNo

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden for behavioral disclosure. It mentions server-side processing and UI-only nature, but fails to disclose authentication needs, idempotency, rate limits, or side effects. This is insufficient for a production tool.

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 extremely concise, consisting of just two sentences. It front-loads the core purpose and adds only essential performance context. Every word earns its place.

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

Completeness1/5

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

Given the tool has 4 parameters, no output schema, and no annotations, the description is severely lacking. It does not explain return format, filter syntax, sorting behavior, error handling, or pagination boundaries. The tool cannot be reliably invoked based solely on this description.

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

Parameters2/5

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

Input schema has 0% description coverage, so the description must compensate. It only vaguely hints at parameters via 'server-side sorting and filtering', but does not explain the sortBy array syntax, filter object structure, or pagination behavior. Parameter names are partially clear, but the description adds minimal value 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?

The description clearly states the tool's action ('Query table data') and key features ('server-side sorting and filtering'). It distinguishes itself from sibling display tools by explicitly noting it is a 'UI-only tool for performance with large datasets', making its purpose distinct.

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 context by mentioning 'performance with large datasets', but does not explicitly state when to use vs alternatives or exclude cases. Sibling tools are display-focused, so the usage is somewhat inferred, but lacks explicit guidance.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 7 tool updatesv1.6.0
    • First observeddisplay_chart
    • First observeddisplay_image
    • First observeddisplay_list
    • First observeddisplay_master_detail
    • First observeddisplay_table
    • First observeddisplay_tree
    • First observedquery_table_data

TDQS

A3.9/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose (chart, image, list, master-detail, table, tree) with no overlap. The query_table_data tool is also distinct as a data manipulation utility. An agent can easily distinguish them.

Naming Consistency4/5

Most tools follow a consistent 'display_<type>' pattern, making them predictable. The single outlier, query_table_data, uses a different verb and structure but is still understandable and serves a different function.

Tool Count5/5

With 7 tools, the server covers a variety of visual display needs without being overwhelming. Each tool earns its place, and the count is appropriate for a focused visual display server.

Completeness4/5

The tool set covers common visualizations like charts, images, tables, lists, trees, and master-detail views. It lacks some specialized types (e.g., maps, timelines) but provides a solid foundation for most use cases.

Maintenance

ActivityNo data
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

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/harrybin/visuals-mcp'

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