mcpField
G
google-docs-mcp-server

google-docs-mcp-server

ローカル
github.com/gigabrainobserver生産性434 週間前に更新

google-docs-mcp-server について

google-docs-mcp-serverは、Google WorkspaceユーザーがMCP経由でGoogle Docsを読み書きするためのサーバーです。入れ子のタブに対応し、見出し構造を保ってMarkdownに変換します。

主な機能

  1. 01入れ子のドキュメントタブを一覧表示
  2. 02タブを構造化Markdownとして読み取り
  3. 03ドキュメント作成とテキスト編集
  4. 04書式や更新の一括適用
  5. 05Drive内のドキュメント検索

活用シーン

  1. 01ドキュメント内の全タブを読む
  2. 02指定タブへの追記やテキスト置換
  3. 03書式や表の更新を一括適用

MCP 対応

Google DocsとDriveの操作をツールとしてMCPクライアントに提供し、タブ単位の読み書きにも対応します。認証にはドメイン全体の委任を設定したGoogleサービスアカウントを使用します。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"gigabrain-observer-google-docs": {
"command": "uvx",
"args": [
"google-docs-mcp-server"
],
"env": {
"SERVICE_ACCOUNT_PATH": "<SERVICE_ACCOUNT_PATH>",
"SUBJECT_EMAIL": "<SUBJECT_EMAIL>"
}
}
}
}
起動コマンドuvx google-docs-mcp-server
設定が必要な環境変数
SERVICE_ACCOUNT_PATHPath to the Google service account JSON key file
SUBJECT_EMAILEmail of the Workspace user to impersonate via domain-wide delegation

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypigoogle-docs-mcp-server0.1.1

ツール

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

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

詳細

Google Docs MCP サーバー

Google Docs 用の Model Context Protocol サーバーです。タブを完全にサポートしており、多くの既存サーバーが正しく扱えていない、または完全に見落としている機能です。

Google サービスアカウントとドメイン全体の委任を使用するため、OAuth 同意画面なしで Workspace 組織で動作します。

できること

ツール説明
list_tabsドキュメント内のすべてのタブ(ネストされたタブを含む)を一覧表示します
read_document1 つのタブ、またはすべてのタブを適切な見出しレベルのマークダウンとして読み取ります
get_document_info軽量なメタデータを取得します:タイトル、ID、リンク、タブ一覧
create_document任意の初期テキストを指定して新しいドキュメントを作成します
append_text指定したタブの末尾にテキストを追加します
insert_textタブ内の文字インデックス位置にテキストを挿入します
replace_textタブ内(またはドキュメント全体)を検索して置換します
batch_update書式設定、表、画像、スタイルなど、batchUpdate へのフルアクセスを提供します
list_documentsDrive で名前を指定してドキュメントを検索します

タブを対象とするすべてのツールは、tab_id または tab_title(大文字と小文字を区別しない)を受け付けます。batch_update ツールはリクエストに tabId を自動的に挿入するため、手動で指定する必要はありません。

このサーバーを作成した理由

Google Docs は 2024 年後半からタブをサポートしていますが、多くの MCP サーバーは次のいずれかの問題を抱えています。

  • タブを完全に無視する(最初のタブしか読み取らない)
  • includeTabsContent=True を使用しないため、タブの内容が見えない
  • ネストされたタブを扱えない

このサーバーはこれらすべてに正しく対応し、適切な見出し構造のマークダウンに変換します。

インストール

pip install google-docs-mcp-server

または、uv を使って直接実行します。

uvx google-docs-mcp-server

前提条件

  • Python 3.11+
  • ドメイン全体の委任が設定された Google Cloud サービスアカウント

セットアップ

1. GCP サービスアカウントを作成する
  1. Google Cloud Console にアクセスし、プロジェクトを作成(または選択)します
  2. Google Docs API と Google Drive API を有効にします
  3. IAM & Admin > Service Accounts でサービスアカウントを作成します
  4. JSON キーを作成してダウンロードします
2. ドメイン全体の委任を有効にする
  1. GCP で、サービスアカウントの詳細ページを開き、Domain-wide Delegation を有効にして Client ID を控えます
  2. Google Workspace Admin の Security > API Controls > Domain-wide Delegation に移動します
  3. 次のスコープを指定して Client ID を追加します。
    https://www.googleapis.com/auth/documents
    https://www.googleapis.com/auth/drive.readonly
    
3. MCP クライアントを設定する

MCP 設定に追加します(例:~/.claude/mcp.json または .mcp.json)。

{
  "mcpServers": {
    "google-docs": {
      "command": "uvx",
      "args": ["google-docs-mcp-server"],
      "env": {
        "SERVICE_ACCOUNT_PATH": "/path/to/your-service-account-key.json",
        "SUBJECT_EMAIL": "[email protected]"
      }
    }
  }
}

SUBJECT_EMAIL は、サービスアカウントが偽装する Workspace ユーザーです。

環境変数

変数必須説明
SERVICE_ACCOUNT_PATHはいサービスアカウントの JSON キーファイルへのパス
SUBJECT_EMAILはい偽装する Workspace ユーザーのメールアドレス

ライセンス

MIT

コメント

MCP は初めてですか?

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

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