MCP Hub
Back to servers

mcp-google-reader

Validated

MCP server to read Google Docs and Google Sheets content for AI assistants

npm93/wk
Stars
1
Tools
2
Updated
Mar 25, 2026
Validated
May 3, 2026
Validation Details

Duration: 12.8s

Server: mcp-google-reader v1.0.0

Quick Install

npx -y mcp-google-reader

mcp-google-reader

MCP server that reads Google Docs and Google Sheets content for AI assistants like Claude.

Paste a Google Docs/Sheets link in your message — Claude reads it directly. No more copy-pasting PRDs, tech specs, or test case spreadsheets.

Prerequisites

  • Node.js 18+ (recommended: Node.js 20 or 22 LTS)
  • A Google Cloud project with Docs & Sheets APIs enabled

Quick Start

# 1. Set up Google Cloud OAuth (see detailed steps below)
# 2. Authorize (run in your terminal, not inside an AI assistant)
npx mcp-google-reader auth
# 3. Add to your MCP client
claude mcp add -s user google-reader -- npx mcp-google-reader serve

Features

  • Google Docs → Markdown: Preserves headings, bold, italic, lists, tables, links
  • Google Sheets → Markdown table: First row as header, proper column alignment
  • Multiple URLs: Paste several links in one message — all fetched in parallel
  • Sheet selection: Read specific tabs by name, or all tabs at once
  • Caching: 60-second in-memory cache to avoid redundant API calls
  • OAuth2: Reads any file you have access to in your Google account

Setup

1. Google Cloud Project

  1. Go to Google Cloud Console → Create a new project (or select existing)
  2. Enable Google Docs API: Enable here
  3. Enable Google Sheets API: Enable here

2. OAuth Consent Screen

  1. Go to APIs & Services → OAuth consent screen
  2. Choose External → Create
  3. Fill in:
    • App name: mcp-google-reader
    • User support email: your email
    • Developer contact: your email
  4. Scopes → Save and Continue (no changes needed)
  5. Test usersAdd users → add your Google email → Save and Continue
  6. Summary → Back to Dashboard
  7. Keep in Testing mode (sufficient for personal use and small teams)

3. Create OAuth Client ID

  1. Go to APIs & Services → Credentials
  2. Create CredentialsOAuth client ID
  3. Application type: Desktop app
  4. Name: mcp-google-reader
  5. Click Create
  6. Copy the Client ID and Client Secret

4. Authorize

Important: Run this command in your terminal directly — not inside an AI assistant. The auth flow requires interactive input and opening a browser.

npx mcp-google-reader auth

This will:

  1. Ask for your Client ID and Client Secret (first time only)
  2. Print an authorization URL — copy and open it in your browser
  3. Sign in with your Google account and click Allow
  4. Browser redirects to localhost — tokens are saved automatically

Credentials stored at ~/.mcp-google-reader/

npx automatically downloads the package on first run — no npm install -g needed.

Windows troubleshooting: If you get sed: command not found errors, try one of these:

# Option 1: Run in Command Prompt (cmd) instead of PowerShell
cmd /c "npx mcp-google-reader auth"

# Option 2: Install globally first
npm install -g mcp-google-reader
mcp-google-reader auth

5. Add to your MCP client

Claude Code (CLI)

# Add globally (available in all projects)
claude mcp add -s user google-reader -- npx mcp-google-reader serve

# Or add to current project only
claude mcp add google-reader -- npx mcp-google-reader serve

Then restart Claude Code to load the MCP server.

Cursor / Windsurf / VS Code

Create a .mcp.json file in your project root (or copy from .mcp-example.json):

{
  "mcpServers": {
    "google-reader": {
      "command": "npx",
      "args": ["mcp-google-reader", "serve"]
    }
  }
}

Then restart your editor.

Claude Desktop

Add to your Claude Desktop config (claude_desktop_config.json):

{
  "mcpServers": {
    "google-reader": {
      "command": "npx",
      "args": ["mcp-google-reader", "serve"]
    }
  }
}

Config file location:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Usage

Just paste Google links in your message:

Read this PRD and implement the feature:
https://docs.google.com/document/d/1abc123.../edit

Test cases are here:
https://docs.google.com/spreadsheets/d/1xyz789.../edit

Claude will automatically call read_google_links and get the content.

Multiple links in one message are supported:

Here are the PRD https://docs.google.com/document/d/abc and test cases https://docs.google.com/spreadsheets/d/xyz — please review both.

Tools

read_google_links

Extract and read all Google Docs/Sheets URLs from a message.

ParameterTypeRequiredDescription
messagestringYesMessage containing one or more Google URLs

read_google_sheet

Read a specific Google Sheet with fine-grained options.

ParameterTypeRequiredDescription
urlstringYesGoogle Sheets URL
sheet_namestringNoTab name (default: first tab)
rangestringNoCell range, e.g. A1:Z100
all_sheetsbooleanNoRead all tabs

Credentials

~/.mcp-google-reader/
├── oauth-config.json    # Client ID & Secret (created during auth)
└── credentials.json     # Access & refresh tokens (auto-managed)

Security

  • Credentials stored with 600 file permissions (owner read/write only)
  • Tokens auto-refresh — no need to re-authorize
  • Read-only scopes: documents.readonly and spreadsheets.readonly
  • No data sent anywhere except Google APIs

License

MIT

Reviews

No reviews yet

Sign in to write a review