Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Capabilities

Features and capabilities supported by this server

CapabilityDetails
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

NameDescription
skill_getA

Get the specified skill for usage with LLMs.

Use list_skills tool to see available skills.

skill_listA

List all available skills with descriptions (~8 skills).

Use skill_get to retrieve the full content of a specific skill.

Returns

list[dict[str, str]]: Skills with 'name' and 'description' keys.
    Names are in hyphenated format (e.g., "panel-material-ui", "panel-custom-components").
skill_filesA

List supporting files in a skill directory (excludes SKILL.md).

Use this to discover additional resources (examples, references, templates) bundled with a skill beyond its main SKILL.md content.

skill_file_getA

Read a supporting file from a skill directory.

Use skill_files tool first to discover available files, then use this tool to read them.

ref_getA

Find reference guides for specific components in HoloViz or user-defined projects.

Use this when you know the exact component name and want its reference guide directly. For fuzzy or semantic search, use the search tool instead.

Reference guides are a subset of all documents that focus on specific UI components or plot types, such as:

  • panel: "Button", "TextInput", ...

  • hvplot: "bar", "scatter", ...

  • my-custom-project: custom components from your organization

project_listA

List all HoloViz and user-defined projects with indexed documentation (~20 projects).

This includes both built-in HoloViz projects (panel, hvplot, etc.) and any custom/internal documentation projects you have configured.

Returns

list[str]: A list of project names that have documentation available.
           Names are returned in hyphenated format (e.g., "panel-material-ui", "my-custom-project").
doc_listA

List all documents available for a given project.

Use this tool to discover what documents are available before using doc_get. Use project_list to see available projects.

doc_getA

Retrieve a specific document by path and project.

Use this tool to look up a specific document within a project.

Tip: Use the doc_list tool first to discover valid document paths for a project, then pass the exact source_path value here.

searchA

Search the HoloViz and any user defined project documentation using semantic similarity.

IMPORTANT: This is a general purpose search tool. Not just for searching the HoloViz documentation.

DO use this tool to search the HoloViz project documentation DO use this tool to search any additional user-defined project documentation. DO use the project_list tool to list the available projects.

BEST PRACTICES:

  • For initial exploration, use content=False to get an overview of available documents

  • Use content="chunk" for quick snippets, content="full" for complete documents

  • Adjust max_content_chars if you need more or less content per result

  • Set max_content_chars=None to get untruncated content (use with caution for large docs)

QUERY OPTIMIZATION: The search uses context-aware truncation that centers returned content on query keywords. To get the most relevant excerpts:

  • Use SPECIFIC terms: "CheckboxEditor SelectEditor" > "editor dropdown"

  • Use UNIQUE identifiers: "background_gradient text_gradient" > "styling colors"

  • Avoid COMMON terms that appear everywhere: "pandas", "import", "data", "widget"

  • Include CLASS/FUNCTION names: "add_filter RangeSlider" > "filtering with widgets"

  • Use MULTIPLE specific terms: Helps the algorithm find the right section

  • Target FEATURE-SPECIFIC vocabulary: Terms unique to the feature you're looking for

Example: Instead of "how to add pagination to a table", use "pagination page_size local remote" This ensures the truncated content focuses on the pagination section, not generic table info.

showA

Display Python code visualization in a browser.

This tool executes Python code and renders it in a Panel web interface, returning a URL where you can view the output. The code is validated before execution and any errors are reported immediately.

Use this tool whenever the user asks to show, display, visualize data, plots, dashboards, and other Python objects.

inspectA

Inspect a running web app by capturing a screenshot and/or browser console logs.

Web apps (especially custom components) often have JavaScript errors that are invisible to users and LLMs. This tool captures both a visual screenshot and the browser console output in a single call, making it easy to diagnose rendering issues, JS errors, and runtime warnings.

hvplot_listA

List all available hvPlot plot types (~28 types) supported in the current environment.

Use this tool to discover what plot types you can generate with hvPlot.

Note: The plot types are also called "kinds".

hvplot_getA

Get the hvPlot docstring or signature for a specific plot type.

Returns only the plot-specific parameters by default (compact output). Set generic=True and/or style=True for the full docstring including all shared options. Equivalent to hvplot.help(plot_type) in the hvPlot API. Pass signature=True to get the function signature instead of the docstring.

pn_packagesA

List all installed packages that provide Panel UI components.

Use this tool to discover what Panel-related packages are available in your environment. The returned package names can be used in the 'package' parameter of: list, search, get, and params.

pn_searchA

Search for Panel components by search query and optional package filter.

