Skip to main content
Glama

VisiData MCP Server

A Model Context Protocol (MCP) server that provides access to VisiData functionality with enhanced data visualization and analysis capabilities.

πŸš€ Features

πŸ“Š Data Visualization

  • create_correlation_heatmap - Generate correlation matrices with beautiful heatmap visualizations

  • create_distribution_plots - Create statistical distribution plots (histogram, box, violin, kde)

  • create_graph - Custom graphs (scatter, line, bar, histogram) with categorical grouping support

🧠 Advanced Skills Analysis

  • parse_skills_column - Parse comma-separated skills into individual skills with one-hot encoding

  • analyze_skills_by_location - Comprehensive skills frequency and distribution analysis by location

  • create_skills_location_heatmap - Visual heatmap showing skills distribution across locations

  • analyze_salary_by_location_and_skills - Advanced salary statistics by location and skills combination

πŸ”§ Core Data Tools

  • load_data - Load and inspect data files from various formats

  • get_data_sample - Get a preview of your data with configurable row count

  • analyze_data - Perform comprehensive data analysis with column types and statistics

  • convert_data - Convert between different data formats (CSV ↔ JSON ↔ Excel, etc.)

  • filter_data - Filter data based on conditions (equals, contains, greater/less than)

  • get_column_stats - Get detailed statistics for specific columns

  • sort_data - Sort data by any column in ascending or descending order

πŸ“¦ Installation

npm install -g @moeloubani/visidata-mcp@beta

Prerequisites: Python 3.10+ (the installer will check and guide you if needed)

Alternative: Python Install

pip install visidata-mcp

Development Install

git clone https://github.com/moeloubani/visidata-mcp.git
cd visidata-mcp
pip install -e .

βš™οΈ Configuration

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "visidata": {
      "command": "visidata-mcp"
    }
  }
}

Cursor AI

Create .cursor/mcp.json in your project:

{
  "mcpServers": {
    "visidata": {
      "command": "visidata-mcp"
    }
  }
}

Restart your AI application after configuration changes.

🎯 Example Usage

Data Visualization

# Create a correlation heatmap
create_correlation_heatmap("sales_data.csv", "correlation_heatmap.png")

# Generate distribution plots for all numeric columns
create_distribution_plots("sales_data.csv", "distributions.png", plot_type="histogram")

# Create a scatter plot with categorical grouping
create_graph("sales_data.csv", "price", "sales", "scatter_plot.png", 
            graph_type="scatter", category_column="region")

Skills Analysis

# Parse comma-separated skills into individual columns
parse_skills_column("jobs.csv", "required_skills", "skills_parsed.csv")

# Analyze skills distribution by location
analyze_skills_by_location("jobs.csv", "required_skills", "location", "skills_analysis.json")

# Create skills-location heatmap
create_skills_location_heatmap("jobs.csv", "required_skills", "location", "skills_heatmap.png")

# Comprehensive salary analysis
analyze_salary_by_location_and_skills("jobs.csv", "salary", "location", "required_skills", "salary_analysis.xlsx")

Basic Data Operations

# Load and analyze data
load_data("data.csv")
get_data_sample("data.csv", 10)
analyze_data("data.csv")

# Transform data
convert_data("data.csv", "data.json")
filter_data("data.csv", "revenue", "greater_than", "1000", "high_revenue.csv")
sort_data("data.csv", "date", False, "sorted_data.csv")

πŸ“Š Supported Data Formats

  • Spreadsheets: CSV, TSV, Excel (XLSX/XLS)

  • Structured Data: JSON, JSONL, XML, YAML

  • Databases: SQLite

  • Scientific: HDF5, Parquet, Arrow

  • Archives: ZIP, TAR, GZ, BZ2, XZ

  • Web: HTML tables

πŸ”§ Troubleshooting

Common Issues

"No module named 'matplotlib'"

  • Make sure you're using the correct MCP server path

  • For local development: /path/to/visidata-mcp/venv/bin/visidata-mcp

  • Restart your AI application after configuration changes

"0 tools available"

  • Verify the MCP server path in your configuration

  • Check that Python 3.10+ is installed

  • Restart your AI application completely

Verification

Test your installation:

# Check if server starts
visidata-mcp

# Test with Python
python -c "from visidata_mcp.server import main; print('βœ… Server ready')"

🎨 Key Features

  • βœ… Complete visualization support with matplotlib, seaborn, and scipy

  • βœ… Advanced skills analysis for job market and HR data

  • βœ… Skills-location correlation analysis and visualization

  • βœ… Salary analysis by location and skills combination

  • βœ… Enhanced error handling with dependency validation

  • βœ… Publication-ready visualizations (300 DPI PNG output)

πŸ“ˆ Use Cases

Job Market Analysis

  • Skills demand analysis by geographic location

  • Salary benchmarking across locations and skill sets

  • Market trend visualization with correlation analysis

Data Science Workflows

  • Complete statistical analysis pipeline

  • Publication-ready visualizations

  • Advanced text processing for categorical data

Business Intelligence

  • Location-based performance analysis

  • Skills gap identification

  • Compensation analysis and benchmarking

πŸ›  Development

# Install for development
git clone https://github.com/moeloubani/visidata-mcp.git
cd visidata-mcp
pip install -e .

# Build package
python -m build

# Run tests
python -c "from visidata_mcp.server import main; print('βœ… Ready')"

πŸ“„ License

MIT License - see LICENSE for details.

Install Server
A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

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/moeloubani/visidata-mcp'

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