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
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
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

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

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/nishide-dev/ml-research-mcp'

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