Spreadsheet Remote MCP Server

Spreadsheet Remote MCP Server

Enables interaction with Google Spreadsheets through OAuth 2.0 authentication, supporting reading, writing, and creating spreadsheets via a remote MCP server using SSE.

Category
访问服务器

README

Spreadsheet Local MCP Server

Google Spreadsheet / Google Drive からデータを取得するための Local MCP (Model Context Protocol) サーバーです。 Stdio を使用して通信し、Claude Desktop などの MCP クライアントから直接利用できます。

機能

  • データ取得: Google Spreadsheet や Google Drive 上の Excel ファイルからデータを読み込みます。
    • Google Sheets API と Drive API を併用し、Excel ファイルもサポートしています。

前提条件

  • Node.js (v18以上推奨)
  • Google Cloud Platform プロジェクト
    • Google Sheets API が有効化されていること
    • Google Drive API が有効化されていること
    • OAuth 2.0 クライアント ID が作成されていること

Google Cloud Credentials の取得方法

このサーバーを使用するには、Google Cloud Platform (GCP) でプロジェクトを作成し、OAuth 2.0 クライアント ID を取得する必要があります。

1. プロジェクトの作成と API の有効化

  1. Google Cloud Console にアクセスします。
  2. 新しいプロジェクトを作成します(または既存のプロジェクトを選択します)。
  3. 左側のメニューから「API とサービス」>「ライブラリ」を選択します。
  4. 以下の API を検索し、それぞれ「有効にする」をクリックします。
    • Google Sheets API
    • Google Drive API

2. OAuth 同意画面の設定

  1. 左側のメニューから「API とサービス」>「OAuth 同意画面」を選択します。
  2. User Type で「外部」を選択し、「作成」をクリックします(テスト目的の場合は「外部」で自分のアカウントのみを許可するのが一般的です)。
  3. アプリ情報(アプリ名、ユーザーサポートメールなど)を入力し、「保存して次へ」をクリックします。
  4. 「スコープ」は今回は特に設定しなくても動作しますが、必要に応じて追加してください。「保存して次へ」をクリックします。
  5. 「テストユーザー」で「ADD USERS」をクリックし、自分の Google アカウント(メールアドレス)を追加します。これを行わないと、認証時にエラーになります。
  6. 「保存して次へ」をクリックし、最後に「ダッシュボードに戻る」をクリックします。

3. OAuth クライアント ID の作成

  1. 左側のメニューから「API とサービス」>「認証情報」を選択します。
  2. 上部の「認証情報を作成」をクリックし、「OAuth クライアント ID」を選択します。
  3. アプリケーションの種類で「ウェブ アプリケーション」を選択します。
  4. 名前を適当に入力します(例: "Local MCP Server")。
  5. 承認済みのリダイレクト URI に以下の URL を追加します。
    • http://localhost:8080/auth/callback
  6. 「作成」をクリックします。
  7. 表示された クライアント IDクライアント シークレット をコピーし、.env ファイルに設定します。

セットアップ

  1. リポジトリのクローン

    git clone <repository-url>
    cd spreadsheet_local_mcp_server
    
  2. 依存関係のインストール

    npm install
    
  3. 環境変数の設定 .env.example をコピーして .env を作成し、必要な値を設定します。

    cp .env.example .env
    

    .env ファイルを編集:

    PORT=8080
    GOOGLE_REDIRECT_URI=http://localhost:8080/auth/callback
    

    注意: Google Cloud Console の OAuth 同意画面設定で、テストユーザーとして自分のメールアドレスを追加し、リダイレクト URI (http://localhost:8080/auth/callback) を許可済みリダイレクト URI に追加してください。

  4. ビルド

    npm run build
    

MCP クライアントの設定 (Claude Desktop)

Claude Desktop で使用するには、claude_desktop_config.json (通常 ~/Library/Application Support/Claude/claude_desktop_config.json にあります) に以下を追加します。

{
  "mcpServers": {
    "spreadsheet-local": {
      "command": "node",
      "args": ["/absolute/path/to/spreadsheet_local_mcp_server/dist/index.js"],
      "env": {
        "GOOGLE_REDIRECT_URI": "http://localhost:8080/auth/callback"
      }
    }
  }
}

/absolute/path/to/... の部分は、実際にリポジトリをクローンした絶対パスに置き換えてください。

認証フロー

初回利用時やトークン期限切れ時は、認証が必要です。

以下のコマンドでサーバーを起動してください。

npm run dev
# または
npm run build
npm start

MCP サーバーが起動すると、認証が必要な場合に自動的にローカルサーバー (http://localhost:8080) が立ち上がり、ブラウザが開きます。 もし自動で開かない場合は、ブラウザで http://localhost:8080/auth/login にアクセスし、Google アカウントでログインして権限を許可してください。 認証が完了すると、MCP サーバーとしての機能が利用可能になります。

注意: すでに認証済み(.tokens.json が存在する)の場合、サーバーは MCP モード(Stdio)で起動し、コンソールには何も出力されず、Web サーバーも起動しません。これは正常な動作です。 再認証を行いたい場合は、.tokens.json を削除してからコマンドを実行してください。

利用可能なツール

get_data

Google Spreadsheet または Google Drive 上のファイルからデータを取得します。

  • 引数:
    • url (string, 必須): Google Spreadsheet の URL または Google Drive のファイル URL
    • sheetName (string, オプション): シート名。省略時は最初のシートが使用されます。

ディレクトリ構成

  • src/index.ts: エントリーポイント。認証サーバーの起動制御と MCP サーバーの初期化を行います。
  • src/mcp.ts: MCP サーバーの設定 (Stdio) とツール定義 (get_data)。
  • src/auth.ts: Google OAuth 認証ロジック。
  • src/sheets.ts: Google Sheets API 操作ロジック。
  • src/drive.ts: Google Drive API 操作ロジック。

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选