Excel MCP Server
This MCP server enables AI agents to automate Excel file operations through natural language commands.
Key Capabilities:
Workbook & Worksheet Management
Create new Excel workbooks (.xlsx files) at specified paths
Add worksheets with custom names to existing workbooks
Retrieve workbook information including sheet lists and metadata
Cell & Range Operations
Set/get individual cell values (strings, numbers, booleans) using A1 notation
Set/get range values for bulk data operations using 2D arrays (e.g., A1:C10)
Formatting & Styling
Apply comprehensive cell formatting: font properties (bold, italic, size, color), background fills (ARGB colors, patterns), and borders (top, bottom, left, right with custom styles)
Formulas & Calculations
Add Excel formulas to cells for automatic calculations (e.g., =SUM(A1:A10), =AVERAGE())
Data Operations
Search for specific values within worksheets and return their locations
Export worksheet data to CSV format
Use Cases: Automated report generation, data analysis and calculation, spreadsheet formatting, data extraction and transformation, bulk data entry and manipulation.
Provides the runtime environment for the Excel MCP server to operate, enabling Excel file operations on the server-side.
Used as the primary programming language for implementing the Excel MCP server, providing type safety and modern language features.
Implements schema validation for Excel operations, ensuring that inputs to Excel manipulation functions are properly formatted and validated.
Click on "Install 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 Servercreate a new workbook named sales_report.xlsx and add a sheet for monthly data"
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
AIエージェント(Claude、ChatGPT、Copilotなど)がExcelファイルを自動操作できるModel Context Protocol (MCP) サーバーです。
🎯 できること
このMCPサーバーを使うと、AIエージェントに自然言語で指示するだけで、以下のようなExcel操作が自動化できます:
📊 データ入力・編集: セルや範囲に値を設定、取得
📝 ワークブック管理: 新規作成、シート追加、情報取得
🎨 書式設定: フォント、色、罫線などの装飾
🔢 数式・計算: セルに数式を追加して自動計算
🔍 データ検索: ワークシート内のデータを検索
💾 データ出力: ExcelシートをCSVファイルにエクスポート
例: 「売上データを分析して、月別の合計を計算し、グラフ用のシートを作成して」と指示すれば、AIが自動的にExcelファイルを操作します。
Related MCP server: Excel MCP Server
📚 詳細ガイド
初心者の方は guide/ ディレクトリの詳細ガイドを参照してください:
📖 メインガイド - プロジェクト全体の概要
🎓 MCP基礎知識 - MCPとは何か、仕組みの理解
⚙️ セットアップ手順 - 環境構築方法
🚀 使用方法 - 実際の使い方と例
🔧 ツール詳細 - 各Excel操作ツールの詳細
🛠️ トラブルシューティング - よくある問題と解決方法
📋 サンプル集 - 実用的な使用例集
🚀 セットアップ手順
1. 必要な環境
Node.js (v16以降)
Windows、macOS、またはLinux
2. インストール
# ディレクトリ移動
cd excel_mcp_server
# 依存関係をインストール
npm install
# ビルド
npm run build3. VS Code Copilotとの連携設定
VS CodeでCopilotと連携する場合、mcp.jsonファイルに設定を追加します。
設定ファイルの場所:
Windows:
%APPDATA%\Code\User\mcp.json(安定版) または%APPDATA%\Code - Insiders\User\mcp.json(Insiders版)macOS:
~/Library/Application Support/Code/User/mcp.jsonまたは~/Library/Application Support/Code - Insiders/User/mcp.jsonLinux:
~/.config/Code/User/mcp.jsonまたは~/.config/Code - Insiders/User/mcp.json
設定内容:
{
"servers": {
"excel-mcp-server": {
"type": "stdio",
"command": "node",
"args": ["C:/path/to/excel_mcp_server/dist/index.js"]
}
}
}重要: C:/path/to/excel_mcp_server/dist/index.js は、実際のプロジェクトの dist/index.js への絶対パスに置き換えてください。
4. 動作確認
VS Codeを再起動後、Copilotに以下のように話しかけてみてください:
「ExcelファイルC:/test/sample.xlsxを作成して、Sheet1を追加し、A1セルに"Hello Excel"と入力してください」💡 使用例
基本的な操作
新しいExcelファイルを作成
「C:/reports/monthly.xlsxという新しいExcelファイルを作成して」データを入力
「Sheet1のA1からC3の範囲に、商品名、価格、在庫数の表を作成して」書式を設定
「A1セルを太字にして、背景色を黄色にして」数式で計算
「D列に合計を計算する数式を追加して」
より高度な使い方
詳細な使用例は サンプル集 を参照してください。
🔧 提供される機能
このMCPサーバーは以下のExcel操作ツールを提供します:
ワークブック・ワークシート操作
create_workbook- 新しいExcelワークブックを作成get_workbook_info- ワークブックの詳細情報を取得(シート一覧など)add_worksheet- 既存のワークブックにワークシートを追加
セル・範囲操作
set_cell_value- 単一のセルに値を設定get_cell_value- 単一のセルの値を取得set_range_values- 複数セルに一括でデータを設定(表形式データに便利)get_range_values- 複数セルのデータを一括取得
書式設定
format_cell- セルの書式を設定(フォント、背景色、罫線など)
数式・計算
add_formula- セルに数式を追加(SUM、AVERAGEなど)
データ操作
find_data- ワークシート内で特定のデータを検索
出力
export_to_csv- ワークシートをCSVファイルにエクスポート
詳細は ツール詳細ガイド を参照してください。
🛠️ トラブルシューティング
問題が発生した場合は、トラブルシューティングガイド を確認してください。
📄 ライセンス
ISC
開発者向け情報
開発環境のセットアップ
開発モードで実行:
npm run devプロジェクト構造
プロジェクト構造
言語: TypeScript
ランタイム: Node.js
MCP SDK: @modelcontextprotocol/sdk
Excel ライブラリ: ExcelJS
スキーマ検証: Zod
デバッグ
VS Codeでのデバッグ設定は .vscode/mcp.json に含まれています。
Available Tools
11 toolsadd_formulaC
セルに数式を追加します
| Name | Required | Description | Default |
|---|---|---|---|
| cell | Yes | セル位置(例: A1) | |
| filePath | Yes | Excelファイルのパス | |
| formula | Yes | 数式(=SUM(A1:A10)など、=で始まる) | |
| sheetName | Yes | ワークシート名 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the action ('adds a formula') but doesn't cover critical aspects like whether this overwrites existing cell content, requires file permissions, has side effects, or returns any confirmation. For a mutation tool with zero annotation coverage, this is a significant gap.
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, efficient sentence in Japanese that directly states the tool's function. It's front-loaded with the core action and has no wasted words, making it highly concise and well-structured for quick comprehension.
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 complexity (a mutation operation with 4 required parameters), lack of annotations, and no output schema, the description is incomplete. It doesn't address behavioral traits, usage context, or what happens post-execution (e.g., success confirmation or error handling), leaving the agent under-informed.
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 description adds no parameter semantics beyond what the input schema provides. Since schema description coverage is 100% (each parameter has a clear description in Japanese), the baseline is 3. The tool description doesn't compensate with additional context like formula syntax examples or file path requirements.
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 'セルに数式を追加します' (Adds a formula to a cell) clearly states the verb ('adds') and resource ('formula to a cell'), making the tool's purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'set_cell_value' or 'set_range_values', which might also modify cell content, so it's not a perfect 5.
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. It doesn't mention prerequisites (e.g., file must exist), exclusions, or compare it to siblings like 'set_cell_value' for non-formula content. This leaves the agent guessing about appropriate contexts.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
add_worksheetC
既存のワークブックにワークシートを追加します
| Name | Required | Description | Default |
|---|---|---|---|
| filePath | Yes | 対象のExcelファイルの絶対パス。既存のファイルである必要があります | |
| sheetName | Yes | 作成するワークシート名。英数字、日本語、アンダースコア、ハイフンが使用可能です |
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 states this is a write operation ('adds') but doesn't mention permission requirements, whether the operation is reversible, what happens if a sheet with the same name exists, or any rate limits. For a mutation tool with zero annotation coverage, this leaves significant behavioral gaps.
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, efficient sentence in Japanese that directly states the tool's purpose. It's appropriately sized for a simple tool, though it could be slightly more front-loaded with key constraints. No wasted words or unnecessary elaboration.
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 mutation tool with no annotations and no output schema, the description is insufficiently complete. It doesn't explain what the tool returns, error conditions, or important behavioral aspects like what happens when adding duplicate sheet names. The description should provide more context given the tool's complexity as a write operation.
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 the schema already fully documents both parameters with good descriptions. The tool description adds no additional parameter information beyond what's in the schema. According to scoring rules, when schema_description_coverage is high (>80%), the baseline is 3 even with no param info in the description.
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 ('adds a worksheet') and target resource ('to an existing workbook'), providing a specific verb+resource combination. However, it doesn't explicitly differentiate from sibling tools like 'create_workbook' (which creates new workbooks) or 'get_workbook_info' (which reads workbook information), though the distinction is somewhat implied by the 'existing workbook' context.
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 minimal guidance - it mentions 'existing workbook' which implies when to use this vs. 'create_workbook', but doesn't offer explicit when/when-not instructions or mention alternatives like modifying existing worksheets. No prerequisites or constraints beyond the 'existing workbook' requirement are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_workbookA
新しいExcelワークブックを作成します。注意: 作成されるワークブックは空でシートを含みません。データを操作する前にadd_worksheetツールでワークシートを追加する必要があります。
| Name | Required | Description | Default |
|---|---|---|---|
| filePath | Yes | 作成するExcelファイルの絶対パス。例: C:/Users/Username/Documents/report.xlsx。ファイル拡張子は.xlsxである必要があります。注意: 作成されるワークブックは空でシートを含みません |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden and does well by disclosing critical behavioral traits: the workbook is created empty without sheets, and users must use add_worksheet tool before data manipulation. This provides important context about the tool's limitations and required follow-up actions.
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 perfectly concise with two sentences that each earn their place: the first states the core purpose, the second provides crucial behavioral context. No wasted words, front-loaded with the main 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?
For a creation tool with no annotations and no output schema, the description does well by explaining the workbook's empty state and required next steps. However, it doesn't mention what happens if the file already exists at the path, or what the tool returns (success/failure indication), leaving some gaps in completeness.
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 the schema already fully documents the single filePath parameter. The description doesn't add any parameter-specific information beyond what's in the schema, maintaining the baseline score of 3 when schema does the heavy lifting.
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 specific action ('新しいExcelワークブックを作成します' - creates a new Excel workbook) and resource (Excel workbook), distinguishing it from siblings like add_worksheet or get_workbook_info by focusing on creation rather than modification or retrieval.
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 clear context about when to use this tool (to create a new Excel workbook) and includes important behavioral notes about the workbook being empty without sheets, but doesn't explicitly state when NOT to use it or name specific alternatives among the sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
export_to_csvC
ワークシートをCSVファイルにエクスポートします
| Name | Required | Description | Default |
|---|---|---|---|
| csvPath | Yes | CSVファイルの出力パス | |
| filePath | Yes | Excelファイルのパス(既存ファイル) | |
| sheetName | Yes | ワークシート名(既存シート) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the export action but doesn't describe traits like whether it overwrites existing CSV files, requires specific file permissions, handles errors, or returns any output (e.g., success confirmation or file path). This leaves significant gaps for a mutation tool that creates files.
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, efficient sentence in Japanese that directly states the tool's purpose without any wasted words. It's appropriately sized and front-loaded, making it easy to understand at a glance.
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 has 3 parameters, no annotations, and no output schema, the description is incomplete. It doesn't explain behavioral aspects like file handling, error cases, or what happens post-export (e.g., if it returns a confirmation). For a tool that performs file operations, this lack of context 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?
The schema description coverage is 100%, with clear parameter descriptions in Japanese (e.g., 'CSVファイルの出力パス' for csvPath). The description adds no additional parameter meaning beyond the schema, so it meets the baseline of 3 where the schema does the heavy lifting without compensating for gaps.
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 ('エクスポートします' - exports) and resource ('ワークシートをCSVファイルに' - worksheet to CSV file), providing a specific verb+resource combination. However, it doesn't differentiate from sibling tools like 'get_range_values' or 'get_workbook_info' that might also retrieve data, though those don't explicitly export to CSV.
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. It doesn't mention prerequisites (e.g., needing an existing Excel file), exclusions, or compare to siblings like 'get_range_values' for data retrieval without export. The description is standalone with no contextual usage hints.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_dataC
ワークシート内で指定された値を検索します
| Name | Required | Description | Default |
|---|---|---|---|
| filePath | Yes | Excelファイルのパス | |
| searchValue | Yes | 検索する値 | |
| sheetName | Yes | ワークシート名 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool searches for values but doesn't describe what happens when multiple matches are found, whether the search is case-sensitive, if it returns cell locations or just values, or any error conditions. For a search operation with zero annotation coverage, this leaves significant behavioral questions unanswered.
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 extremely concise - a single Japanese sentence that directly states the tool's function. There's no wasted language or unnecessary elaboration. While it could benefit from more detail, what's present is perfectly efficient and front-loaded with the core purpose.
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 that this is a search tool with no annotations and no output schema, the description is insufficiently complete. It doesn't explain what the tool returns (locations, values, both?), how results are formatted, whether there are limitations on search scope, or what happens with no matches. For a tool that presumably returns search results, the lack of output information 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 description coverage is 100%, so the schema already documents all three parameters thoroughly. The description doesn't add any additional meaning beyond what's in the schema - it mentions searching for specified values in a worksheet, which aligns with but doesn't expand upon the parameter descriptions. With complete schema coverage, the baseline score 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?
The description states the tool's purpose as searching for specified values within a worksheet, which is clear but generic. It doesn't distinguish this from similar sibling tools like 'get_cell_value' or 'get_range_values' that also retrieve data from worksheets. The description is accurate but lacks specificity about what makes this tool unique.
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. With sibling tools like 'get_cell_value' (for single cells) and 'get_range_values' (for ranges), the description doesn't explain that this tool searches across the entire worksheet or how it differs from those options. There's no mention of prerequisites, limitations, or typical use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
format_cellC
セルの書式(フォント、塗りつぶし、罫線)を設定します
| Name | Required | Description | Default |
|---|---|---|---|
| cell | Yes | セル位置(例: A1) | |
| filePath | Yes | Excelファイルのパス | |
| format | Yes | セルの書式設定 | |
| sheetName | Yes | ワークシート名 |
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. While '設定します' implies a write/mutation operation, the description doesn't clarify whether this overwrites existing formatting, requires file write permissions, has side effects on other cells, or provides any confirmation/error response. For a mutation tool with complex nested parameters, this leaves significant behavioral gaps.
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, efficient Japanese sentence that directly states the tool's purpose with zero wasted words. It's appropriately sized for a formatting tool and front-loads the essential information (what formatting aspects are supported). Every word earns its place.
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 mutation tool with complex nested parameters (4 params with deep nesting) and no annotations or output schema, the description is insufficient. It doesn't address behavioral aspects like error conditions, permission requirements, or what happens on success/failure. The agent must rely entirely on the input schema for operational details, which is risky for a write operation.
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 the schema already documents all 4 parameters thoroughly. The description mentions the three formatting aspects (font, fill, border) which map to the 'format' parameter's structure, but adds no additional semantic context beyond what's in the schema descriptions. This meets the baseline for high schema 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 action ('設定します' - sets/configure) and the resource ('セルの書式' - cell formatting), specifying the three formatting aspects (font, fill, border). It distinguishes this tool from sibling tools like 'set_cell_value' or 'set_range_values' which handle content rather than formatting. However, it doesn't explicitly differentiate from potential formatting alternatives that might exist.
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. It doesn't mention prerequisites (like needing an existing workbook), compare with sibling tools like 'set_range_values' for bulk formatting, or indicate when formatting vs content-setting tools are appropriate. The agent must infer usage from the tool name and parameters alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_cell_valueC
指定されたセルの値を取得します
| Name | Required | Description | Default |
|---|---|---|---|
| cell | Yes | セル位置。A1形式で指定(例: A1, B2, AA10) | |
| filePath | Yes | 対象のExcelファイルの絶対パス | |
| sheetName | Yes | 対象のワークシート名 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool retrieves a cell value, implying a read-only operation, but doesn't cover critical aspects like error handling (e.g., what happens if the file doesn't exist), performance (e.g., speed or limitations), or output format (e.g., data type returned). For a tool with no annotation coverage, this leaves significant gaps in understanding its behavior.
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 extremely concise and front-loaded: a single sentence that directly states the tool's purpose. There is zero waste or redundancy, making it easy to parse quickly. This efficiency is ideal for a simple tool, though it may lack depth for more complex scenarios.
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 complexity (3 required parameters, no output schema, and no annotations), the description is incomplete. It doesn't explain the return value (e.g., what data type is returned, such as string or number), error conditions, or how it interacts with sibling tools. For a read operation in a spreadsheet context, more detail on behavior and output would be necessary for an agent to use it effectively.
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 description adds no parameter semantics beyond what the input schema provides. The schema has 100% description coverage, with clear explanations for 'cell' (cell position in A1 format), 'filePath' (absolute path to Excel file), and 'sheetName' (worksheet name). Since the schema does the heavy lifting, the baseline score of 3 is appropriate, as the description doesn't compensate with additional context like examples or constraints.
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's purpose: '指定されたセルの値を取得します' (Get the value of the specified cell). It uses a specific verb ('取得します' - get/retrieve) and resource ('セルの値' - cell value), making the action clear. However, it doesn't explicitly differentiate from sibling tools like 'get_range_values' or 'set_cell_value', which would require more specific language about scope or operation type.
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. It doesn't mention sibling tools like 'get_range_values' (for multiple cells) or 'set_cell_value' (for writing), nor does it specify prerequisites such as needing an existing Excel file. Without this context, an agent might struggle to choose between similar tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_range_valuesC
指定された範囲のデータを取得します
| Name | Required | Description | Default |
|---|---|---|---|
| filePath | Yes | 対象のExcelファイルの絶対パス | |
| range | Yes | 取得する範囲。A1:C3形式で指定(例: A1:C10, B2:D5) | |
| sheetName | Yes | 対象のワークシート名 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden but only states it retrieves data. It doesn't disclose behavioral traits such as read-only nature (implied but not stated), error handling, performance, or output format. For a tool with 3 parameters and no annotations, this is a significant gap.
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, efficient sentence in Japanese with no wasted words. It's appropriately sized and front-loaded, though it could be more informative. Every sentence earns its place, but it's under-specified rather than concise.
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 3 parameters, no annotations, and no output schema, the description is incomplete. It doesn't explain the Excel context, return values, or error conditions. For a data retrieval tool in a sibling-rich environment, more context is needed to be fully helpful.
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 the schema fully documents parameters (filePath, range, sheetName). The description adds no meaning beyond what the schema provides, as it doesn't explain parameter interactions or usage examples. Baseline 3 is appropriate when schema does the heavy lifting.
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 '指定された範囲のデータを取得します' (Retrieves data from a specified range) states the basic purpose with a verb (取得/retrieves) and resource (データ/data), but it's vague about the context (Excel files) and doesn't distinguish from siblings like get_cell_value or find_data. It's adequate but lacks specificity.
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. The description doesn't mention Excel context, prerequisites, or compare to siblings like get_cell_value (single cell) or find_data (search-based). Usage is implied but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_workbook_infoC
Excelワークブックの詳細情報を取得します(シート一覧、メタデータ等)
| Name | Required | Description | Default |
|---|---|---|---|
| filePath | Yes | 情報を取得するExcelファイルの絶対パス |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states this is a read operation ('取得します'), but doesn't disclose important behavioral traits: whether it requires specific file permissions, what happens with invalid file paths, if it works with password-protected files, what metadata fields are returned, or any rate limits. For a file access tool with zero annotation coverage, this leaves significant gaps.
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, efficient Japanese sentence that directly states the purpose with examples. It's appropriately sized for a simple tool, though it could be slightly more structured by separating purpose from examples. No wasted words or redundancy.
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 this is a file access tool with no annotations and no output schema, the description is incomplete. It doesn't explain what '詳細情報' (detailed information) includes beyond the examples, nor the return format. For a tool that presumably returns structured workbook metadata, more context about output expectations would help the agent 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 description coverage is 100%, with the single parameter 'filePath' well-described in the schema as '情報を取得するExcelファイルの絶対パス' (absolute path of Excel file to get information from). The description adds no additional parameter context beyond what the schema provides, so it meets the baseline for high schema coverage without compensating value.
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/retrieve) and resource ('Excelワークブックの詳細情報' - Excel workbook detailed information), with specific examples of what information is included ('シート一覧、メタデータ等' - sheet list, metadata, etc.). It distinguishes from siblings like get_cell_value or get_range_values by focusing on workbook-level metadata rather than cell/range data. However, it doesn't explicitly differentiate from other potential metadata tools (none exist in siblings).
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. It doesn't mention when this tool is appropriate versus get_cell_value or get_range_values for different information needs, nor does it specify prerequisites like file accessibility or format requirements. The agent must infer usage from the purpose alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
set_cell_valueC
指定されたセルに値を設定します
| Name | Required | Description | Default |
|---|---|---|---|
| cell | Yes | セル位置。A1形式で指定(例: A1, B2, AA10, Z99)。範囲指定(A1:B2)は不可 | |
| filePath | Yes | 対象のExcelファイルの絶対パス | |
| sheetName | Yes | 対象のワークシート名。既存のワークシート名を指定してください | |
| value | Yes | セルに設定する値。文字列、数値、真偽値のいずれか |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool sets a value but doesn't mention whether this is a write operation, if it overwrites existing data, what permissions are needed, or error handling. This is inadequate for a mutation tool with zero annotation coverage.
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, efficient sentence in Japanese that directly states the tool's purpose without any fluff. It's appropriately sized and front-loaded, with every word earning its place.
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 this is a mutation tool with no annotations and no output schema, the description is incomplete. It doesn't cover behavioral aspects like side effects, error cases, or return values, leaving significant gaps for the agent to understand the tool's full context.
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 schema description coverage is 100%, so the schema already documents all four parameters thoroughly. The description adds no additional meaning beyond what the schema provides, such as examples or constraints, meeting the baseline for high schema 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 action ('set a value') and the target ('specified cell'), which is a specific verb+resource combination. However, it doesn't explicitly differentiate from sibling tools like 'set_range_values' or 'format_cell', which would require a 5.
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 like 'set_range_values' for multiple cells or 'add_formula' for formulas. It lacks context about prerequisites or exclusions, leaving the agent to infer usage from the schema alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
set_range_valuesC
指定された範囲に2次元配列のデータを設定します
| Name | Required | Description | Default |
|---|---|---|---|
| filePath | Yes | 対象のExcelファイルの絶対パス | |
| sheetName | Yes | 対象のワークシート名 | |
| startCell | Yes | データ入力を開始するセル位置(例: A1)。ここから右下方向にデータが入力されます | |
| values | Yes | 2次元配列のデータ。外側の配列が行、内側の配列が列を表します。例: [["商品名", "価格"], ["商品A", 1000]] |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but only states what the tool does, not behavioral traits. It doesn't disclose whether this overwrites existing data, requires file permissions, has file size limits, or what happens on success/failure. For a write operation with zero annotation coverage, this is insufficient.
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, zero waste. Every word contributes to the core purpose. The description is appropriately sized and front-loaded with the essential 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?
For a write operation with 4 parameters, no annotations, and no output schema, the description is incomplete. It doesn't explain what happens to existing data in the range, error conditions, or return values. The schema covers parameter documentation well, but behavioral context is missing.
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%, providing good documentation for all 4 parameters. The description adds minimal value beyond the schema - it mentions '2次元配列のデータ' which aligns with the values parameter schema, but doesn't provide additional context about parameter interactions or edge cases.
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 ('設定します' - sets) and resource ('2次元配列のデータ' - 2D array data) with the target ('指定された範囲' - specified range). It distinguishes from siblings like set_cell_value (single cell) and get_range_values (read operation), but doesn't explicitly mention Excel/worksheet context which is only in the schema.
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 like set_cell_value (for single cells) or add_worksheet (for creating sheets). The description implies it's for writing 2D arrays to ranges, but doesn't provide explicit comparison or exclusion criteria.
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. Dates show when Glama detected each change.
11 tool updates
v1.0.0- First observed
add_formula - First observed
add_worksheet - First observed
create_workbook - First observed
export_to_csv - First observed
find_data - First observed
format_cell - First observed
get_cell_value - First observed
get_range_values - First observed
get_workbook_info - First observed
set_cell_value - First observed
set_range_values
TDQS
Each tool has a clearly distinct purpose targeting specific Excel operations: formula management, worksheet/creation, data export, search, formatting, value retrieval/setting, and workbook metadata. There is no overlap or ambiguity between tools like 'get_cell_value' vs 'get_range_values' or 'set_cell_value' vs 'set_range_values'.
All tools follow a consistent verb_noun naming pattern (e.g., 'add_formula', 'create_workbook', 'export_to_csv', 'format_cell', 'get_cell_value'). The pattern is uniformly applied across all 11 tools with no deviations in style or convention.
With 11 tools, this server is well-scoped for Excel operations, covering workbook/worksheet management, data manipulation, formatting, export, and search. Each tool earns its place without feeling excessive or insufficient for the domain.
The toolset provides strong coverage for core Excel workflows: creation, data CRUD (get/set cell/range), formatting, formulas, export, and search. Minor gaps include lack of tools for deleting worksheets or workbooks, and advanced features like charts or pivot tables, but agents can work around these with the available tools.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
A Model Context Protocol server for Wix AI tools
MCP server connecting AI agents to 100+ apps (Gmail, Slack, Notion, GitHub) via one-click OAuth.
Model Context Protocol server for the Apideck Unified API. Connect any MCP-compatible agent framework to 100+ accounting systems, HRIS platforms, file storage providers, and more through one integration. More information https://www.apideck.com/mcp-server
Related MCP Servers
- AlicenseAqualityDmaintenanceA Model Context Protocol server that enables AI assistants to read from and write to Microsoft Excel files, supporting formats like xlsx, xlsm, xltx, and xltm.612,6541,016MIT
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that enables AI agents to create, read, and modify Excel workbooks without requiring Microsoft Excel installation.MIT
- AlicenseAqualityDmaintenanceA Model Context Protocol server designed for AI assistants to directly process spreadsheet files, enabling them to read, display, modify, and save various table formats like CSV and Excel.33MIT
- 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
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/SuperPyonchiX/excel_mcp_server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server