VisiData MCP Server
Interact with VisiData, a terminal spreadsheet multitool for discovering and arranging tabular data in various formats like CSV, JSON, and Excel.
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 visualizationscreate_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 encodinganalyze_skills_by_location
- Comprehensive skills frequency and distribution analysis by locationcreate_skills_location_heatmap
- Visual heatmap showing skills distribution across locationsanalyze_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 formatsget_data_sample
- Get a preview of your data with configurable row countanalyze_data
- Perform comprehensive data analysis with column types and statisticsconvert_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 columnssort_data
- Sort data by any column in ascending or descending order
📦 Installation
🚀 Quick Install (Recommended)
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.
🔗 Links
Related Servers
URL Shortener
A simple URL shortening tool using the CleanURI API.
LibreOffice
Provides tools and resources for interacting with LibreOffice documents.
NPX-MCP
A TypeScript server for automation and integration, featuring Microsoft OAuth, browser control, and basic utilities.
HireBase
Interact with the HireBase Job API to manage job listings and applications.
n8n MCP Server
An MCP server for interacting with n8n workflows via natural language.
Notion
Connects AI assistants to your Notion workspace, allowing you to search, create, and manage content using natural language.
Goodday MCP Server
Integrate with the Goodday project management platform to manage projects, tasks, and users via its API.
Qingma Yizhan Auto Answer
An MCP server that provides an automatic answering function for the Qingma Yizhan platform.
Clockify
Manage your Clockify time entries using natural language prompts.
Ramp
Interact with Ramp's Developer API to run analysis on your spend and gain insights leveraging LLMs