MCP Server for Google Spreadsheets について
Google Spreadsheets MCP サーバーは、AI アシスタントによるスプレッドシートデータの取得と編集を可能にします。Google Cloud Application Default Credentials を使い、シートの読み取り、セルの更新、新規シートの追加に対応します。
主な機能
- 01シートとメタデータの一覧取得
- 02指定範囲の値の読み取り
- 03単一または複数範囲の更新
- 04指定サイズでのシート追加
活用シーン
- 01シート名とサイズの確認
- 02指定範囲のデータ取得
- 03一つ以上の範囲への値の書き込み
- 04新たな計画用シートの作成
MCP 対応
接続したクライアント向けに、Google Spreadsheets の操作を MCP ツールとして提供します。標準入出力でクライアントと通信します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Google スプレッドシート用 MCP サーバー
Google スプレッドシートと連携し、AI アシスタントがスプレッドシートのデータを取得および変更できるようにする、Model Context Protocol(MCP)サーバーの実装です。このサーバーを使うと、Claude が Google スプレッドシートのデータを直接操作できます。
デモ

機能
このサーバーでは、Google スプレッドシートを操作するために次のツールを利用できます。
get_sheets:名前、サイズ、ID など、Google スプレッドシート内のすべてのシート情報を取得しますget_sheet_values:範囲を指定して、特定のシートの値を取得しますupdate_cells:シート内の特定のセル範囲の値を更新しますbatch_update_cells:1 回の操作で、異なるシートにまたがる複数の範囲を更新しますadd_sheet:サイズを指定して、既存のスプレッドシートに新しいシートを追加します
前提条件
- Node.js(v18 以降)
- Google Sheets API を有効にした Google Cloud プロジェクト
- Google Cloud 認証情報
- Claude Desktop(Claude との連携に使用)
インストール
-
このリポジトリをクローンします:
git clone https://github.com/yourusername/mcp-server-spreadsheet.git cd mcp-server-spreadsheet -
依存関係をインストールします:
pnpm install
認証の設定
このサーバーでは、Google スプレッドシートへのアクセスに Google Cloud の Application Default Credentials を使用して認証します。
- まだインストールしていない場合は、Google Cloud CLI をインストールします
- ログインして、Google スプレッドシートへのアクセスを許可します:
gcloud auth application-default login --scopes=openid,https://www.googleapis.com/auth/userinfo.email,https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/spreadsheets
ヒント
- Google プロジェクトで Sheets API が有効になっていることを確認してください。
gcloud auth application-default loginでは--scopesオプションを忘れずに指定してください。
ビルドと実行
-
プロジェクトをビルドします:
pnpm build -
サーバーを実行します:
pnpm start
サーバーが起動し、標準入力/出力を介して MCP コマンドを待ち受けます。
Claude for Desktop との連携
このサーバーを Claude for Desktop で使用するには:
-
Claude for Desktop がインストールされ、起動していることを確認します
-
Claude for Desktop の設定ファイル(
claude_desktop_config.json)にサーバーを追加します:{ "mcpServers": { "spreadsheet": { "command": "node", "args": ["/absolute/path/to/mcp-server-spreadsheet/build/index.js"], "env": { "GOOGLE_PROJECT_ID": "your-google-project-id", "GOOGLE_APPLICATION_CREDENTIALS": "/absolute/path/to/your/credentials.json" } } } } -
Claude for Desktop を再起動して、サーバーを読み込みます
使用例
Claude と連携すると、自然言語でスプレッドシートを操作できます。プロンプトの例を以下に示します。
スプレッドシート情報の取得
Could you tell me what sheets are in this spreadsheet? https://docs.google.com/spreadsheets/d/YOUR_SPREADSHEET_ID/edit
シートからのデータ取得
Please show me the data from the "Sales" sheet in this spreadsheet: https://docs.google.com/spreadsheets/d/YOUR_SPREADSHEET_ID/edit
データの更新
Update cells A1:B2 in the "Q1 Budget" sheet with these values:
- Row 1: 1000, 2000
- Row 2: 3000, 4000
The spreadsheet URL is: https://docs.google.com/spreadsheets/d/YOUR_SPREADSHEET_ID/edit
新しいシートの追加
Please add a new sheet called "Q2 Planning" to this spreadsheet: https://docs.google.com/spreadsheets/d/YOUR_SPREADSHEET_ID/edit
利用可能なツール
get_sheets
スプレッドシート内のすべてのシートの情報を取得します。
パラメーター:
spreadsheetUrl:Google スプレッドシートの URL または ID
get_sheet_values
スプレッドシート内の特定のシートから値を取得します。
パラメーター:
spreadsheetUrl:Google スプレッドシートの URL または IDsheetName:データを取得するシートの名前range(任意):A1 形式のセル範囲(例:"A1:D5")
update_cells
特定のセル範囲の値を更新します。
パラメーター:
spreadsheetUrl:Google スプレッドシートの URL または IDsheetName:更新するシートの名前range:A1 形式のセル範囲(例:"A1:B2")values:書き込む値の 2 次元配列(各内側の配列が 1 行を表します)
batch_update_cells
1 回の操作で、異なるシートにまたがる複数の範囲の値を更新します。
パラメーター:
spreadsheetUrl:Google スプレッドシートの URL または IDupdates:更新操作の配列。各操作には以下が含まれます:sheetName:更新するシートの名前range:A1 形式のセル範囲values:書き込む値の 2 次元配列
add_sheet
既存のスプレッドシートに新しいシートを追加します。
パラメーター:
spreadsheetUrl:Google スプレッドシートの URL または IDsheetTitle:新しいシートのタイトルrowCount(任意):行数(デフォルト:1000)columnCount(任意):列数(デフォルト:26)
開発
プロジェクト構成
src/index.ts:メインエントリーポイントsrc/tools/:個々の MCP ツールの実装src/utils/:ユーティリティ関数とサービスsrc/types/:TypeScript の型定義
テストの実行
pnpm test
環境変数
プロジェクトのルートに .env ファイルを作成し、次の変数を設定できます。
# Optional: Override Google API credentials path
GOOGLE_APPLICATION_CREDENTIALS=/path/to/credentials.json
# Optional: Debug mode
DEBUG=true
トラブルシューティング
- 認証エラー:認証情報が正しく設定されており、Google Cloud プロジェクトで Google Sheets API が有効になっていることを確認してください。
- 権限エラー:アクセスしようとしているスプレッドシートへのアクセス権が、Google アカウントまたはサービスアカウントに付与されていることを確認してください。
- サーバー接続:Claude for Desktop が MCP サーバーを起動するよう正しく設定されていることを確認してください。
ライセンス
MIT
コントリビューション
コントリビューションを歓迎します。お気軽にプルリクエストを送信してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。