MCP Excel Reader
MCP Excelリーダー
Excelファイルの自動チャンク化とページ区切り機能を備えたモデルコンテキストプロトコル(MCP)サーバーです。SheetJSとTypeScriptで構築されたこのツールは、大規模なExcelファイルを管理しやすいチャンクに自動的に分割することで、効率的に処理するのに役立ちます。
特徴
📊 Excel ファイル (.xlsx、.xls) を自動サイズ制限付きで読み取ります
🔄 大規模データセットの自動チャンク化
📑 シートの選択と行のページネーション
📅 適切な日付処理
⚡ 大きなファイルに最適化
🛡️ エラー処理と検証
Related MCP server: Excel MCP Server
インストール
Smithery経由でインストール
Smithery経由で Claude Desktop 用の Excel Reader を自動的にインストールするには:
npx -y @smithery/cli install @ArchimedesCrypto/excel-reader-mcp-chunked --client claudeMCPサーバーとして
グローバルにインストール:
npm install -g @archimdescrypto/excel-readerMCP 設定ファイル (通常は
~/.config/claude/settings.jsonまたは同等の場所) に以下を追加します。
{
"mcpServers": {
"excel-reader": {
"command": "excel-reader",
"env": {}
}
}
}開発のために
リポジトリをクローンします。
git clone https://github.com/ArchimdesCrypto/mcp-excel-reader.git
cd mcp-excel-reader依存関係をインストールします:
npm installプロジェクトをビルドします。
npm run build使用法
使用法
Excel リーダーは、次のパラメータを持つ単一のツールread_excelを提供します。
interface ReadExcelArgs {
filePath: string; // Path to Excel file
sheetName?: string; // Optional sheet name (defaults to first sheet)
startRow?: number; // Optional starting row for pagination
maxRows?: number; // Optional maximum rows to read
}
// Response format
interface ExcelResponse {
fileName: string;
totalSheets: number;
currentSheet: {
name: string;
totalRows: number;
totalColumns: number;
chunk: {
rowStart: number;
rowEnd: number;
columns: string[];
data: Record<string, any>[];
};
hasMore: boolean;
nextChunk?: {
rowStart: number;
columns: string[];
};
};
}基本的な使い方
Claude または他の MCP 互換 AI と併用する場合:
Read the Excel file at path/to/file.xlsxAI はツールを使用してファイルを読み取り、大きなファイルのチャンク化を自動的に処理します。
特徴
自動チャンク化
大きなファイルを管理しやすいサイズに自動的に分割します
デフォルトのチャンクサイズは100KB
ページ区切りのメタデータを提供する
シートの選択
特定のシートを名前で読み取る
指定されていない場合は最初のシートがデフォルトになります
行のページネーション
startRow と maxRows を使用して読み取る行を制御します
連続読み取りのための次のチャンク情報を取得する
エラー処理
ファイルの存在と形式を検証します
明確なエラーメッセージを提供する
不正な Excel ファイルを適切に処理します
SheetJS 機能による拡張
Excel リーダーは SheetJS 上に構築されており、その強力な機能で拡張できます。
利用可能な拡張機能
数式の取り扱い
// Enable formula parsing const wb = XLSX.read(data, { cellFormula: true, cellNF: true });セルの書式設定
// Access cell styles and formatting const styles = Object.keys(worksheet) .filter(key => key[0] !== '!') .map(key => ({ cell: key, style: worksheet[key].s }));データ検証
// Access data validation rules const validation = worksheet['!dataValidation'];シートの特徴
結合セル:
worksheet['!merges']非表示の行/列:
worksheet['!rows']、worksheet['!cols']シート保護:
worksheet['!protect']
その他の機能と詳細なドキュメントについては、 SheetJS ドキュメントをご覧ください。
貢献
リポジトリをフォークする
機能ブランチを作成します(
git checkout -b feature/amazing-feature)変更をコミットします (
git commit -m 'Add some amazing feature')ブランチにプッシュする (
git push origin feature/amazing-feature)プルリクエストを開く
ライセンス
このプロジェクトは MIT ライセンスに基づいてライセンスされています - 詳細についてはLICENSEファイルを参照してください。
謝辞
SheetJSで構築
モデルコンテキストプロトコルエコシステムの一部
Available Tools
1 toolread_excelB
Read an Excel file and return its contents as structured data
| Name | Required | Description | Default |
|---|---|---|---|
| filePath | Yes | Path to the Excel file to read | |
| sheetName | No | Name of the sheet to read (optional) | |
| startRow | No | Starting row index (optional) | |
| maxRows | No | Maximum number of rows to read (optional) |
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 mentions reading and returning data, implying a read-only operation, but fails to address critical aspects like error handling (e.g., what happens if the file doesn't exist or is corrupted), performance considerations, or format specifics of the returned structured 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, efficient sentence that directly states the tool's purpose without any wasted words. It is appropriately sized and front-loaded with the core functionality.
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 moderate complexity (4 parameters, no output schema, no annotations), the description is minimally adequate. It covers the basic purpose but lacks details on behavioral traits and output format, which are important for a data-reading tool without structured output documentation.
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 input schema already documents all parameters thoroughly. The description adds no additional meaning beyond what the schema provides, such as examples or usage tips for the parameters, 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 verb ('Read') and resource ('an Excel file') with the outcome ('return its contents as structured data'). It's specific about what the tool does, but since there are no sibling tools mentioned, it cannot demonstrate differentiation from alternatives.
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, prerequisites, or exclusions. It simply states what the tool does without context for usage decisions.
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.
1 tool update
- First observed
read_excel
TDQS
Scored across 1 tool
With only one tool, there is no possibility of ambiguity or overlap between tools. The single tool 'read_excel' has a clear and distinct purpose that cannot be confused with any other tool in the set.
The single tool name 'read_excel' follows a clear verb_noun pattern. Since there is only one tool, consistency is inherently perfect with no deviations or mixed conventions to evaluate.
A single tool is generally too few for a server named 'MCP Excel Reader', as it suggests a limited scope that may not support typical Excel-related workflows like writing, updating, or querying data. This feels thin for the apparent domain.
The tool surface is severely incomplete for an Excel reader domain. While reading is covered, there are significant gaps such as writing, editing, formatting, or analyzing Excel files, which will likely cause agent failures in broader tasks.
Maintenance
Related MCP Connectors
GrapeCity Software MCP for GcExcel docs, examples, and product assistance.
Query, join, profile, clean and convert CSV/JSON/Parquet with server-side DuckDB over MCP.
Governed data discovery, exact queries, decisions, simulations, and runtime utilities over MCP.
MCP server for querying and analyzing data from ad platforms, analytics tools, and spreadsheets
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables reading and searching Excel files through MCP-compatible clients. Provides tools to retrieve workbook metadata, read sheet contents, and search across all sheets using absolute file paths.1MIT
- AlicenseNot gradedqualityDmaintenanceEnables reading and writing Excel files (text, formulas, and images on Windows) via MCP tools with pagination support.3MIT
- AlicenseNot gradedqualityDmaintenanceMCP server for reading and writing .xls (Excel 97-2003) files, enabling data manipulation, sheet listing, and metadata retrieval.MIT
- AlicenseAqualityCmaintenanceMCP server for reading and inspecting local Excel files (.xlsx, .xlsm, .xls, .xlsb, .ods) with tools for inspecting metadata, reading ranges, and profiling structure.35 npmMIT