Excel MCP Server
The Excel MCP Server is a tool for reading, writing, analyzing, and managing Excel files efficiently via the Model Context Protocol.
๐ Read Excel Files: Get worksheet lists, specific sheet data, or data from all sheets
โ๏ธ Write Excel Files: Create new files, write to specific sheets, with support for multiple worksheets
๐ Analyze Excel Structure: Analyze worksheet structure and export it to a new file
๐พ Cache Management: Automatically cache file content with scheduled cleanup and manual clearing options
๐ Log Management: Automatically log operations with periodic cleanup
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Excel MCP Serverread the sales data from Q1_2024.xlsx and show me the summary"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Excel MCP Server
็ฎไฝไธญๆ | English
Excel file processing server based on Model Context Protocol (MCP), providing functionalities for reading, writing, and analyzing Excel files.
Features
๐ Read Excel Files
Get worksheet list
Read specific worksheet data
Read all worksheets data
โ๏ธ Write Excel Files
Create new Excel files
Write to specific worksheet
Support multiple worksheets
๐ Analyze Excel Structure
Analyze worksheet structure
Export structure to new file
๐พ Cache Management
Automatic file content caching
Scheduled cache cleanup
Manual cache clearing
๐ Log Management
Automatic operation logging
Periodic log cleanup
Related MCP server: ironcalc-mcp
Installation
Installing via Smithery
To install excel-mcp-server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @zhiwei5576/excel-mcp-server --client claudeInstalling Manually
Installing via NPM excel-mcp-server can be automatically installed by adding the following configuration to the MCP servers configuration.
Windows Platform:
{
"mcpServers": {
"excel": {
"command": "cmd",
"args": ["/c", "npx", "--yes", "@zhiweixu/excel-mcp-server"],
"env": {
"LOG_PATH": "[set an accessible absolute path]",
"CACHE_MAX_AGE": "1",
"CACHE_CLEANUP_INTERVAL": "4",
"LOG_RETENTION_DAYS": "7",
"LOG_CLEANUP_INTERVAL": "24"
}
}
}Other Platforms:
{
"mcpServers": {
"excel": {
"command": "npx",
"args": ["--yes", "@zhiweixu/excel-mcp-server"],
"env": {
"LOG_PATH": "[set an accessible absolute path]",
"CACHE_MAX_AGE": "1",
"CACHE_CLEANUP_INTERVAL": "4",
"LOG_RETENTION_DAYS": "7",
"LOG_CLEANUP_INTERVAL": "24"
}
}
}Note: LOG_PATH is optional. If not set, logs will be stored in the 'logs' folder under the application root directory.other arguments are optional.
API Tools
Structure Tools
analyzeExcelStructure
Function: Get Excel file structure including sheet list and column headers in JSON format
Parameters:
fileAbsolutePath: Absolute path of the Excel file
headerRows: Number of header rows (default: 1)
exportExcelStructure
Function: Export Excel file structure (sheets and headers) to a new Excel template file
Parameters:
sourceFilePath: Source Excel file path
targetFilePath: Target Excel file path
headerRows: Number of header rows (default: 1)
Read Tools
readSheetNames
Function: Get all sheet names from the Excel file
Parameters:
fileAbsolutePath: Absolute path of the Excel file
readDataBySheetName
Function: Get data from a specific sheet in the Excel file
Parameters:
fileAbsolutePath: Absolute path of the Excel file
sheetName: Name of the sheet to read
headerRow: Header row number (default: 1)
dataStartRow: Data start row number (default: 2)
readSheetData
Function: Get data from all sheets in the Excel file
Parameters:
fileAbsolutePath: Absolute path of the Excel file
headerRow: Header row number (default: 1)
dataStartRow: Data start row number (default: 2)
Write Tools
writeDataBySheetName
Function: Write data to a specific sheet in the Excel file (overwrites if sheet exists)
Parameters:
fileAbsolutePath: Absolute path of the Excel file
sheetName: Name of the sheet to write
data: Array of data to write
writeSheetData
Function: Create a new Excel file with provided data
Parameters:
fileAbsolutePath: Absolute path for the new Excel file
data: Object containing multiple sheet data
Cache Tools
clearFileCache
Function: Clear cached data for the specified Excel file
Parameters:
fileAbsolutePath: Absolute path of the Excel file to clear from cache
Configuration
Environment Variables
LOG_PATH: Log files storage pathOptional
Default: 'logs' folder under application root directory
CACHE_MAX_AGE: Cache expiration time (hours)Optional
Default: 1
CACHE_CLEANUP_INTERVAL: Cache cleanup interval (hours)Optional
Default: 4
LOG_RETENTION_DAYS: Log retention daysOptional
Default: 7
LOG_CLEANUP_INTERVAL: Log cleanup interval (hours)Optional
Default: 24
Default Configuration
Cache Configuration
Cache expiration time: 1 hour
Cache cleanup interval: 4 hours
Log Configuration
Log retention days: 7 days
Cleanup interval: 24 hours
Dependencies
@modelcontextprotocol/sdk: ^1.7.0
xlsx: ^0.18.5
typescript: ^5.8.2
Development Dependencies
@types/node: ^22.13.10
nodemon: ^3.1.9
ts-node: ^10.9.2
License
This project is licensed under the MIT License. This means you are free to:
Use the software for commercial or non-commercial purposes
Modify the source code
Distribute original or modified code Requirements:
Retain the original copyright notice
No liability can be claimed against the authors for software use For detailed license information,please see the LICENSE file.
Available Tools
8 toolsanalyzeExcelStructureA
Get Excel file structure including sheet list and column headers in JSON format
| Name | Required | Description | Default |
|---|---|---|---|
| fileAbsolutePath | Yes | The absolute path of the Excel file | |
| headerRows | No | Number of header rows to read (default: 1) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description is the sole source of behavioral information. It states the output format (JSON) but does not disclose limitations such as file size, hidden sheet handling, or whether the file must be closed. It is adequate but not thorough for a read-only tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no superfluous words. It conveys the essential information efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with complete schema coverage and no output schema, the description is adequate but lacks detail on file format support, hidden sheets, and the exact shape of the returned JSON. It meets minimal requirements but could be more comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so both parameters already have descriptions. The tool description adds no additional meaning beyond what the schema provides, such as clarifying the purpose of headerRows in relation to structure extraction. Context signals indicate 100% schema description coverage, baseline is 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool gets the Excel file structure including sheet list and column headers in JSON format. It uses specific verbs and resource, and distinguishes from sibling tools like readSheetData or readSheetNames which focus on data retrieval rather than structure.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as exportExcelStructure or readSheetData. There is no mention of prerequisites, context, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
clearFileCacheB
Clear cached data for the specified Excel file
| Name | Required | Description | Default |
|---|---|---|---|
| fileAbsolutePath | Yes | The absolute path of the Excel file to clear from cache |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It only states 'clears cached data', which is already implied by the tool name. It fails to explain what 'cached data' entails, whether clearing is permanent or reversible, any side effects on other files or users, or required permissions. The description adds minimal value beyond the name.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a concise single sentence of 7 words, efficiently conveying the core action. It is appropriately sized for a simple tool, though additional context could be added without becoming verbose. It is well-structured and front-loaded with the action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter, no output schema, no annotations), the description is incomplete. It does not explain when cache clearing is needed, whether it affects other users, if it is idempotent, or what the expected effect on subsequent operations is. For a mapping/caching tool, users need more context to use it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (the single parameter 'fileAbsolutePath' has a clear schema description). The tool description does not add any extra meaning beyond what the schema already provides. Per criteria, baseline is 3 when schema coverage is high, and no additional parameter context is given.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool clears cached data for a specified Excel file, with a specific verb 'clear' and resource 'cached data for Excel file'. This distinguishes it from sibling tools that focus on reading, writing, or analyzing Excel structure, leaving no ambiguity about its function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, when not to use it, or any prerequisite conditions. Among siblings, there is no explicit caching tool, but no context is given about scenarios where cache clearing is beneficial (e.g., after file updates or for performance).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
exportExcelStructureA
Export Excel file structure (sheets and headers) to a new Excel template file
| Name | Required | Description | Default |
|---|---|---|---|
| sourceFilePath | Yes | The source Excel file path to analyze | |
| targetFilePath | Yes | The target Excel file path to save structure | |
| headerRows | No | Number of header rows to analyze (default: 1) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must fully disclose behavior. Only states it exports to a new template file. Does not mention overwriting behavior, permission requirements, or what happens if target file exists. Limited behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence conveying purpose and output. No extraneous information. Efficient and focused.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, but tool is simple. Description covers input and output briefly. Could clarify whether output includes only headers or all sheet content. Adequate for a straightforward export tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for all three parameters. The description adds 'sheets and headers' context but does not significantly enhance meaning beyond schema. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the tool exports Excel file structure (sheets and headers) to a new template. Verb 'Export' and resource 'Excel file structure' are specific. Distinguishes from siblings like analyzeExcelStructure (analysis vs. export) and read/write tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implied usage via description: use to export structure. No explicit when-to-use or when-not-to-use compared to siblings like analyzeExcelStructure. Lacks guidance on prerequisites or alternative use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
readDataBySheetNameC
Get data from a specific sheet in the Excel file
| Name | Required | Description | Default |
|---|---|---|---|
| fileAbsolutePath | Yes | The absolute path of the Excel file | |
| sheetName | Yes | tThe name of the sheet to read | |
| headerRow | No | tThe row number to use as field names (default: 1) | |
| dataStartRow | No | The row number to start reading data from (default: 2) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full burden. It only states 'Get data' without disclosing behaviors like whether the data includes headers, row ranges, or formatting. This is insufficient for an agent to understand the tool's effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that is front-loaded with the core purpose. It is appropriately short, though could include more context without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple nature of the tool (read data from a sheet) and full schema coverage, the description is mostly adequate. However, it omits details about return values (no output schema) and usage context, leaving some gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so each parameter has a description. The tool description does not add extra meaning beyond what the schema provides, resulting in a baseline score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get data from a specific sheet in the Excel file' clearly indicates the action (get data) and resource (specific sheet). However, it does not differentiate from sibling tools like readSheetData or readSheetNames, which may have overlapping functionality.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as readSheetData or readSheetNames. There are no exclusions, prerequisites, or context cues for appropriate usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
readSheetDataC
Get data from all sheets in the Excel file
| Name | Required | Description | Default |
|---|---|---|---|
| fileAbsolutePath | Yes | The absolute path of the Excel file | |
| headerRow | No | The row number to use as field names (default: 1) | |
| dataStartRow | No | The row number to start reading data from (default: 2) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must disclose behavioral traits. It only states the action ('get data') without mentioning if the tool has side effects, authentication needs, or return format. This is insufficient for a tool that reads file data.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, concise and to the point. While it lacks structure, it is appropriately sized for a simple tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no output schema, so the description should explain what 'get data' means (e.g., row arrays, JSON). It does not, leaving the agent without key context about return format or error handling.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers 100% of parameters with descriptions, so the description does not need to add much. However, it offers no additional context beyond 'get data from all sheets', which is baseline for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool gets data from all sheets in an Excel file. It implicitly distinguishes from the sibling 'readDataBySheetName' by using 'all sheets', but could be more explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool vs alternatives. For example, it doesn't contrast with 'readDataBySheetName' for reading a specific sheet, nor does it mention prerequisites like file access.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
readSheetNamesB
Get all sheet names from the Excel file
| Name | Required | Description | Default |
|---|---|---|---|
| fileAbsolutePath | Yes | The absolute path of the Excel file |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits but only states the basic action; no info about error handling, permissions, or edge cases.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence without waste, though it could be slightly more informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema and no description of return format; for a data-retrieval tool, this is a significant gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the description adds no extra meaning beyond what the schema provides for the single parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'all sheet names from the Excel file', which is specific and distinguishes it from sibling tools like readDataBySheetName.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives; lacks context like when to use for listing sheets before reading data.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
writeDataBySheetNameC
Write data to a specific sheet in the Excel file (overwrites if sheet exists)
| Name | Required | Description | Default |
|---|---|---|---|
| fileAbsolutePath | Yes | The absolute path of the Excel file | |
| sheetName | Yes | The name of the sheet to write | |
| data | Yes | Array of objects to write to the sheet |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses an important behavioral trait (overwrites if sheet exists), but lacks other details like return value, error handling, or authorization requirements. Without annotations, the description carries the full burden.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with key information, but it is too minimal and does not justify its brevity with additional necessary details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema and no details about success feedback or error cases. For a write operation, this is insufficiently complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All parameters are covered by schema descriptions (100% coverage), so the description adds minimal additional meaning. The note about overwriting is about tool behavior, not parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states verb (Write data) and resource (specific sheet in Excel file), but does not differentiate from sibling tool 'writeSheetData', which likely performs a similar function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs alternatives like 'writeSheetData', nor any prerequisites or conditions of use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
writeSheetDataB
Create a new Excel file with provided data
| Name | Required | Description | Default |
|---|---|---|---|
| fileAbsolutePath | Yes | The absolute path for the new Excel file | |
| data | Yes | Data object with dynamic sheet names and column names |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It mentions file creation but does not disclose behavior like overwriting existing files, file format, or error conditions. The complex data schema is not explained beyond schema descriptions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, making it very concise. However, it sacrifices completeness for brevity; while no wasted words, it omits critical details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complex nested input schema and lack of output schema, the description is incomplete. It does not explain what the tool returns (e.g., file path or success message), how to handle errors, or how to structure the data parameter properly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, but the description adds no extra meaning beyond the schema's parameter descriptions. The data parameter's nested structure is not clarified; e.g., whether keys map to sheet names is left implicit.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (create) and resource (new Excel file with provided data). It distinguishes from sibling tools like writeDataBySheetName, which modify existing files, making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies creation of a new file but does not explicitly state when to use this tool over alternatives (e.g., writeDataBySheetName). It lacks guidance on prerequisites, such as whether the file must not exist or what happens if it does.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
8 tool updates
v1.0.0- Changed
analyzeExcelStructure1 field changed- removed
Input schema / additionalPropertiesRemoved value: -false
- Changed
clearFileCache1 field changed- removed
Input schema / additionalPropertiesRemoved value: -false
- Changed
exportExcelStructure1 field changed- removed
Input schema / additionalPropertiesRemoved value: -false
- Changed
readDataBySheetName1 field changed- removed
Input schema / additionalPropertiesRemoved value: -false
- Changed
readSheetData1 field changed- removed
Input schema / additionalPropertiesRemoved value: -false
- Changed
readSheetNames1 field changed- removed
Input schema / additionalPropertiesRemoved value: -false
- Changed
writeDataBySheetName2 fields changed- removed
Input schema / additionalPropertiesRemoved value: -false - added
Input schema / properties / data / items / propertyNamesAdded value: +{ + "type": "string" +}
- Changed
writeSheetData3 fields changed- removed
Input schema / additionalPropertiesRemoved value: -false - added
Input schema / properties / data / additionalProperties / items / propertyNamesAdded value: +{ + "type": "string" +} - added
Input schema / properties / data / propertyNamesAdded value: +{ + "type": "string" +}
8 tool updates
- First observed
analyzeExcelStructure - First observed
clearFileCache - First observed
exportExcelStructure - First observed
readDataBySheetName - First observed
readSheetData - First observed
readSheetNames - First observed
writeDataBySheetName - First observed
writeSheetData
TDQS
Scored across 8 tools
Each tool has a clearly distinct purpose: structure analysis, cache clearing, template export, reading specific/all sheets or names, and writing to sheets or creating new files. No overlaps or ambiguities.
Most tools follow a verb_target pattern (e.g., 'analyzeExcelStructure', 'readSheetNames'), but there is minor inconsistency: 'readDataBySheetName' vs 'readSheetData' differ in phrasing, and 'exportExcelStructure' uses 'export' instead of 'read' or 'get'.
With 8 tools, the server is well-scoped for Excel file operations. Each tool provides essential functionality without unnecessary bloat or sparseness.
The server covers key operations: reading data, getting structure, writing data, creating files, and cache management. Minor gaps include lack of append/update operations or sheet deletion, but the core workflow is complete.
Maintenance
Related MCP Connectors
Excel analytics: inspect, query (JSON rows), charts, and JSON-to-xlsx workbook writing.
Structured financial modeling for AI agents: build, version, audit models, export to Excel.
Build financial models as code. Cloud execution, GSheets MCP, version control, collaboration.
Deterministic company valuation and corporate finance tools for AI agents โ IRR, NPV, MOIC, DCF, WACC, enterprise value, EV multiples, CAPM, beta and sensitivity analysis via Model Context Protocol. Useful for financial analysis, equity analysis, quantitative analysis, financial projections, financial formulas and financial modeling.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA robust solution that enables AI agents to create, read, modify, and convert Excel files through the Model Context Protocol without requiring Microsoft Office installation.6MIT
- AlicenseAqualityCmaintenanceEnables AI agents to directly create, read, edit, and save Excel (.xlsx) spreadsheets using natural language through the Model Context Protocol, supporting cells, sheets, formatting, and formulas without writing Python code.215MIT
- FlicenseBqualityDmaintenanceEnables Excel automation via natural language, providing session-based workbook management, data manipulation, formulas, charts, and formatting through the Model Context Protocol.29-
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to automate Microsoft Excel tasks such as reading/writing cells, formatting, creating charts, and managing sheets through natural language using the Model Context Protocol.1Apache 2.0
Appeared in Searches
- A server for finding information about Excel
- Information about Microsoft Excel or general excel-related content
- Excel and Visual Basic permissions for reading, writing, updating, and deleting data in spreadsheets
- How to Read an Excel File
- Exploring and Analyzing CSV Data with Statistics, Filters, and Aggregation