MCP Hub
Back to servers

granola-mcp

An MCP server that provides access to Granola meeting notes, allowing users to search, list, and retrieve summaries of their meetings via Cloudflare Workers.

Tools
6
Updated
Dec 20, 2025
Validated
Jan 11, 2026

Granola MCP Server

MCP server for Granola meeting notes. Deploys to Cloudflare Workers with OAuth.

Setup

npm install
wrangler kv namespace create TOKENS

Update wrangler.toml with your KV namespace ID, then deploy:

npm run deploy

Configure MCP Client

Add to your MCP config (e.g. Claude Desktop, ChatGPT):

{
  "mcpServers": {
    "granola": {
      "url": "https://granola-mcp-server.YOUR-SUBDOMAIN.workers.dev/mcp"
    }
  }
}

On first use, you'll be prompted to authenticate via Google. Follow the on-screen instructions.

Tools

ToolDescription
get_all_meetingsList recent meetings (limit: default 20)
get_meeting_by_idGet single meeting by document ID
get_recent_meetingsMeetings from last N days
search_meetingsSearch by keyword
get_document_summaryFull summary for a document
get_todays_meetingsToday's meetings

Development

npm run dev      # Local server at localhost:8787
npm run deploy   # Deploy to Cloudflare
wrangler tail    # View logs

Debug Endpoints

# Check token status
curl -H "Authorization: Bearer SESSION_ID" \
  https://YOUR-WORKER.workers.dev/debug/test-refresh

# Force token refresh
curl -H "Authorization: Bearer SESSION_ID" \
  "https://YOUR-WORKER.workers.dev/debug/test-refresh?force=true"

Notes

  • Tokens stored in Cloudflare KV (no expiry, persists until Granola invalidates)
  • Access tokens auto-refresh before expiry
  • Read-only access to Granola API
  • Reverse-engineered from Granola Electron app v6.267.0

License

MIT. Not affiliated with Granola.

Reviews

No reviews yet

Sign in to write a review