Excel Analytics MCP Server
Enables users to analyze local Excel and CSV files through natural language queries and a web dashboard while keeping data local. It supports saving specific analyses as reusable tools and building a custom analytics toolkit within Claude Desktop.
README
Excel Analytics MCP Server
A self-evolving data analytics toolkit for Claude Desktop. Drop your Excel files in, ask questions in plain English, and build up a personal library of reusable analysis tools — no coding required.
What It Does
- Upload Excel/CSV files via a web dashboard
- Ask Claude questions about your data in natural language
- Save analyses as reusable tools you can run again and again
- Create custom tools that Claude can use on your behalf
- Everything stays local — your data never leaves your machine
Install
Option 1: PyPI (recommended)
Requires Python 3.10+ and uv.
# Install uv if you don't have it
curl -LsSf https://astral.sh/uv/install.sh | sh
# Install and configure Claude Desktop
uvx excel-analytics-mcp --setup
That's it. Restart Claude Desktop and start asking questions.
Option 2: From source
git clone https://github.com/blakethom8/excel-mcp.git
cd excel-mcp
bash install.sh
The install script will:
- Check for Python 3.10+ and install
uvif needed - Install all dependencies in an isolated virtual environment
- Configure Claude Desktop automatically
- Create the data directory at
~/Documents/Excel Analytics/
How to Use
1. Upload Your Data
Open the dashboard at http://localhost:8765 (starts automatically when Claude Desktop launches the server) and drag your Excel or CSV files into the upload zone.
2. Ask Claude Questions
In Claude Desktop, try prompts like:
- "What datasets do I have?"
- "Describe the sales table"
- "Show me the top 10 customers by revenue"
- "What's the average order value by month?"
- "Find all invoices over $5,000 from last week"
3. Save Reusable Analyses
When you find a useful query, ask Claude to save it:
- "Save this as a tool called 'Top Customers'"
- "Create a reusable analysis for monthly revenue trends"
4. Manage Your Tools
Visit the Tools tab in the dashboard to:
- View all your saved analyses and custom tools
- Edit tool parameters
- Test tools with different inputs
- Delete tools you no longer need
How It Works
Claude Desktop ←→ MCP Server (stdio) ←→ SQLite DB
↓
REST API (port 8765) ←→ Web Dashboard
- MCP Server communicates with Claude Desktop via stdio (the Model Context Protocol)
- REST API runs in a background thread on
localhost:8765to power the dashboard - SQLite stores your data locally — Excel/CSV files are converted on upload
- Both the MCP server and dashboard share the same database and tool registry
Data Ingestion
When you upload an Excel file:
- Each sheet becomes a separate SQLite table
- Column names are cleaned (lowercase, underscores)
- Numeric columns are auto-detected and properly typed
- Headers are auto-detected (no manual configuration needed)
Available Tools
Core Tools (always available)
| Tool | Description |
|---|---|
list_datasets |
Show all loaded tables with row/column counts |
describe_dataset |
Column names, types, sample values, and basic stats |
query |
Run read-only SQL queries against your data |
summarize |
Statistical summary of a table or specific column |
Meta Tools (for building your toolkit)
| Tool | Description |
|---|---|
save_analysis |
Save a SQL query as a reusable named tool |
create_tool |
Build a custom Python tool (sandboxed) |
list_my_tools |
See all your saved tools |
edit_tool |
Update an existing tool |
delete_tool |
Remove a tool |
test_tool |
Run a tool with test parameters |
Dynamic Tools
Tools you create (via Claude or the dashboard) are saved as JSON files and automatically registered as MCP tools on startup. They persist across sessions and can be shared.
Dashboard
The web dashboard at http://localhost:8765 provides:
- Data Manager — upload files, browse tables, preview data, see column stats
- Tool Workshop — view core tools, manage saved analyses, test tools with auto-generated forms
The dashboard is a single HTML file with no build step — it works in any modern browser.
Where Your Data Lives
All data stays on your machine in a visible, browsable folder:
| Path | Purpose |
|---|---|
~/Documents/Excel Analytics/data.db |
SQLite database with all your uploaded data |
~/Documents/Excel Analytics/tools/ |
Saved analyses and custom tools (JSON files) |
~/Documents/Excel Analytics/output/ |
Generated output files |
~/Documents/Excel Analytics/config.json |
User configuration |
You can override the base directory with the EXCEL_MCP_HOME environment variable.
Security
- SQL: Read-only queries only (
SELECT). No writes, drops, or schema changes. - Python tools: Sandboxed execution with restricted imports. No file system access, no network calls, no dangerous operations.
- Local only: All data stored in
~/Documents/Excel Analytics/. Nothing is sent to external servers. The MCP server communicates only with Claude Desktop on your machine. - No telemetry: No usage tracking, no analytics, no phone-home.
Configuration
Edit ~/Documents/Excel Analytics/config.json:
{
"port": 8765,
"auto_scan": false
}
| Setting | Default | Description |
|---|---|---|
port |
8765 |
Dashboard port |
auto_scan |
false |
Auto-scan a directory for Excel files on startup |
Development
git clone https://github.com/blakethom8/excel-mcp.git
cd excel-mcp
uv sync
uv run python -m excel_mcp
Requirements
- Python 3.10+
- Claude Desktop
- macOS, Windows, or Linux
License
MIT
Recommended Servers
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.
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.
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.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
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.
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.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
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.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.