Skip to main content
Glama
yangchoi

MCP Google Sheets Server

by yangchoi

MCP Google Sheets サーバー

Claude Desktop、Claude Code、およびModel Context Protocol (MCP) 対応のAIクライアントからGoogle Sheetsを読み取り、書き込み、管理します。

MIT License TypeScript Node.js MCP

軽量で本番環境に対応したModel Context Protocol (MCP) サーバーです。Google Sheets APIをClaudeや他のLLMエージェントに公開します。スプレッドシートのワークフローを自動化し、シートにログを記録するAIエージェントツールを構築し、チームのスプレッドシートとデータパイプラインを同期させたり、Claudeにドキュメントを編集させたりすることが、たった一つのMCPサーバーで可能です。

目次

なぜ

ClaudeにGoogle Sheetsを更新させたい——求人管理表、習慣記録、プロジェクトダッシュボード——ウィンドウを切り替えることなく、このサーバーがそのためのツールを提供します。これはAnthropic公式のGoogle Drive MCPコネクタ(ファイルの読み取りは可能ですが、セルの書き込みはできません)の自然な対となるものです。

一般的なワークフロー:

  • 求人応募中に、Claudeに求人管理表に行を追加させる

  • 研究読書リスト、週次レトロスペクティブ、IELTS学習記録を同期する

  • AIエージェントに構造化された監査可能な出力をスプレッドシートに与える

  • 自然言語のプロンプトから財務や運用のダッシュボードを自動化する

機能

  • ✅ A1形式の任意の範囲を読み取り

  • RAW または USER_ENTERED パースでセル値を更新

  • ✅ 任意のシートに行を追加(ログ記録に最適)

  • ✅ 書式を削除せずに範囲をクリア

  • ✅ 1回の呼び出しで複数の範囲を一括更新

  • ✅ スプレッドシートのメタデータ(シートタブ、寸法)を検査

  • 🔐 OAuth 2.0 ローカルトークンストレージと自動更新機能付き

  • 📦 TypeScript、ESモジュール、最小限の依存関係

  • 🖥️ Claude DesktopClaude Code、およびstdio経由の任意のMCPクライアントで動作

クイックスタート

# 1. Clone
git clone https://github.com/yangchoi/mcp-google-sheets.git
cd mcp-google-sheets

# 2. Install and build
npm install
npm run build

# 3. Put your Google Cloud OAuth credentials.json here
mkdir -p ~/.config/mcp-google-sheets
cp /path/to/downloaded-credentials.json ~/.config/mcp-google-sheets/credentials.json

# 4. Authorize (opens browser once)
npm run auth

# 5. Register with Claude — see below

セットアップ

1. Google Cloudプロジェクトを作成する

  • Google Cloud Console を開きます。

  • 新しいプロジェクト をクリック → 任意の名前を付けます(例:mcp-sheets)。

2. Sheets APIを有効にする

  • プロジェクト内で、Google Sheets API を開きます。

  • 有効にする をクリックします。

