MCP Data Visualization Server

MCP Data Visualization Server

Enables creating interactive data visualizations from natural language queries using DuckDB for local databases or Databricks for enterprise data warehouses. Supports multiple chart types, CSV imports, SQL queries, and automatic statistical analysis through Claude Desktop.

Category
Visit Server

README

šŸŽÆ MCP Data Visualization Server

Transform natural language into beautiful, interactive data visualizations using Claude Desktop with DuckDB and Databricks support - one-command installation!

✨ Features

  • šŸš€ One-Command Installation - pip install mcp-visualization-duckdb
  • šŸ”§ Automatic Configuration - Automatically sets up Claude Desktop
  • šŸ—£ļø Natural Language Interface - Chat with Claude to create visualizations
  • šŸ“Š Interactive Charts - Plotly-powered HTML widgets
  • šŸ¢ Databricks Integration - Connect to Databricks SQL warehouses with secure credential management
  • šŸ—ƒļø DuckDB Support - Local database with CSV import and interactive browser
  • šŸ”„ Multi-Database - Seamlessly switch between DuckDB and Databricks
  • 🧠 Rule-Based Analysis - Smart chart suggestions without external LLM dependencies
  • šŸ“ˆ Multiple Chart Types - Bar, line, scatter, pie, histogram, box plots, heatmaps, and area charts
  • šŸ” Smart Insights - Automatic statistical analysis and pattern detection
  • šŸ›”ļø Security First - SQL injection protection, encrypted credential storage
  • ⚔ No External Dependencies - Works entirely offline with Claude Desktop

šŸš€ Quick Installation

Option A: DuckDB (Local Database)

# 1. Install the package (includes DuckDB and all dependencies)
pip install mcp-visualization-duckdb

# 2. Configure Claude Desktop automatically
mcp-viz configure

# 3. Restart Claude Desktop and start chatting!

That's it! No manual configuration needed.

Note: DuckDB and all other dependencies are automatically installed with the package. No separate database installation required!

Option B: Databricks (Enterprise Data Warehouse)

# 1. Install the package
pip install mcp-visualization-duckdb

# 2. Configure Databricks credentials (secure, interactive setup)
mcp-viz databricks configure

# 3. Configure Claude Desktop (auto-detects Databricks)
mcp-viz configure

# 4. Restart Claude Desktop and start chatting!

For Databricks, you'll need:

  • Databricks workspace hostname (e.g., your-company.cloud.databricks.com)
  • SQL warehouse HTTP path (e.g., /sql/1.0/warehouses/abc123)
  • Personal access token (generated in Databricks User Settings > Developer > Access Tokens)

šŸ”’ Security: Credentials are stored securely using your system keyring or encrypted files. Tokens are never stored in plain text or command history.

What the installer does automatically:

  • āœ… Detects your platform (Windows/Mac/Linux)
  • āœ… Finds Claude Desktop config automatically
  • āœ… Auto-detects database type (DuckDB or Databricks)
  • āœ… Sets up database with sample data (DuckDB)
  • āœ… Securely stores credentials (Databricks)
  • āœ… Configures paths correctly
  • āœ… Creates backups of existing config
  • āœ… Validates setup to ensure it works

šŸš€ After Installation

Once installed, you'll see detailed instructions with:

  • Next steps for your chosen database type
  • Quick start commands
  • Sample database links
  • Example queries to try

Run mcp-viz-setup anytime to see the post-installation guide again!

šŸ”„ Ongoing Usage (After Setup)

āœ… One-Time Setup Only

# Run these commands ONCE:
mcp-viz databricks configure  # First time Databricks setup
mcp-viz configure             # Configure Claude Desktop  
# Restart Claude Desktop

šŸ“‹ Daily Usage - No Reconfiguration Needed

# Just open Claude Desktop and start chatting:
"What Databricks catalogs are available?"
"List tables in the sales catalog" 
"Create a chart of revenue by region"

šŸ” Check Status Anytime

mcp-viz databricks status    # Shows if credentials exist
mcp-viz databricks test      # Test connection and browse catalogs
mcp-viz status              # Shows MCP server configuration

šŸ”„ When You Need to Reconfigure

  • āŒ Token expires (personal access tokens can have expiration dates)
  • āŒ Change workspaces (different Databricks instance)
  • āŒ Change SQL warehouses (different HTTP path)
  • āŒ Credential issues (run mcp-viz databricks remove then reconfigure)

šŸ’¾ Secure Credential Storage

  • šŸ”’ Encrypted on disk or in system keyring
  • šŸ”„ Automatically loaded when Claude Desktop starts
  • ⚔ No repeated authentication needed

šŸ“ Note: After initial setup, you should be able to use Claude Desktop normally without any additional configuration steps!

šŸŽ® Usage with Claude Desktop

After installation, simply chat with Claude using natural language:

Data Analysis

  • "What tables are available?" - List database tables
  • "What Databricks catalogs are available?" - Browse Databricks catalogs
  • "Show me schemas in the sales catalog" - List schemas
  • "Analyze the sales table" - Get table information
  • "Show me the top 10 products by revenue" - Query data

Creating Visualizations

  • "Create a bar chart of sales by region" - Generate charts
  • "Show me the correlation between price and quantity" - Scatter plots
  • "Make a pie chart of customer segments" - Category breakdowns
  • "Visualize sales trends over time" - Time series analysis

Database Management

DuckDB:

  • "Browse databases in my Downloads folder" - Interactive database browser
  • "Connect to C:/path/to/mydata.duckdb" - Switch databases
  • "Load CSV from Downloads/sales.csv as table 'sales'" - Import data

