holoviz-viz-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| load_dataA | Load data into the server from CSV text, JSON text, or a URL. Supports CSV, JSON, Parquet, and Excel formats. For URL loading, the format is auto-detected from the file extension. |
| list_datasetsA | List all loaded datasets with their shapes and column names. |
| analyze_dataC | Generate a comprehensive data profile for a loaded dataset. |
| suggest_visualizationsB | Suggest appropriate visualization types based on data characteristics. |
| load_sample_dataA | Load a built-in sample dataset for quick demos. |
| transform_dataC | Transform a dataset using common operations. Saves the result as a new dataset. |
| merge_datasetsB | Merge two datasets together on a common column. |
| create_plotA | Create an interactive plot from a loaded dataset. Returns both a PNG preview (for inline chat display) and interactive HTML (as an embedded resource for full interactivity). |
| modify_plotB | Modify an existing plot's appearance. Returns updated PNG + HTML. |
| undo_plotA | Undo the last modification to a plot. Returns the previous version. |
| list_plotsA | List all created plots with their IDs, types, and version counts. |
| execute_codeA | Execute arbitrary hvPlot/HoloViews/Panel code and return the result. This is the power-user escape hatch for visualizations that go beyond the structured tools — linked selections, overlays, custom widgets, etc. The code must assign the final visualization to a variable named |
| create_crossfilterA | Create a linked crossfilter dashboard where selections in one view filter all others. This is a HoloViews killer feature: brush/select points in any plot and all other plots update in real time to show only the matching data. Only possible with Panel-native rendering. |
| create_streaming_plotA | Create a live-updating streaming visualization with simulated real-time data. The output is a self-contained HTML page with Panel periodic callbacks that simulates streaming data — the chart updates in real time. This works entirely client-side, no server needed. If a dataset is provided, the streaming simulation replays its data progressively. Otherwise, generates a random walk time series. |
| annotate_plotA | Add annotations and overlays to an existing plot. Useful for marking thresholds, highlighting regions, or adding reference lines and labels. |
| overlay_plotsA | Overlay multiple plots on top of each other (shared axes). Unlike a dashboard which places plots side by side, overlay composites them onto a single set of axes — useful for comparing distributions, showing model vs actual, etc. |
| create_datashader_plotA | Create a datashader-powered plot for large datasets (10K+ points). Rasterizes data into a pixel-density heatmap — works with millions of points where scatter plots would be unusable. Uses hvPlot's datashade integration. |
| time_series_analysisC | Analyze a time series with rolling statistics, trend detection, and decomposition. |
| handle_clickA | Process a click event on a chart and return AI-friendly insights. When a user clicks on a data point in a visualization, this tool analyzes the clicked point in context and returns insights about it. This enables bidirectional communication: the AI creates a chart, the user clicks a point, and the AI explains what that point means. |
| set_themeA | Set the global visualization theme for all subsequent plots. Affects the background color, font colors, and grid styling of new visualizations created after this call. |
| launch_panelA | Open a plot as a full interactive Panel app in the browser. This launches a local Panel server and opens the visualization in your default browser with full Panel interactivity — widgets, linked selections, and all Panel features that can't fit in an iframe. |
| stop_panelA | Stop a running Panel server launched by launch_panel. |
| create_dashboardA | Create a dashboard combining multiple plots. Returns PNG preview + interactive HTML with full Panel layout. Supports professional dashboard templates for polished output. |
| get_plot_htmlB | Get a plot as standalone interactive HTML for embedding. |
| export_plotA | Export a plot to a specified format and return the encoded content. Returns the exported content as base64 (for binary formats) or raw text (for HTML). The AI assistant can then save it to a file or display it. |
| auto_edaA | Run a complete exploratory data analysis in one call. Automatically generates distributions, correlations, categorical breakdowns, and a narrative summary with key insights. Returns a multi-panel dashboard. |
| statistical_testA | Run a statistical test and return results with a diagnostic plot. Supports t-test, correlation, regression, chi-square, and normality tests. Returns both numerical results (p-values, effect sizes) and a visualization. |
| data_quality_reportB | Generate a comprehensive data quality report with visualizations. Analyzes missing values, outliers, data types, uniqueness, and consistency. Returns a narrative report with diagnostic plots. |
| compare_datasetsA | Compare two datasets side-by-side: shapes, columns, distributions, and statistical differences. Useful for comparing train/test splits, before/after transformations, or different time periods. |
| natural_language_queryB | Interpret a natural language query about a dataset and return a structured plan. Analyzes the query against the dataset's columns and types to produce a step-by-step execution plan using the MCP tools. The AI assistant can then execute these steps. |
| describe_plotA | Generate a human-readable description of a plot for accessibility and context. Provides a natural language summary including chart type, axes, data range, notable patterns — useful for screen readers and AI context building. |
| clone_plotA | Create a copy of an existing plot that can be modified independently. Useful for creating variations of a visualization without altering the original. |
| get_data_sampleB | Get a sample of rows from a dataset as formatted text. Useful for providing data context to the AI or for quick inspection. |
| save_sessionA | Save the current session state (datasets + plot specs) to a JSON file. Allows resuming work later by loading the session back. Note: plot objects are not serialized — only specs and data are saved. |
| load_sessionA | Load a previously saved session, restoring datasets and plot specs. |
| generate_large_datasetA | Generate a large synthetic dataset for big-data visualization demos. Creates datasets with patterns that are only visible at scale — clusters, spirals, or random noise — perfect for datashader showcases. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| eda_workflow | Step-by-step exploratory data analysis workflow. |
| crossfilter_workflow | Guide for creating a crossfilter exploration dashboard. |
| data_quality_workflow | Guide for comprehensive data quality assessment. |
| statistical_analysis_workflow | Guide for rigorous statistical analysis with hypothesis testing. |
| storytelling_workflow | Guide for creating a data storytelling dashboard. |
| time_series_workflow | Guide for time series analysis and visualization. |
| big_data_workflow | Guide for visualizing large datasets with datashader. |
| comparison_workflow | Guide for comparing multiple datasets or groups. |
| dashboard_design_workflow | Guide for designing a polished, presentation-ready dashboard. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| Chart Viewer | Interactive chart viewer with toolbar — theme toggle, save, open in browser |
| Dashboard Viewer | Multi-panel dashboard viewer with summary stats and theme toggle |
| Live Stream Viewer | Live-updating streaming chart viewer with status indicators |
| Crossfilter Viewer | Linked selections viewer — brush in one plot to filter all others |
| EDA Report Viewer | Auto-EDA report with tabbed insights and multi-chart exploration |
| Statistics Viewer | Statistical test results with p-value highlights and diagnostic plots |
| Time Series Viewer | Time series analysis with metrics, trend decomposition, and anomaly detection |
| Data Quality Viewer | Data quality report with score gauge, issue cards, and diagnostic charts |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/ghostiee-11/holoviz-viz-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server