3. OAuth 2.0認証情報を作成する

  • 認証情報 を開きます。

  • 認証情報を作成 → OAuthクライアントID をクリックします。

  • 求められた場合、まずOAuth同意画面を設定します:

    • ユーザータイプ:外部(内部が利用可能なWorkspaceを使用している場合を除く)

    • アプリが テスト モードの間、自分自身をテストユーザーとして追加します

    • 同意画面ではスコープは空のままで構いません。アプリが実行時に要求します

  • OAuthクライアントIDの作成に戻ります:

    • アプリケーションの種類:デスクトップアプリ

    • 名前:任意(例:mcp-google-sheets

  • JSONをダウンロード をクリックして保存します。これが credentials.json です。

ファイルをデフォルトの設定ディレクトリに移動します:

mkdir -p ~/.config/mcp-google-sheets
mv ~/Downloads/client_secret_*.json ~/.config/mcp-google-sheets/credentials.json

(または GOOGLE_SHEETS_CREDENTIALS_PATH を設定して別の場所を指定します — 設定 を参照してください。)

4. サーバーをインストールする

git clone https://github.com/yangchoi/mcp-google-sheets.git
cd mcp-google-sheets
npm install
npm run build

5. 認可する

一度だけのOAuthフローを実行します。ブラウザが開き、自分のSheetsへのアクセスを承認すると、結果のトークンが ~/.config/mcp-google-sheets/token.json に保存されます。

npm run auth

ターミナルに Authorization complete. Token saved. と表示されるはずです。

MCPクライアントに登録する

Claude Desktop

~/Library/Application Support/Claude/claude_desktop_config.json(macOS)または %APPDATA%\Claude\claude_desktop_config.json(Windows)を編集し、以下を追加します:

{
  "mcpServers": {
    "google-sheets": {
      "command": "node",
      "args": ["/absolute/path/to/mcp-google-sheets/dist/index.js"]
    }
  }
}

Claude Desktopを再起動します。Sheetsツールがツールピッカーに表示されます。

Claude Code

Claude CodeのMCP設定(通常は ~/.claude/settings.jsonmcpServers 以下)に追加します:

{
  "mcpServers": {
    "google-sheets": {
      "command": "node",
      "args": ["/absolute/path/to/mcp-google-sheets/dist/index.js"]
    }
  }
}

Claude Codeを再起動します。/mcp でツールが読み込まれたことを確認します。

利用可能なツール

ツール

目的

get_spreadsheet_metadata

シートタブとその寸法を一覧表示します。最初に呼び出してシート名を特定します。

read_range

A1形式でセル値を読み取ります。

update_range

特定の範囲のセルを上書きします。

append_row

データがある最終行の後に行を1行以上追加します。

clear_range

書式を削除せずに範囲の値をクリアします。

batch_update_values

1回のAPI呼び出しで複数の範囲を更新します。

すべてのツールは spreadsheetId(シートURLの /d//edit の間にあります)を引数に取ります。

使用例

Claudeにプロンプト:

「スプレッドシート 1abcXYZ... を見て、Applications シートに新しい行を追加して:Legora, Stockholm, Legal AI, 2026-08-18, pending

Claudeは get_spreadsheet_metadata を呼び出してシートを特定し、次に append_row を値とともに呼び出します。

または読み取り+要約:

「スプレッドシート 1abcXYZ...Applications シートの最初の20行を読んで、まだpendingのものがいくつあるか教えて」

Claudeは Applications!A1:F20 に対して read_range を呼び出し、返された配列を基に推論します。

設定

環境変数(すべてオプション):

変数

デフォルト

目的

GOOGLE_SHEETS_CREDENTIALS_PATH

~/.config/mcp-google-sheets/credentials.json

OAuthクライアント認証情報ファイル。

GOOGLE_SHEETS_TOKEN_PATH

~/.config/mcp-google-sheets/token.json

リフレッシュトークンの保存先。

MCP_GOOGLE_SHEETS_CONFIG_DIR

~/.config/mcp-google-sheets

上記2つのパスが設定されていない場合に使用されるベースディレクトリ。

セキュリティ

  • credentials.jsontoken.jsonローカル専用であり、GoogleのOAuthサーバー以外に送信されることはありません。

  • 両方のファイルは .gitignore でカバーされています。バージョン管理にコミットしないでください。

  • サーバーは spreadsheets スコープのみを要求します。Drive全体へのアクセス、Gmail、カレンダーはありません。

  • トークンの更新は自動的に行われます。有効期間の長いアクセストークンが公開されることはありません。

  • サーバーの実行中に定常状態でネットワーク待受ポートを必要としません(一時ポート 47319 は初期のOAuthコールバック中のみ使用され、その後すぐに閉じられます)。

トラブルシューティング

credentials.json not foundステップ3~4 を実行していません。パスを確認してください。

OAuth中の Error: access_denied — GoogleアカウントがOAuth同意画面のテストユーザーとしてリストされていません。OAuth同意画面 に移動し、テストユーザー にメールアドレスを追加してください。

ツール呼び出し時の insufficient permission — トークンがより狭いスコープで作成されました。token.json を削除し、npm run auth を再実行してください。

ツールがClaudeに表示されない — MCP設定のパスが絶対パスであり、dist/index.jssrc/index.ts ではありません)を指していることを確認してください。npm run build を実行したことを確認してください。

サーバー起動時の No stored tokenステップ5 をスキップしました。npm run auth を実行してください。

開発

npm install
npm run dev      # tsc --watch
npm run build    # produces dist/
npm run start    # runs dist/index.js on stdio

貢献を歓迎します。これは最小限のコアです。構造的な更新(書式設定、シート追加、フィルター、保護範囲のための spreadsheets.batchUpdate)に関するPRを歓迎します。

ライセンス

MIT

-
license - not tested
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/yangchoi/mcp-google-sheets'

If you have feedback or need assistance with the MCP directory API, please join our Discord server