skills/holoviz-mcp-cli/SKILL.md
Command 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.
npx skillsauth add marcskovmadsen/holoviz-mcp holoviz-mcp-cliInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
The holoviz-mcp CLI provides direct access to HoloViz documentation, component introspection, and visualization tools from the command line.
The recommended way to install is as a uv tool:
uv tool install holoviz-mcp
This installs both holoviz-mcp and hv commands into an isolated environment. Use hv as a shorter alternative in all examples below (e.g., hv search Panel Tabulator, hv pn get Button).
holoviz-mcp (or hv) is installed and you have Bash/shell accessAll tool commands support three output formats via --output / -o:
pretty (default) — Rich terminal output with colors and tables, for humansmarkdown — Markdown-formatted text, optimized for LLMsjson — Structured JSON, for scripts and programmatic useSetup commands (serve, install, update) output human-readable text by default.
Commands follow noun-verb pattern with Python import aliases for library-specific tools:
holoviz-mcp <command> # general tools
holoviz-mcp pn <command> # Panel tools (import panel as pn)
holoviz-mcp hv <command> # HoloViews tools (import holoviews as hv)
holoviz-mcp hvplot <command> # hvPlot tools (import hvplot)
holoviz-mcp search Panel Tabulator # search all indexed docs (no quotes needed)
holoviz-mcp search query -p panel # search within a project
holoviz-mcp search query -n 5 # return up to 5 results
holoviz-mcp doc get <path> <project> # get specific document (use search to find paths)
holoviz-mcp ref get <component> # find reference guide (when you know the exact name)
holoviz-mcp ref get <component> -p panel # filter by project
holoviz-mcp skill list # list available skills with descriptions
holoviz-mcp skill get <name> # get skill content (always Markdown)
holoviz-mcp pn list # list all components
holoviz-mcp pn list -P panel_material_ui # filter by package
holoviz-mcp pn list -m panel.widgets # filter by module path
holoviz-mcp pn get Button -P panel # get full component details
holoviz-mcp pn params Button -P panel # get parameter details
holoviz-mcp pn search input widget # search components by keyword (no quotes needed)
holoviz-mcp pn search chart -l 5 # limit results
holoviz-mcp pn packages # list Panel-related packages
holoviz-mcp hvplot list # list plot types (~28 types)
holoviz-mcp hvplot get scatter # get plot-specific params (compact)
holoviz-mcp hvplot get scatter --generic # include generic options shared by all plot types
holoviz-mcp hvplot get scatter --style bokeh # include backend-specific style options
holoviz-mcp hvplot get scatter --signature # get function signature instead
holoviz-mcp hv list # list visualization elements (~60 elements)
holoviz-mcp hv get Curve # get Curve element docstring
holoviz-mcp hv get Curve --backend matplotlib # specify backend
holoviz-mcp project list # list indexed projects (~20 projects)
holoviz-mcp inspect # inspect app at localhost:5006
holoviz-mcp inspect http://localhost:8080 # inspect specific URL
holoviz-mcp inspect --no-screenshot # console logs only
holoviz-mcp inspect --no-console-logs # screenshot only
holoviz-mcp inspect --full-page --delay 5 # full page with 5s delay
holoviz-mcp update index # refresh documentation index
holoviz-mcp search with specific terms for better results: "Tabulator pagination page_size" > "how to paginate a table"holoviz-mcp pn get when you need the full docstring, constructor signature, and parametersholoviz-mcp pn params when you only need parameter details (lighter, no docstring)holoviz-mcp ref get when you know the exact component name; use search for fuzzy/semantic lookupjq for filtering: holoviz-mcp pn list -o json | jq '.[].name'-o pretty for human-readable output in the terminaldevelopment
Use 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.
tools
Best 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.
tools
Best practices for developing modern looking tools, dashboards and data apps using HoloViz Panel and Panel Material UI components.
data-ai
Best 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.