【MCP】ExcelReadMCP - AIアシスタントでExcelファイルを直接読み取り・検索できるツール
記念すべき初投稿ですが、すさまじく実用的なツールのお話です。
最近になってようやくExcelのMCPがいくつか出てきましたが、実際にこのツールを開発したのは5月ごろなので恐らく最速だったと思っています。
(記事にするという意識がなかったので割とデカ目の負け惜しみ)
この記事はこんな人向け
- CursorやGitHub CopilotなどのMCP対応ツールを使っている人
- ExcelファイルをAIツールでもそのまま扱いたい人
レガシーシステムのExcel課題を解決!
特にこんな悩みを持っている人にオススメ:
「レガシーなプロジェクトでAIを導入しても、仕様書やデータがExcelばっかりでAIとの相性が悪くて困ってる...。」
「MarkDownに起こすにもスクショを貼りまくるわけにはいかないし、そもそも直接読めればこんな手間かからないのに!」
ExcelファイルをそのままAIに読み込ませて、データ分析やレポート作成を効率化したい開発者必見です。
ExcelをAIで直接処理!MCP対応のExcel読み取りツール
ExcelReadMCPは、Model Context Protocol(MCP) 対応のAIアシスタント(Cursor、GitHub Copilotなど)と連携して、Excelファイルを直接読み取り・検索できる専用ツールです。Excelファイルのデータ取得と検索に特化し、AIによるデータ分析やレポート作成を効率的に実現します。
GitHub:https://github.com/OgumaruSuisan/ExcelReadMCP
必要な環境
- Python 3.7以上
-
必要なライブラリ:
-
pandas>=2.0- データ処理用 -
openpyxl>=3.1- Excelファイル読み込み用 -
mcp>=1.18.0- Model Context Protocol用
-
セットアップ手順
1. リポジトリのクローン
GitHubからExcelReadMCPをクローンします。
git clone https://github.com/OgumaruSuisan/ExcelReadMCP.git
cd ExcelReadMCP
または、ZIPファイルをダウンロードして適当なフォルダに展開しましょう。
# 例: C:\Projects\ExcelReadMCP に展開した場合
cd C:\Projects\ExcelReadMCP
2. 仮想環境の準備
python -m venv .venv
.venv\Scripts\activate
pip install -r requirements.txt
3. 設定ファイルの編集
mcp_config.jsonを開いて、<absolute-path-to-ExcelReadMCP>の部分を実際のパスに書き換えてください。
ExcelReadMCP/mcp_config.json
{
"mcpServers": {
"excel-read-tools": {
"command": "C:/Projects/ExcelReadMCP/start_mcp_server.bat",
"transport": "stdio",
"cwd": "C:/Projects/ExcelReadMCP"
}
}
}
4. Cursorで使う場合
- 上記の設定ファイルをCursorのMCP設定ファイル(
%USERPROFILE%\.cursor\mcp.json)に追加 - Cursorを再起動して、Settings > Features > MCPに
excel-read-toolsが表示されるか確認 - Composerでこんな感じでテスト:
C:\path\to\workbook.xlsx のシート一覧を取得して
5. GitHub Copilotで使う場合
-
mcp_config.jsonを%APPDATA%\GitHub Copilot\mcp.jsonにコピー(ファイルがなければ新規作成) - VS Codeを再起動して、Copilot Chatのツール一覧に
excel-read-toolsが表示されるか確認 - Copilot Chatでこんな感じでテスト:
C:\path\to\workbook.xlsx の内容を確認して
それぞれのツールと使い方
1. excel_read_info - Excelファイルの構造分析ツール
Excelファイルの基本情報(シート名、ファイルサイズ、列数など)を取得して、ファイル構造を素早く把握できます。
必要なパラメータ:
-
file_path(必須):Excelファイルの絶対パス
使い方:
C:\data\sales_report.xlsx の基本情報を取得して
出力結果例:
{
"success": true,
"data": {
"file_path": "C:/data/sales_report.xlsx",
"file_size": 245760,
"sheet_count": 3,
"sheet_names": ["Sheet1", "Summary", "Data"]
}
}
2. excel_read_range - ExcelシートデータをJSON変換ツール
指定したシート(または先頭シート)の内容をJSON形式で取得し、データ分析や加工に活用できます。
必要なパラメータ:
-
file_path(必須):Excelファイルの絶対パス -
sheet_name(オプション):シート名(指定なしの場合は先頭シート) -
range_spec(オプション):範囲指定(例: "A1:C10")※現在は実装されていません
使い方:
C:\data\sales_report.xlsx の Summary シートの内容を取得して
出力結果例:
{
"success": true,
"data": {
"sheet_name": "Summary",
"shape": [10, 5],
"columns": ["Month", "Sales", "Profit", "Target", "Achievement"],
"data": [
{
"Month": "2024-01",
"Sales": 150000,
"Profit": 30000,
"Target": 140000,
"Achievement": 1.07
}
]
}
}
3. excel_read_all_sheets - Excel全シート一括読み込みツール
ワークブック内の全シートを一括で読み込み、データが多すぎる場合は行数を制限して効率的に処理できます。
必要なパラメータ:
-
file_path(必須):Excelファイルの絶対パス -
max_rows_per_sheet(オプション):シートごとの最大行数(デフォルト: 1000) -
include_empty_sheets(オプション):空シートを含むかどうか(デフォルト: false)
使い方:
C:\data\financial_report.xlsx の全シートを最大100行で取得して
4. excel_quick_overview - Excelファイル概要プレビューツール
ワークブックの概要と各シートのサンプルデータを取得して、ファイル内容を素早く把握できます。
必要なパラメータ:
-
file_path(必須):Excelファイルの絶対パス -
sample_rows(オプション):サンプル行数(デフォルト: 5)
使い方:
C:\data\customer_data.xlsx の概要を5行サンプルで確認して
5. excel_search - Excel全文検索ツール
ワークブック全体または指定シートから文字列を高速検索し、必要なデータを効率的に見つけ出せます。
必要なパラメータ:
-
file_path(必須):Excelファイルの絶対パス -
search_term(必須):検索文字列(大文字小文字を区別しない) -
sheet_name(オプション):検索対象シート(指定なしの場合は全シート)
使い方:
C:\data\products.xlsx から "スマートフォン" を検索して
出力結果例:
{
"success": true,
"data": {
"search_term": "スマートフォン",
"total_matches": 15,
"matches": [
{
"sheet_name": "Products",
"address": "B5",
"row": 5,
"column": 2,
"value": "iPhone 15 Pro",
"column_name": "ProductName"
}
]
}
}
注意点・制限事項
絶対パスのみ対応:相対パスを指定するとエラーになります
エラー時の対応
主なエラーケース:
- ファイルが存在しない場合:
"File not found: C:/path/to/file.xlsx" - サポートされていない形式の場合:
"Unsupported file format: .csv"
これらのエラーはすべて適切に処理されて、JSON形式で結果が返されます。
{
"success": false,
"error": "Please provide an absolute path to the Excel file."
}
活用例
データ分析の流れ
-
Excelファイルの構造確認:
excel_read_infoでシート構成を把握 -
内容プレビュー:
excel_quick_overviewでサンプルデータを確認 -
詳細データ取得:
excel_read_rangeで必要なシートを抽出 -
キーワード検索:
excel_searchで特定データを効率的に検索
AIアシスタントとの連携
- CursorやGitHub Copilotから直接Excelデータを取得できる
- データ分析をAIに依頼してより細部まで分析
- 複数のシートを効率的に処理してレポート作成を自動化
実務活用例:
- 営業データの集計・分析
- 財務レポートの自動生成
- 市場調査データの処理
- カスタマーサポートログの分析
【まとめ】MCPでExcelをAIに直接連携!開発効率を飛躍的に向上
ExcelReadMCPを活用すれば、レガシーシステムのExcel課題を根本的に解決できます。AIアシスタント(Cursor、GitHub Copilot)と連携して、Excelファイルを直接読み取り・検索・分析が可能になります。
導入メリット
- 開発生産性向上:ExcelファイルをそのままAIに渡せて、データ分析やレポート作成が劇的に効率化
- レガシーシステム対応:既存のExcelベースのワークフローを維持しつつ、AIパワーを活用可能
大規模なデータ分析プロジェクトでは、excel_quick_overviewで全体構造を把握してから詳細な読み込みを行うと効率的です。
開発現場でのデータ分析、報告書作成、調査業務などで活躍します。特に、AIアシスタントを活用したデータ処理ワークフローを構築したい場合に有効です。
このツールを活用することで、ExcelデータをAIアシスタントに安全に連携し、より高度なデータ分析やレポート作成が可能になります。
AIツールでのExcelファイルの処理をもっと楽にしたいなら、いますぐExcelReadMCPを試してみてください!
参考リンク
ちなみに
読み込みだけでなく作成も機能としては実装したのですが、如何せん文字化けやそもそものセル結合、デザインみたいなところが壊滅的で一時断念中です。
要望あればがんばって作ります...
それと、Powerpoint読み込みも同じ要領でできますが画像読み込みが大変なのでMCP化はしておらず...