AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
MCP unreviewed MIT Self-run

Mcp Excel

mcp-ivan-loh-mcp-excel · by ivan-loh

Query Excel files with SQL through Claude - no SQL knowledge required. MCP server for AI-powered spreadsheet analytics.

No reviews yet
0 installs
31 views
0.0% view→install

Install

$ agentstack add mcp-ivan-loh-mcp-excel

Open-source listing, not yet scanned by AgentStack. Follow the source repository for install instructions.

Security review

⚠ Flagged

1 finding(s); flagged for manual review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures
  • high Pipes remote content directly into a shell (remote code execution).

What it can access

  • Network access Used
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Reliability & compatibility

Not yet reviewed
0 installs to date
no reviews yet
11mo ago

Declared compatibility

Claude CodeClaude DesktopCursorWindsurf

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Mcp Excel? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

mcp-server-excel-sql

[](https://pypi.org/project/mcp-server-excel-sql/) [](https://opensource.org/licenses/MIT) [](https://modelcontextprotocol.io) [](https://github.com/ivan-loh/mcp-excel/actions)

Let Claude query your Excel and CSV files using SQL - no SQL knowledge required. Ask questions in plain English, Claude writes and executes the queries automatically.

What It Does

How it works:

  1. Point the server at your Excel/CSV files
  2. Ask Claude questions in plain English
  3. Claude writes SQL queries automatically
  4. Get instant answers from your data

Capabilities:

  • Each Excel sheet and CSV file becomes a queryable SQL table
  • Join data across multiple files and formats (xlsx, xls, csv, tsv)
  • Clean messy data with YAML transformation rules
  • Deploy for teams with concurrent access
  • Support for complex queries (aggregations, window functions, CTEs)

Should You Use This?

Great fit if you:

  • Work with Excel files under 100MB
  • Want data insights without SQL knowledge
  • Need to join multiple spreadsheets
  • Use AI assistants (Claude writes the SQL for you)
  • Prototype before building ETL pipelines

Not the right tool if you:

  • Have files over 100MB (use database import instead)
  • Need to modify Excel files (read-only)
  • Need formulas/macros/VBA (values only)
  • Building production data warehouse (prototyping only)

Installation

Install uv:

curl -LsSf https://astral.sh/uv/install.sh | sh

That's it. No package installation needed - uvx runs the server on-demand.

Try It Now

git clone https://github.com/ivan-loh/mcp-excel.git
cd mcp-excel
python examples/finance/create_finance_examples.py
uvx --from mcp-server-excel-sql mcp-excel --path examples/finance

Quick Start

Claude Desktop

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

{
  "mcpServers": {
    "excel": {
      "command": "uvx",
      "args": [
        "--from", "mcp-server-excel-sql", "mcp-excel",
        "--path", "/path/to/excel/files/"
      ]
    }
  }
}

Update the path and restart Claude Desktop.

Command Line Testing

# Test with your files
uvx --from mcp-server-excel-sql mcp-excel --path /path/to/excel/files

# With auto-refresh
uvx --from mcp-server-excel-sql mcp-excel --path /path/to/files --watch

Common Use Cases

  • Financial Analysis - Budget vs actuals, AR aging, revenue trending
  • Sales Reporting - Territory performance, product analysis, customer segmentation
  • Operations - Inventory reconciliation, vendor comparison, project tracking
  • Data Exploration - Quick SQL access, data quality testing, analytics prototyping

Available Tools

  • toollisttables - Lists all tables and views with file paths and row counts
  • toolgetschema - Shows column names and types for a table or view
  • tool_query - Execute read-only SQL queries (joins, aggregations, CTEs)
  • tool_refresh - Reload data after file changes (automatic with --watch)
  • toolcreateview - Create persistent SQL views that survive restarts
  • tooldropview - Delete a view and its storage

Understanding Table Names

Tables are named: .. (lowercase, sanitized)

Example: File /data/sales/Q1-2024.xlsx sheet Summarysales.q12024.summary

Important: Always quote table names in SQL:

SELECT * FROM "sales.q12024.summary"  -- Correct

System Views

  • .__files - File inventory (paths, sheet count, rows, modification time)
  • .__tables - Table catalog (names, source file, sheet, row count)

Persistent Views

Create reusable SQL views stored on disk that automatically restore on server restart.

Example:

CREATE VIEW high_value_sales AS
SELECT * FROM "sales.data.summary" WHERE amount > 1000

Use for filtering, aggregations, or multi-table joins. Manage with tool_create_view(), tool_drop_view(), and tool_list_tables().

Data Transformation

Clean messy Excel files with YAML transformation rules:

Capabilities:

  • Skip header/footer rows, combine multi-row headers
  • Filter rows with regex or column conditions
  • Rename columns, set data types (dates, decimals)
  • Pivot wide to long format, specify cell ranges
  • Extract tables from multi-table sheets

Usage:

uvx --from mcp-server-excel-sql mcp-excel --path /data --overrides config.yaml

See examples/finance/finance_overrides.yaml for complete configuration examples.

Auto-Detection Features

Handle complex Excel files automatically without manual configuration.

What it detects:

  • Merged cells, hidden rows/columns
  • European number formats (1.234,56 → decimals)
  • Multiple tables on single sheets
  • Header rows, metadata rows

Enable:

messy_report.xlsx:
  sheet_overrides:
    "Report":
      auto_detect: true

Use for: Merged cell headers, hidden columns, European formatting, multi-table sheets, complex layouts.

Limitation: .xlsx and .xlsm only. See DEVELOPMENT.md for advanced options.

CLI Options

uvx --from mcp-server-excel-sql mcp-excel [OPTIONS]

Options:

  • --path - Directory containing Excel files (default: current directory)
  • --overrides - YAML configuration file for transformations
  • --watch - Auto-refresh when files change
  • --transport - Communication mode: stdio, streamable-http, sse (default: stdio)
  • --host - Host for HTTP/SSE (default: 127.0.0.1)
  • --port - Port for HTTP/SSE (default: 8000)
  • --require-auth - Enable API key authentication (uses MCPEXCELAPI_KEY env var)

Additional Documentation

Multi-user deployment, security, and development: See [DEVELOPMENT.md](DEVELOPMENT.md) for:

  • Multi-user setup with authentication
  • Security model and enforcement
  • Architecture and design decisions
  • Performance characteristics
  • Testing and development workflow

Examples: See [examples/README.md](examples/) for finance and CNC datasets with detailed query examples.

License

MIT

Source & license

This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.