😗

【Claude Codeチャレンジ日誌6】Claude CodeでMCPを使う

に公開

今回は、Claude CodeでExcel操作やWebブラウザ操作を可能にするMCPサーバーとの連携にチャレンジしてみました。

※色々調べながらまとめていますが、完全に正しい理解か自信がない部分もあるため、「それ間違ってるよ!」といった点があればコメントいただけると助かります。

1.Excel MCPとPlaywright MCPの導入

Excel MCPサーバーの導入

Excel MCP Serverは、Claude CodeでExcelファイルを操作するためのMCP(Model Context Protocol)サーバーです。

プロジェクトディレクトリの準備

mkdir excel-mcp-tutorial
cd excel-mcp-tutorial

Python仮想環境の作成

python3 -m venv venv

仮想環境のアクティベート

source venv/bin/activate

必要なPythonパッケージのインストール

pip install pandas fastapi mcp uv

Excel MCP Serverのグローバルインストール

# npmでグローバルインストール
npm install -g excel-mcp-server

Claude CodeにMCPサーバーを登録

# Claude Codeに excel-server を登録
claude mcp add-json excel-server '{"name":"excel-server","command":"uvx","args":["excel-mcp-server","stdio"]}'

以下のコマンドで登録されていることを確認する:

claude mcp list

以下のように表示されればOK:

excel-server: excel-mcp-server stdio

動作確認

仮想環境をActivateした状態で以下のコマンドを実行:

npx excel-mcp-server --stdio

以下のように表示されてエラーが出なければOK:

正在启动Excel文件读取MCP服务器...
Python脚本路径: /home/sinfo/.nvm/versions/node/v24.1.0/lib/node_modules/excel-mcp-server/read_file_server.py

Claude Codeの起動

重要: 必ずPython仮想環境をアクティベートした状態で実行してください。

# 仮想環境がアクティベートされていることを確認
source venv/bin/activate && claude

Excel操作の例

Claude Codeが起動したら、以下のような指示でExcelファイルを操作できます:
以下の例では、excel-mcp-serverのページをリサーチして使い方をExcelファイルにまとめてもらいました。

以下のURLを検索して、excel-mcp-serverの使い方を初心者にもわかるようにまとめて、カレントディレクトリにExcelファイルを生成してください。
デザインはカラフルでおしゃれなExcelシートにして下さい。

https://github.com/haris-musa/excel-mcp-server

しばらくするとカレントディレクトリにExcel-MCP-Server-Tutorial.xlsxが生成されました。
ファイルを開くと以下のようないい感じのExcelファイルが自動生成されてる!

なかなかいいぞ!



Playwright MCPサーバーの導入

Playwright MCPサーバーを使うと、Claude CodeからWebブラウザの操作が可能になります。

※Playwright MCPサーバーはPythonの仮想環境がなくても動く。

# Playwright MCPサーバーをClaude Codeに登録
claude mcp add-json playwright '{"name":"playwright","command":"npx","args":["@playwright/mcp@latest"]}'

# Chromeブラウザをインストール(Playwright用)
npx playwright install chrome

インストール確認

claude mcp list

出力例:

playwright: npx @playwright/mcp@latest
excel-server: npx excel-mcp-server stdio

動作確認

claudeコマンドで起動した後、以下のように指示出しすると自動でブラウザを操作してくれます。

Chromeで今日の東京の天気を調べて。

以下のようにブラウザが自動起動して、検索して結果を出力してくれます。


ちなみに、以下のように実行すれば、画面上には何も表示されませんが、ブラウザ操作で天気を調査した結果をExcel生成することろまで全自動で実行してくれます。

source venv/bin/activate && claude -p "Chromeブラウザを操作して、今日(2025/6/24)の東京の天気をリサーチしたあとにExcelファイルに結果をまとめて。Excelシートはカラフルでおしゃれなデザインにしてください。"

以下のようなExcelファイルが自動生成されました。

2.MCPサーバーの削除方法

不要になったMCPサーバーは以下のコマンドで削除できます:

# Excel MCPサーバーを削除
claude mcp remove excel-server

3.設定ファイルの理解

Claude CodeのMCP設定は複数のファイルで管理されています。

1. グローバル設定ファイル

MCPサーバーの登録情報が保存される場所(※正確な場所は環境により異なる):

  • WSL環境: ~/.claude.json または ~/.claude/config.json
  • Windows: %USERPROFILE%\.claude\config.json

このファイルには、claude mcp add-jsonコマンドで追加したMCPサーバーの定義が保存されます。

2. プロジェクトごとの権限設定: settings.local.json

各プロジェクトのルートディレクトリに作成されるsettings.local.jsonには、MCPサーバーの各機能に対する権限設定が保存されます。

{
  "permissions": {
    "allow": [
      "mcp__excel-server__create_workbook",
      "mcp__excel-server__create_worksheet",
      "mcp__excel-server__write_data_to_excel",
      "mcp__excel-server__format_range",
      "mcp__excel-server__create_chart",
      "mcp__playwright__browser_navigate",
      "mcp__playwright__browser_type",
      "mcp__playwright__browser_click"
    ],
    "deny": []
  }
}

権限設定の意味

  • allow: Claude Codeが使用を許可されたMCP機能のリスト
  • deny: 使用を禁止する機能のリスト(セキュリティ上の理由で特定の機能を制限したい場合)

権限は以下の形式で記述されます:

mcp__[サーバー名]__[機能名]

3. プロジェクト設定: ~/.claude.json

~/.claude.jsonには、各プロジェクトの設定が保存されています。プロジェクトごとにmcpServersセクションがあり、そのプロジェクトで有効なMCPサーバーが定義されています。

4.MCP Server設定の確認方法

MCPサーバーの設定を探す(参考例)

# my-hello-serverの設定を探す
grep -B5 -A10 "my-hello-server" ~/.claude.json

# playwrightの設定を探す
grep -B5 -A10 "playwright" ~/.claude.json

# excel-serverの設定を探す
grep -B5 -A10 "excel-server" ~/.claude.json

# mcpServersが空でない部分だけを表示
grep -B10 -A20 '"mcpServers": {' ~/.claude.json | grep -v '"mcpServers": {},'

設定ファイルの場所を特定

# .claudeディレクトリの中身を確認
ls -la ~/.claude/

# 設定ファイルを探す
find ~ -name "*.json" -path "*claude*" 2>/dev/null

5.まとめ

Claude CodeのMCP機能を使うことで、Excel操作やブラウザ自動化などの高度な機能が利用できます。設定は少し複雑ですが、一度理解すれば強力な自動化ツールとして活用できます。

主なポイント:

  • MCPサーバーはclaude mcp add-jsonコマンドで簡単に追加可能
  • 設定は複数のファイルに分散して保存される
  • プロジェクトごとに権限設定が必要
  • claude mcp listで現在の設定を確認できる

ぜひMCPを活用して、Claude Codeの可能性を最大限に引き出してください!

参考リンク

Accenture Japan (有志)

Discussion