Skip to main content
Glama
README.md
# Excel MCP Server

An MCP server that provides comprehensive Excel file management and data analysis capabilities.

## Features

- **Excel File Operations**
  - Read multiple Excel formats (XLSX, XLS, CSV, TSV, JSON)
  - Write and update Excel files
  - Get file information and sheet names

- **Data Analysis**
  - Summary statistics and descriptive analysis
  - Data quality assessment
  - Pivot tables
  - Filtering and querying data

- **Visualization**
  - Generate charts and plots from Excel data
  - Create data previews
  - Export visualizations as images

## Installation

1. Create a new Python environment (recommended):

```bash
# Using uv (recommended)
uv init excel-mcp-server
cd excel-mcp-server
uv venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate

# Or using pip
python -m venv .venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate
```

2. Install dependencies:

```bash
# Using uv
uv pip install -e .
```

## Integration with Claude Desktop

1. Install [Claude Desktop](https://claude.ai/download)
2. Open Settings and go to the Developer tab
3. Edit `claude_desktop_config.json`:

```json
{
  "mcpServers": {
      "command": "uvx",
      "args": [
        "mcp-excel-server"
      ],
      "env": {
        "PYTHONPATH": "/path/to/your/python"
      }
  }
}
```

## Available Tools

### File Reading
- `read_excel`: Read Excel files
- `get_excel_info`: Get file details
- `get_sheet_names`: List worksheet names

### Data Analysis
- `analyze_excel`: Perform statistical analysis
- `filter_excel`: Filter data by conditions
- `pivot_table`: Create pivot tables
- `data_summary`: Generate comprehensive data summary

### Data Visualization
- `export_chart`: Generate charts
  - Supports line charts, bar charts, scatter plots, histograms

### File Operations
- `write_excel`: Write new Excel files
- `update_excel`: Update existing Excel files

## Available Resources

- `excel://{file_path}`: Get file content
- `excel://{file_path}/info`: Get file structure information
- `excel://{file_path}/preview`: Generate data preview image

## Prompt Templates

- `analyze_excel_data`: Guided template for Excel data analysis
- `create_chart`: Help create data visualizations
- `data_cleaning`: Assist with data cleaning

## Usage Examples

- "Analyze my sales_data.xlsx file"
- "Create a bar chart for product_sales.csv"
- "Filter employees over 30 in employees.xlsx"
- "Generate a pivot table of department sales"

## Security Considerations

- Read files only from specified paths
- Limit file size
- Prevent accidental file overwriting
- Strictly control data transformation operations

## Dependencies

- pandas
- numpy
- matplotlib
- seaborn

## License

MIT License

TDQS

B3.4/5.0

Scored across 8 tools

Disambiguation4/5

Most tools have distinct purposes like reading, writing, filtering, and analyzing Excel data, but analyze_excel and data_summary overlap significantly as both perform data analysis/summarization. The descriptions help differentiate them slightly, but an agent might struggle to choose between them for basic statistical tasks.

Naming Consistency5/5

All tools follow a consistent verb_noun or verb_excel pattern (e.g., read_excel, update_excel, filter_excel, pivot_table). The naming is predictable and readable throughout, with no mixing of conventions like camelCase or snake_case deviations.

Tool Count5/5

With 8 tools, this server is well-scoped for Excel operations, covering core tasks like reading, writing, updating, filtering, analyzing, summarizing, charting, and pivoting. Each tool earns its place without feeling excessive or insufficient for the domain.

Completeness4/5

The toolset provides strong coverage for Excel data manipulation and analysis, including CRUD-like operations (read, write, update) and advanced features (pivot tables, charts). A minor gap exists in lacking tools for specific Excel formatting or cell-level edits, but agents can work around this with the available tools.

Maintenance

ActivityInactive
ResponsivenessUnresponsive