プロジェクト概要
このプロジェクトは、Model Context Protocol (MCP) に基づいて構築されたサーバー実装であり、Google スプレッドシートおよび Google Drive へのアクセスと操作機能を提供します。AI アシスタント(LLM クライアント)は、このサーバーを通じてこれらの Google サービスと連携し、指定されたファイルやスプレッドシートのデータを読み書きしたり、ファイルやシートの管理タスクを実行したりできます。
主要機能
このツールは、以下の Google Drive および Google Spreadsheet の操作を MCP ツールとして提供します。
Google Drive 操作
- ファイル一覧取得: Google Drive の指定フォルダ内のファイルとフォルダの一覧を取得します。
- ファイルコピー: Google Drive 内でファイルをコピーします。
- ファイル名変更: Google Drive 内のファイル名を変更します。
Google Spreadsheet 操作
- シート一覧取得: 指定されたスプレッドシート内のシート一覧を取得します。
- シートコピー: スプレッドシート内のシートを別のシートまたは別のスプレッドシートにコピーします。
- シート名変更: スプレッドシート内のシート名を変更します。
- シートデータ取得: 指定したシートまたは範囲のセルデータを取得します。
- 行追加: シートに指定数の行を追加します。
- 列追加: シートに指定数の列を追加します。
- セル更新 (単一範囲): 指定した範囲のセルデータを更新します。
- セル一括更新 (複数範囲): 複数の範囲のセルデータを一度に更新します。
- 行削除: シートの指定開始行から指定数の行を削除します。
- 列削除: シートの指定開始列から指定数の列を削除します。
インストール手順
Go 1.24 以上がインストールされている環境で、以下のコマンドを実行します。
go install github.com/prudentmean/mcp-google-spreadsheet@latest
このコマンドにより、実行可能ファイル 'mcp-google-spreadsheet' が '$GOPATH/bin' ディレクトリにインストールされます('$GOPATH' が設定されていない場合は、通常 '$HOME/go' となります)。
サーバー設定
この MCP サーバーは、以下の環境変数を必要とします。サーバーを起動する前にこれらの環境変数を設定してください。
- 'MCPGS_CLIENT_SECRET_PATH': Google API の OAuth 2.0 クライアントシークレットをダウンロードした JSON ファイルへのパス。
- 'MCPGS_TOKEN_PATH': 認証トークンを保存するためのファイルパス。初回起動時に認証を行うと、このパスにトークンファイルが自動的に作成されます。
- 'MCPGS_FOLDER_ID': このサーバーが操作を許可する Google Drive のフォルダID。セキュリティのため、操作対象を特定のフォルダ内に限定します。
Google API の準備
- Google Cloud Console でプロジェクトを作成します。
- 作成したプロジェクトで「Google Drive API」と「Google Sheets API」を有効化します。
- 「認証情報」画面で「認証情報を作成」>「OAuth クライアント ID」を選択します。
- アプリケーションの種類として「デスクトップ」を選択し、任意の名前を付けて作成します。
- 作成された OAuth クライアントのクライアントシークレットを JSON ファイルとしてダウンロードし、そのパスを 'MCPGS_CLIENT_SECRET_PATH' に設定します。
基本的な使用方法
サーバーの起動
必要な環境変数を設定した後、インストールしたバイナリを実行します。
export MCPGS_CLIENT_SECRET_PATH=/path/to/client_secret.json export MCPGS_TOKEN_PATH=/path/to/token.json export MCPGS_FOLDER_ID=your_google_drive_folder_id mcp-google-spreadsheet
初回起動時は、ブラウザが起動して Google アカウントへの認証を求められます。画面の指示に従って認証を完了してください。認証が成功すると、トークンファイルが 'MCPGS_TOKEN_PATH' に指定した場所に保存され、以降は自動的に認証が行われます。
MCP クライアントからの利用設定
Claude や ChatGPT などの MCP クライアントからこのサーバーを利用するには、クライアント側の設定ファイルにこのサーバーの起動情報を追加します。設定内容はクライアントによって異なりますが、一般的には以下のような JSON 形式で記述します。
{ "mcpServers": { "mcp_google_spreadsheet": { // サーバーを識別するための任意の名前 "command": "mcp-google-spreadsheet", // サーバー実行可能ファイルへのパスまたはコマンド "args": [], // サーバー起動時に渡すコマンドライン引数(通常は不要) "env": { // サーバー起動時に設定する環境変数 "MCPGS_CLIENT_SECRET_PATH": "/path/to/client_secret.json", // Google API クライアントシークレットのパス "MCPGS_TOKEN_PATH": "/path/to/token.json", // 認証トークンファイルのパス "MCPGS_FOLDER_ID": "your_google_drive_folder_id" // 操作対象の Google Drive フォルダID } } } }
'command' には、'go install' でインストールしたバイナリへの絶対パスを指定するか、または 'mcp-google-spreadsheet' のようにコマンド名のみを指定できます。コマンド名のみの場合は、MCP クライアントを実行する環境の 'PATH' に '$GOPATH/bin' が含まれている必要があります。
設定が完了すると、AI アシスタントは MCP クライアントを通じてこのサーバーに接続し、定義された Google Drive/Spreadsheet 操作ツールを利用できるようになります。
信息
分类
生产力应用