Spreadsheet MCP Server
このプロジェクトは、Google SpreadsheetのデータにアクセスするためのModel Context Protocol (MCP) サーバーです。LLMがスプレッドシート情報を直接利用できるようにします。
機能
スプレッドシートの基本情報(シート一覧など)の取得
特定シートのデータの取得とマークダウン形式での整形
MCPクライアント(Claude for Desktopなど)と統合
Related MCP server: mcp-google-sheets
インストール
環境変数の設定
サーバーの設定には、以下の環境変数が使用されます:
GAS_WEB_APP_URL: Google Apps Script Web AppのURLGAS_API_KEY: Google Apps Script Web Appのアクセス用APIキー
これらの環境変数は .env ファイルに設定できます:
環境変数が設定されていない場合、サーバーはモックモードで動作し、実際のGoogleスプレッドシートにはアクセスしません。
使用方法
スタンドアロンでの起動
Claude for Desktopとの統合
Claude for Desktopの設定ファイル (claude_desktop_config.json) に以下を追加します:
環境変数を設定するには、以下のようにenvフィールドを追加します:
設定ファイルは以下の場所にあります:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%AppData%\\Claude\\claude_desktop_config.json
MCP Inspectorでテスト
提供するツール
getSpreadsheet
スプレッドシートの基本情報と含まれるシート一覧を取得します。
入力パラメータ:
url: スプレッドシートのURL
出力:
スプレッドシート名、ID、シート一覧(行数・列数を含む)
getSheetData
スプレッドシートの特定シートのデータを取得します。
入力パラメータ:
url: スプレッドシートのURLsheetName: 取得するシート名
出力:
シートデータ(マークダウンテーブル形式)
開発
プロジェクト構造
テスト
Google Apps Scriptとの連携について
このサーバーは、実際の使用時にはGoogle Apps ScriptのWeb Appと連携して動作します:
Google Apps ScriptでWeb Appを作成する
Webアプリ側でスプレッドシートにアクセスするAPIを実装する(
api/README.md参照)APIキーを設定し、環境変数
GAS_WEB_APP_URLとGAS_API_KEYで連携する
このアプローチにより、Google認証フローを回避し、スプレッドシートのセキュリティを維持できます。
環境変数が設定されていない場合は、モックモードで動作し、テスト用のデータが返されます。
ライセンス
MIT