GoogleSheet MCP について
GoogleSheet MCPは、Google Sheetsのデータを読み書きするツールを提供します。サービスアカウントを使い、MCPクライアントからシートの確認、データ追加、レコード更新を行いたいユーザー向けです。
主な機能
- 01共有スプレッドシートの一覧表示
- 02スプレッドシート情報の取得
- 03シート内容の読み取り
- 04シートデータの生成
- 05レコードの追加と更新
活用シーン
- 01MCPクライアントからシート内容を確認
- 02生成済みまたは用意したデータを追加
- 03IDまたは名前でレコードを更新
MCP 対応
Google Sheetsの一覧表示、取得、データ生成、追加、レコード更新ツールをMCPクライアントに提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Google Sheets MCP サーバー
この MCP サーバーは、Google Sheets と連携するためのツールを提供し、スプレッドシート内のデータの読み取り、書き込み、更新を行えます。
前提条件
- Python 3.8 以降
- Google Cloud Platform アカウント
- 連携する Google スプレッドシート
インストール
- このリポジトリをクローンします:
git clone <your-repository-url>
cd mcp-server-demo
- 必要なパッケージをインストールします:
pip install google-auth-oauthlib google-auth-httplib2 google-api-python-client
- credentials.json をダウンロードして配置します:
- Google Cloud Console から
credentials.jsonファイルをダウンロードします credentials.jsonファイルをmain.pyと同じディレクトリに配置します- ファイル名が正確に
credentials.jsonになっていることを確認します
- Google Cloud Console から
Google Cloud Platform の認証情報の設定
-
Google Cloud Console にアクセスします
-
新しいプロジェクトを作成するか、既存のプロジェクトを選択します
-
Google Sheets API を有効にします:
- 「APIs & Services」>「Library」に移動します
- 「Google Sheets API」を検索します
- 「Enable」をクリックします
-
認証情報を作成します:
- 「APIs & Services」>「Credentials」に移動します
- 「Create Credentials」>「Service Account」をクリックします
- サービスアカウントの詳細を入力します:
- Name:わかりやすい名前を選択します
- ID:自動的に生成されます
- Description:任意の説明を入力します
- 「Create and Continue」をクリックします
- Role で「Editor」(または必要に応じたロール)を選択します
- 「Continue」をクリックし、続いて「Done」をクリックします
-
キーを作成してダウンロードします:
- サービスアカウントの一覧で、新しく作成したアカウントをクリックします
- 「Keys」タブに移動します
- 「Add Key」>「Create new key」をクリックします
- 「JSON」形式を選択します
- 「Create」をクリックします
- JSON ファイルが自動的にダウンロードされます
-
認証情報を保存します:
- ダウンロードした JSON ファイルの名前を
credentials.jsonに変更します mcp-server-demoディレクトリに配置します
- ダウンロードした JSON ファイルの名前を
-
Google スプレッドシートを共有します:
- Google スプレッドシートを開きます
- 「Share」ボタンをクリックします
- サービスアカウントのメールアドレス(
credentials.jsonのclient_emailフィールドに記載されています)を追加します - 「Editor」アクセス権を付与します
サーバーの実行
- MCP サーバーをインストールします:
uv run mcp install main.py
- サーバーが起動し、コマンドを受け付ける準備が整います。
Cursor への追加
この MCP サーバーを Cursor に追加するには、次の手順に従います:
- Cursor を開きます
- Cursor -> Preferences -> Cursor Settings -> MCP -> Add new global MCP Server に移動します
- 次の設定を Cursor の設定ファイルに追加します:
{
"mcpServers": {
"GoogleSheets": {
"command": "python",
"args": [
"main.py"
]
}
}
}
- 変更を反映するために Cursor を再起動します
スクリーンショット
利用可能なツール
スプレッドシートの一覧表示
/tool list_spreadsheets
サービスアカウントと共有されているすべてのスプレッドシートを一覧表示します。
スプレッドシート情報の取得
/tool get_spreadsheet_info "spreadsheet_id"
特定のスプレッドシートに関する情報を取得します。
シートの内容の取得
/tool get_sheet_content "spreadsheet_id"
特定のシートの内容を取得します。
シートデータの生成
/tool generate_sheet_data "spreadsheet_id" number_of_records
シートの属性に基づいて、現実的なデータを生成します。
シートへのデータ追加
/tool add_data_to_sheet "spreadsheet_id" "data_string"
事前に生成したデータをシートに追加します。
シートレコードの更新
/tool update_sheet_record "spreadsheet_id" "identifier" "updates"
ID または名前の一致に基づいて、シート内のレコードを更新します。
データ形式
データ追加の場合
データ文字列は、次のいずれかの形式にできます:
- リストのリスト形式:
[["value1", "value2"], ["value3", "value4"]] - CSV 形式:
value1,value2
value3,value4
更新の場合
変更内容は次の形式で指定します:column1=value1 column2=value2
例:age=25 [email protected] phone=1234567890
セキュリティに関する注意事項
credentials.jsonをバージョン管理にコミットしないでください- 認証情報を安全に保管してください
- 必要なサービスアカウントとのみ Google スプレッドシートを共有してください
- 認証情報を定期的にローテーションしてください
トラブルシューティング
よくある問題
-
認証エラー
- サービスアカウントのメールアドレスが、スプレッドシートの編集者として追加されていることを確認してください
credentials.jsonファイルが有効で、破損していないことを確認してください- Google Cloud プロジェクトで Google Sheets API が有効になっているか確認してください
-
権限エラー
- サービスアカウントに適切な権限が付与されていることを確認してください
- スプレッドシートがサービスアカウントのメールアドレスと共有されていることを確認してください
- スプレッドシート ID が正しいか確認してください
-
データ形式エラー
- データ形式が想定される構造と一致していることを確認してください
- シートに必要な列(id または name)があるか確認してください
- データの列数がシートの列数と一致していることを確認してください
サポート
問題が発生した場合やご質問がある場合は、次の手順をお試しください。
- ログのエラーメッセージを確認します
- 上記の手順に従ってセットアップを確認します
- 前提条件がすべて満たされていることを確認します
- [email protected] までお問い合わせください
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。