Use this tool to find components when you don't know the exact name but have keywords. The search looks through component names, module paths, and documentation to find matches.

pn_listA

Get a summary list of Panel components without detailed docstring and parameter information.

Use this tool to get an overview of available Panel components when you want to browse or discover components without needing full parameter details. This is faster than get_component and provides just the essential information.

pn_getA

Get complete details about a single Panel component including docstring and parameters.

Use this tool when you need full information about a specific Panel component, including its docstring, parameter specifications, and initialization signature.

Tip: If you only need parameter details and already know the component exists, use params instead for a lighter response without the docstring.

IMPORTANT: This tool returns exactly one component. If your criteria match multiple components, you'll get an error asking you to be more specific.

pn_paramsA

Get detailed parameter information for a single Panel component (without the docstring).

Use this tool when you only need parameter details (types, defaults, constraints) and already know the component exists. This is lighter than get which also includes the full docstring.

IMPORTANT: This tool returns parameters for exactly one component. If your criteria match multiple components, you'll get an error asking you to be more specific.

hv_listA

List all available HoloViews visualization elements (~60 elements).

Use this tool to discover what visualizations you can generate with HoloViews.

Returns

list[str] Sorted list of all plot type names (e.g., 'Annotation', 'Area', 'Arrow', 'Bars', ...).

Examples

list_elements() ['Annotation', 'Area', 'Arrow', 'Bars', ...]

hv_getA

Get the HoloViews docstring for a specific element, including available options and usage details.

Use this tool to retrieve the full docstring for an element, including generic and style options.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription
holoviz_data_explorer_agentholoviz_data_explorer Agent
holoviz_app_architect_agentholoviz_app_architect Agent
hvplot/SKILL.mdBest practices for doing quick exploratory data analysis with minimal code and a Pandas .plot like API using HoloViews hvPlot.
hvplot/_manifestFile listing for hvplot
panel-material-ui/SKILL.mdBest practices for developing modern looking tools, dashboards and data apps using HoloViz Panel and Panel Material UI components.
panel-material-ui/_manifestFile listing for panel-material-ui
panel-custom-components/SKILL.mdBuild custom Panel components using JSComponent (vanilla JS, web components), ReactComponent (React/JSX), AnyWidgetComponent (AnyWidget spec for cross-platform), or MaterialUIComponent (Material UI themed). Use when wrapping JS libraries, creating interactive widgets, or building themed components. Includes decision guide, best practices, DOs/DON'Ts, and Playwright UI testing patterns.
panel-custom-components/_manifestFile listing for panel-custom-components
panel-holoviews/SKILL.mdBest practices for integrating HoloViews and hvPlot visualizations into Panel applications. Use when embedding HoloViews/hvPlot plots in Panel panes, preserving zoom/pan state across data refreshes with DynamicMap, composing DynamicMap overlays without type errors, using HoloViews streams (Selection1D, RangeXY, Tap, BoundsXY, Pipe, Buffer) with Panel, cross-filtering with link_selections, making HoloViews plots responsive in Panel layouts, or wiring Panel widgets to Bokeh plot properties with jslink.
panel-holoviews/_manifestFile listing for panel-holoviews
holoviews/SKILL.mdBest practices for developing advanced, interactive, and publication-quality data visualizations using HoloViz HoloViews
holoviews/_manifestFile listing for holoviews
panel/SKILL.mdBest practices for developing tools, dashboards and interactive data apps with HoloViz Panel. Create reactive, component-based UIs with widgets, layouts, templates, and real-time updates. Use when developing interactive data exploration tools, dashboards, data apps, or any interactive Python web application. Supports file uploads, streaming data, multi-page apps, and integration with HoloViews, hvPlot, Pandas, Polars, DuckDB and the rest of the HoloViz and PyData ecosystems.
panel/_manifestFile listing for panel
holoviz-mcp-cli/SKILL.mdCommand reference for the holoviz-mcp CLI tool. Use the CLI when you have Bash/shell access and want direct access to HoloViz documentation, component introspection, and visualization tools.
holoviz-mcp-cli/_manifestFile listing for holoviz-mcp-cli
param/SKILL.mdUse when building Python classes with validated, typed parameters using the Param library. Triggers include creating configuration classes, building reusable components with state, implementing reactive dependencies between parameters, adding type-safe attributes with bounds/constraints, creating testable parameterized classes, or when users mention param.Parameterized, @param.depends, or param.watch.
param/_manifestFile listing for param

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/MarcSkovMadsen/holoviz-mcp'

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