Databricks:

  • "Switch to the marketing catalog" - Navigate catalogs
  • "List schemas in the sales catalog" - Browse schemas
  • "What database am I connected to?" - Connection info

šŸ”§ CLI Commands

The package includes a powerful CLI:

# Configuration
mcp-viz configure              # Interactive setup (auto-detects database type)
mcp-viz configure --auto       # Automatic setup with defaults
mcp-viz status                 # Check configuration status

# Management  
mcp-viz test                   # Test server functionality
mcp-viz remove                 # Remove server from Claude Desktop

# DuckDB Database
mcp-viz create-db              # Create sample database
mcp-viz create-db --path ./my-data.duckdb  # Create at specific path

# Databricks Integration
mcp-viz databricks configure   # Setup Databricks credentials (interactive)
mcp-viz databricks status      # Check Databricks connection status
mcp-viz databricks test        # Test connection and browse catalogs
mcp-viz databricks remove      # Remove stored credentials

šŸ“Š Supported Chart Types

Chart Type Use Case Example Request
Bar Compare categories "Show sales by region"
Line Show trends over time "Plot revenue over months"
Scatter Explore relationships "Price vs quantity relationship"
Pie Show proportions "Customer segment breakdown"
Histogram Analyze distributions "Distribution of order values"
Box Compare distributions "Price ranges by category"
Heatmap Show correlations "Correlation matrix of metrics"
Area Cumulative trends "Cumulative sales over time"

šŸ› ļø Troubleshooting

"Server not found" in Claude Desktop

# Check configuration status
mcp-viz status

# Reconfigure if needed
mcp-viz configure --force

# Restart Claude Desktop completely

"Unknown tool" errors

# Test server functionality
mcp-viz test

# Check if all dependencies are installed
pip install --upgrade mcp-visualization-duckdb

Database issues

# Create a fresh database with sample data
mcp-viz create-db

# Check current configuration
mcp-viz status

šŸ”§ Advanced Configuration

Custom Database Path

The installer will prompt you for a database location, or you can specify it:

# During configuration
mcp-viz configure
# Database path [/home/user/.mcp-visualization/data.duckdb]: /path/to/my/data.duckdb

Multiple Databases

You can easily switch between databases using Claude Desktop:

  • "Browse databases in Documents folder"
  • "Connect to /path/to/another/database.duckdb"
  • "What database am I currently connected to?"

šŸ’¾ Sample Data

šŸŽÆ Built-in Sample Data

The package automatically creates sample data including:

  • Sales Data - 365 days of sales across regions and products
  • Customer Data - 1000 customer records with demographics
  • Product Data - 100 products with categories and pricing

🌟 Additional Sample Databases

Want more data to explore? Check out these high-quality sample databases:

TimeStored Sample DuckDB Databases

Available datasets include:

  • Financial Data - Stock prices, trading data, market analysis
  • NYC Taxi - Real NYC taxi trip records with geospatial data
  • TPC-H Benchmark - Standard database performance testing data
  • E-commerce - Product catalogs, orders, customer behavior
  • IoT Sensor Data - Time-series sensor readings and telemetry

Simply download any .duckdb file and load it:

# Download a sample database, then:
"Load database from Downloads/nyc-taxi.duckdb"
"What tables are available in this database?"
"Create a heatmap of taxi pickups by hour and day"

Perfect for testing, learning, and demonstrating data visualization capabilities!

šŸ—ļø Development Setup

For developers who want to contribute:

# Clone repository
git clone https://github.com/your-github-username/mcp-visualization-duckdb.git
cd mcp-visualization-duckdb

# Install in development mode
pip install -e .

# Configure for development
mcp-viz configure

# Run tests
python test_package.py

See Development Guide for detailed instructions.

ā“ Frequently Asked Questions

Q: Do I need to run mcp-viz databricks configure every time?

A: No! You only run it once during initial setup. After that:

  • āœ… Credentials are stored securely and auto-loaded
  • āœ… Just open Claude Desktop and start chatting
  • āœ… No repeated authentication needed

Q: How do I know if my Databricks is still connected?

A: Check anytime with:

mcp-viz databricks status    # Shows connection status
mcp-viz databricks test      # Tests connection and shows catalogs

Q: When do I need to reconfigure?

A: Only when:

  • Your access token expires
  • You change Databricks workspaces
  • You switch to a different SQL warehouse
  • Credentials get corrupted (rare)

Q: Are my credentials safe?

A: Yes! Credentials are:

  • šŸ”’ Encrypted on disk or stored in system keyring
  • 🚫 Never stored in plain text or command history
  • ⚔ Automatically loaded when needed

Q: Can I use both DuckDB and Databricks?

A: Yes! The server auto-detects which database type to use:

  • Configure Databricks: mcp-viz databricks configure
  • Configure DuckDB: mcp-viz configure
  • Server automatically uses the appropriate one

šŸ“¦ Package Information

  • PyPI: https://pypi.org/project/mcp-visualization-duckdb/
  • Repository: https://github.com/your-github-username/mcp-visualization-duckdb
  • License: MIT

šŸ¤ Contributing

We welcome contributions! The package is structured for easy development:

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Run tests: python test_package.py
  5. Submit a pull request

šŸ™ Acknowledgments


Ready to transform your data analysis with Claude Desktop?

pip install mcp-visualization-duckdb && mcp-viz configure

šŸŽ‰ That's it! Start chatting with Claude about your data!

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured