mcpField
G
Google Drive MCP Server

Google Drive MCP Server

ローカル
github.com/festusevファイル・ストレージ174 週間前に更新

Google Drive MCP Server について

FastMCP を使った Google Drive 用サーバーで、Google Docs の操作を中心にしています。サービスアカウント認証を利用し、ファイル検索と文書のページ単位の読み書きに対応します。

主な機能

  1. 01Drive ファイルの一覧表示と検索
  2. 02Google Docs のページ単位の読み取り
  3. 03タブや範囲を指定した文書への書き込み
  4. 04サービスアカウント認証
  5. 05大量のファイル一覧や文書のページ処理

活用シーン

  1. 01クエリや MIME タイプで Drive ファイルを検索
  2. 02長い文書を分割して読む
  3. 03文書への内容の挿入や置換
  4. 04サービスアカウントに共有されたファイルへのアクセス

MCP 対応

Google Drive ファイルの一覧表示と検索、および Google Docs の読み書きを MCP クライアント向けツールとして提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Google Drive MCP Server

FastMCP で構築された、Google Drive と連携する Model Context Protocol(MCP)サーバーです。Google Docs の操作を中心に、Google Drive のファイルの読み取り、書き込み、検索、一覧表示を行うツールを提供します。

特長

  • ファイル操作:ページネーションに対応した Google Drive 内のファイルの一覧表示と検索
  • ドキュメントの読み取り:ページネーションとタブ選択に対応した Google Docs のコンテンツの読み取り
  • ドキュメントの書き込み:タブ選択と範囲操作に対応した Google Docs への書き込み
  • 認証:Google Drive API アクセス用のサービスアカウント認証
  • ページネーション:大きなドキュメントやファイル一覧を効率的に処理

セットアップ

1. 依存関係のインストール
uv sync
2. Google API のセットアップ
  1. Google Cloud Console にアクセスします
  2. 新しいプロジェクトを作成するか、既存のプロジェクトを選択します
  3. Google Drive API と Google Docs API を有効にします
  4. サービスアカウントを作成し、キーを生成します
  5. サービスアカウントキーのファイルをダウンロードし、プロジェクトのルートに service-account-key.json として保存します
  6. アクセスする Google Drive のファイルやフォルダーを、サービスアカウントのメールアドレスと共有します
3. サーバーの実行
python -m google_drive_mcp.server

認証フローは不要です。キーのファイルを使用して、サービスアカウントが自動的に認証されます。

利用可能なツール

list_files

オプションのフィルターとページネーションを指定して、Google Drive 内のファイルを一覧表示します。

パラメーター:

  • folder_id(任意):一覧表示するフォルダーの ID(デフォルト:ルート)
  • page_size(任意):1 ページあたりのファイル数(デフォルト:50、最大:100)
  • page_token(任意):ページネーション用のトークン
  • mime_type(任意):MIME タイプでフィルター(例:'application/vnd.google-apps.document')
search_files

クエリー構文を使用して、Google Drive 内のファイルを検索します。

パラメーター:

  • query:検索クエリー(例:'name contains "report"')
  • page_size(任意):1 ページあたりのファイル数(デフォルト:50、最大:100)
  • page_token(任意):ページネーション用のトークン
read_document

ページネーションを使用して、Google Docs ドキュメントのコンテンツを読み取ります。

パラメーター:

  • document_id:Google Docs ドキュメント ID
  • tab_id(任意):読み取る特定のタブ ID
  • start_index(任意):開始文字インデックス(デフォルト:0)
  • length(任意):読み取る文字数(デフォルト:5000、最大:10000)
write_document

Google Docs ドキュメントにコンテンツを書き込みます。

パラメーター:

  • document_id:Google Docs ドキュメント ID
  • content:書き込むコンテンツ
  • tab_id(任意):書き込む特定のタブ ID
  • insert_index(任意):コンテンツを挿入するインデックス(デフォルト:末尾)
  • replace_start(任意):コンテンツ置換の開始インデックス
  • replace_end(任意):コンテンツ置換の終了インデックス

使用例

Google Docs を検索する
# Search for documents containing "report"
search_files(query='name contains "report" and mimeType="application/vnd.google-apps.document"')
ページネーションを使用してドキュメントを読み取る
# Read first 5000 characters
read_document(document_id="your_doc_id")

# Read next 5000 characters
read_document(document_id="your_doc_id", start_index=5000)
特定のタブに書き込む
# Write to a specific tab in a document
write_document(
    document_id="your_doc_id",
    content="Hello, World!",
    tab_id="your_tab_id"
)

開発

プロジェクト構成
google_drive_mcp/
├── __init__.py
├── auth.py          # Google Drive authentication
└── server.py        # FastMCP server implementation
開発環境での実行
# Install in development mode
uv pip install -e .

# Run the server
python -m google_drive_mcp.server

ライセンス

このプロジェクトは MIT License の下でライセンスされています。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。