root-ext-viz
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": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| data_profileA | Describe a data file (csv/tsv/parquet/xlsx/json) BEFORE plotting it: row count (sampled at 100k for huge csv), column dtypes, head, and numeric summary. Profile → design the chart → load. Reads the file on this machine; nothing leaves it. |
| data_loadA | Load a data file into the session kernel as DATA[name] — loaded once, use it many times: transform with py_run, chart with chart_spec(data=name). Starts the kernel on first use. RETURNS A |
| session_stateA | What the kernel holds right now — loaded frames (rows × columns,
each with its |
| py_runA | EXECUTES Python in the session kernel — pandas, numpy, scipy, matplotlib (Agg), plotly, altair are importable; DATA holds loaded frames; variables and imports survive to your next call. Use it to transform/aggregate before charting, or run a python recipe (matplotlib figures: savefig to an absolute path in the artifact scratch). Resource-capped (memory rlimit + your wall_s, max 570s). Pass |
| session_resetA | Empty the session kernel deliberately — loaded frames and variables are gone; the next data_load starts fresh. |
| chart_specA | Write a Vega-Lite chart as a SOURCE DOCUMENT: .vl.json +
a rendered .png land in out_dir (use the artifact scratch
when the user asked to SEE it — the workspace opens it beside the
conversation, live and editable). Pass data= to inline a frame (capped at max_rows — aggregate big
data in the kernel first); a handle reads from the store, so it
charts even after the kernel that made it died. THE RENDER COMES
BACK ATTACHED TO THIS RESULT —
look at it directly, no second read — alongside |
| chart_exportA | Render an existing .vl.json to svg, png, or SELF-CONTAINED interactive html (vega js inlined — opens in the browser, works offline). Refuses an out_path that collides with the spec (charter). |
| viz_recipesA | Engineering chart recipes — call with no topic for the index, with a topic for a worked template: line, scatter, bar, histogram, cdf, log_axes, error_bars, tolerance_band, control_chart, heatmap (Vega-Lite, chart_spec-ready) and bode, fft, contour (python, via py_run). Templates teach the shape; adapt fields to your data. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 8 tools
Each tool addresses a distinct stage of the visualization workflow: profiling, loading, state inspection, Python execution, reset, spec creation, export, and recipes. No two tools have overlapping purposes; data_profile describes a file, data_load imports it, and chart_spec creates a chart while chart_export converts existing specs.
Tool names predominantly use snake_case with grouped prefixes (data_*, session_*, chart_*), but not all follow a strict verb_noun pattern (e.g., session_state, chart_spec, viz_recipes). Minor deviations in parts of speech do not significantly impede predictability.
Eight tools is within the ideal range for a visualization server. Each tool covers a necessary function—data intake, kernel control, transformation, chart authoring, and output—without redundancy or bloat.
The tool surface covers the full lifecycle from data profiling and loading, to transformation via Python, to chart specification, rendering, and export, plus session management and recipe templates. There are no evident gaps for the stated purpose of creating and exporting visualizations.