Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| plot_heatmap | Create a heatmap for visualizing matrix data. This tool generates a heatmap with optional annotations, ideal for correlation matrices, confusion matrices, or any 2D data. Args: data: For direct input, 2D list (matrix). For file input, column name. data_input: Optional. {"file_path": "path/to/file.csv"} or {"data": {...}} x_labels: Optional labels for x-axis (columns) y_labels: Optional labels for y-axis (rows) annotate: If True, show values in each cell style: Optional. {"title": "...", "xlabel": "...", "ylabel": "...", "colormap": "viridis"} output: Optional. {"format": "png/pdf/svg", "width": 15, "height": 10, "dpi": 300} Returns: PIL Image object or bytes containing the plot Examples: Correlation matrix: >>> plot_heatmap( ... data=[[1.0, 0.8, 0.3], [0.8, 1.0, 0.5], [0.3, 0.5, 1.0]], ... x_labels=["A", "B", "C"], ... y_labels=["A", "B", "C"], ... annotate=True, ... style={"title": "Correlation Matrix", "colormap": "RdBu"} ... ) From file:
>>> plot_heatmap(
... data="matrix",
... data_input={"file_path": "data_matrix.csv"},
... style={"colormap": "plasma"}
... ) |
| plot_contour | Create a contour plot for 3D data visualization in 2D. This tool generates contour lines (or filled contours) showing levels of a third variable (z) across x-y coordinates. Args: x: X coordinates. Column name or list of values. y: Y coordinates. Column name or list of values. z: Z values (2D array). Column name or 2D list. data_input: Optional. {"file_path": "path/to/file.csv"} or {"data": {...}} levels: Number of contour levels (default: 10) filled: If True, create filled contours (contourf), else lines only style: Optional. {"title": "...", "xlabel": "...", "ylabel": "...", "colormap": "viridis"} output: Optional. {"format": "png/pdf/svg", "width": 15, "height": 10, "dpi": 300} Returns: PIL Image object or bytes containing the plot Examples: Filled contour plot: >>> x = [1, 2, 3, 4, 5] >>> y = [1, 2, 3, 4, 5] >>> z = [[i+j for j in range(5)] for i in range(5)] >>> plot_contour(x=x, y=y, z=z, levels=15, filled=True) Line contours only:
>>> plot_contour(
... x="longitude",
... y="latitude",
... z="temperature",
... data_input={"file_path": "climate_data.csv"},
... filled=False,
... levels=20
... ) |
| plot_pcolormesh | Create a pseudocolor plot with a non-regular rectangular grid. This tool generates a fast pseudocolor plot using pcolormesh, ideal for large datasets and irregular grids. Args: x: X coordinates. Column name or list of values. y: Y coordinates. Column name or list of values. z: Z values (2D array). Column name or 2D list. data_input: Optional. {"file_path": "path/to/file.csv"} or {"data": {...}} shading: Shading method ("auto", "flat", "nearest", "gouraud") style: Optional. {"title": "...", "xlabel": "...", "ylabel": "...", "colormap": "viridis"} output: Optional. {"format": "png/pdf/svg", "width": 15, "height": 10, "dpi": 300} Returns: PIL Image object or bytes containing the plot Examples: Basic pcolormesh: >>> x = [1, 2, 3, 4] >>> y = [1, 2, 3, 4] >>> z = [[1, 2, 3, 4], [2, 4, 6, 8], [3, 6, 9, 12], [4, 8, 12, 16]] >>> plot_pcolormesh(x=x, y=y, z=z, shading="gouraud") From file with custom colormap:
>>> plot_pcolormesh(
... x="x_coord",
... y="y_coord",
... z="intensity",
... data_input={"file_path": "field_data.csv"},
... style={"colormap": "plasma", "title": "Field Intensity"}
... ) |
| plot_line | Create a line plot from data. This tool generates a line plot using UltraPlot/Matplotlib. You can provide data either as a file path (CSV/JSON) or directly as lists. Args: x: X-axis data. Column name (string) if using data file, or list of values. y: Y-axis data. Column name (string) if using data file, or list of values. data_input: Optional. {"file_path": "path/to/file.csv"} or {"data": {...}} style: Optional. {"title": "...", "xlabel": "...", "ylabel": "...", "colormap": "...", "grid": True} output: Optional. {"format": "png/pdf/svg", "width": 15, "height": 10, "dpi": 300} Returns: PIL Image object or bytes containing the plot Examples: Basic line plot with direct data: >>> plot_line(x=[1, 2, 3], y=[1, 4, 9]) Line plot from CSV file:
>>> plot_line(
... x="time",
... y="temperature",
... data_input={"file_path": "experiment.csv"},
... style={"title": "Temperature Over Time", "xlabel": "Time (s)"}
... )
High-resolution PDF output:
>>> plot_line(
... x=[1, 2, 3],
... y=[1, 4, 9],
... output={"format": "pdf", "width": 20, "height": 15}
... ) |
| plot_scatter | Create a scatter plot with optional size and color mapping. This tool generates a scatter plot where point sizes and colors can represent additional data dimensions. Args: x: X-axis data. Column name (string) if using data file, or list of values. y: Y-axis data. Column name (string) if using data file, or list of values. data_input: Optional. {"file_path": "path/to/file.csv"} or {"data": {...}} size: Optional point sizes. Column name, list of values, or single value. color: Optional point colors. Column name or list of values for colormap. style: Optional. {"title": "...", "xlabel": "...", "ylabel": "...", "colormap": "viridis", "grid": True} output: Optional. {"format": "png/pdf/svg", "width": 15, "height": 10, "dpi": 300} Returns: PIL Image object or bytes containing the plot Examples: Basic scatter plot: >>> plot_scatter(x=[1, 2, 3], y=[1, 4, 9]) Scatter with size and color mapping:
>>> plot_scatter(
... x="height",
... y="weight",
... size="age",
... color="bmi",
... data_input={"file_path": "health_data.csv"},
... style={"colormap": "plasma"}
... ) |
| plot_bar | Create a bar plot for categorical data comparison. This tool generates vertical or horizontal bar plots, ideal for comparing values across different categories. Args: x: Category labels. Column name (string) if using data file, or list of strings. y: Values for each category. Column name or list of numbers. data_input: Optional. {"file_path": "path/to/file.csv"} or {"data": {...}} orientation: "vertical" or "horizontal" bars (default: "vertical") style: Optional. {"title": "...", "xlabel": "...", "ylabel": "...", "grid": True} output: Optional. {"format": "png/pdf/svg", "width": 15, "height": 10, "dpi": 300} Returns: PIL Image object or bytes containing the plot Examples: Vertical bar plot: >>> plot_bar( ... x=["A", "B", "C"], ... y=[10, 25, 15], ... style={"title": "Category Comparison"} ... ) Horizontal bar plot from file:
>>> plot_bar(
... x="product",
... y="sales",
... data_input={"file_path": "sales.csv"},
... orientation="horizontal"
... ) |
| plot_histogram | Create a histogram for data distribution analysis. This tool generates a histogram showing the frequency distribution of numerical data. Useful for understanding data spread and patterns. Args: data: Data column name (string) if using data file, or list of values. data_input: Optional. {"file_path": "path/to/file.csv"} or {"data": {...}} bins: Number of histogram bins (default: 30) density: If True, normalize to show probability density style: Optional. {"title": "...", "xlabel": "...", "ylabel": "...", "grid": True} output: Optional. {"format": "png/pdf/svg", "width": 15, "height": 10, "dpi": 300} Returns: PIL Image object or bytes containing the plot Examples: Basic histogram: >>> plot_histogram(data=[1.2, 2.3, 2.5, 3.1, 3.4, 4.2, 4.5], bins=10) Histogram from CSV with density:
>>> plot_histogram(
... data="measurement",
... data_input={"file_path": "measurements.csv"},
... bins=50,
... density=True,
... style={"title": "Measurement Distribution"}
... ) |
| plot_box | Create a box plot for comparing data distributions. This tool generates box plots (box-and-whisker plots) showing median, quartiles, and outliers for one or more datasets. Args: data: For direct input, list of lists (each sublist is a dataset). For file input, column name(s) separated by comma or single column. data_input: Optional. {"file_path": "path/to/file.csv"} or {"data": {...}} labels: Optional labels for each dataset style: Optional. {"title": "...", "xlabel": "...", "ylabel": "...", "grid": True} output: Optional. {"format": "png/pdf/svg", "width": 15, "height": 10, "dpi": 300} Returns: PIL Image object or bytes containing the plot Examples: Multiple datasets comparison: >>> plot_box( ... data=[[1, 2, 3, 4, 5], [2, 3, 4, 5, 6], [3, 4, 5, 6, 7]], ... labels=["Group A", "Group B", "Group C"] ... ) From CSV file:
>>> plot_box(
... data="scores",
... data_input={"file_path": "test_scores.csv"},
... style={"title": "Test Score Distribution"}
... ) |
| plot_violin | Create a violin plot for detailed distribution comparison. This tool generates violin plots, which combine box plots with kernel density estimation to show the full distribution shape. Args: data: For direct input, list of lists (each sublist is a dataset). For file input, column name(s) or single column. data_input: Optional. {"file_path": "path/to/file.csv"} or {"data": {...}} labels: Optional labels for each dataset style: Optional. {"title": "...", "xlabel": "...", "ylabel": "...", "grid": True} output: Optional. {"format": "png/pdf/svg", "width": 15, "height": 10, "dpi": 300} Returns: PIL Image object or bytes containing the plot Examples: Comparing distributions: >>> plot_violin( ... data=[[1, 2, 2, 3, 3, 3, 4], [2, 3, 4, 4, 5, 5, 6]], ... labels=["Control", "Treatment"] ... ) From file:
>>> plot_violin(
... data="reaction_time",
... data_input={"file_path": "experiment.csv"},
... style={"title": "Reaction Time Distribution"}
... ) |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |