Labsco
MCP SERVER

Google Docs

by mackenzienolan

Remote Google Docs server you deploy yourself — read, create and append to documents over SSE.

Office Suites & Cloud File Storage
Summary
Multi-user by design, which is why there is a database.

Most Google Docs servers are one person's local process holding one refresh token. This is built the other way round: users sign in through your deployment, refresh tokens are encrypted in Postgres, and access is isolated per user — so a team can share one endpoint. That buys real infrastructure cost, a Postgres and a Redis before the first document is read, which is the right trade only if more than one person is using it.

What it is

A Next.js application that runs as a remote MCP server for Google Docs, deployed on Vercel and reached over SSE. It handles Google OAuth for you, stores per-user tokens, and supports several users against one deployment with isolated access. Authorisation happens on demand from inside the assistant rather than as a setup step.

What you get
  • `authorize_google` starts the OAuth flow and returns a link — run it first
  • `read_document` reads the content of a Google Doc
  • `create_document` makes a new one
  • `update_document` applies batch edits to an existing document
  • `append_text` adds text to the end of a document
  • `list_documents` lists the documents you have access to
  • A web dashboard for issuing API keys when you want programmatic access instead
Requirements

You host it. A Google Cloud project with the Docs and Drive APIs enabled and an OAuth 2.0 web client, a PostgreSQL database, a Redis instance for the Vercel MCP adapter, and a Vercel deployment carrying `NEXTAUTH_SECRET`, `NEXTAUTH_URL`, `GOOGLE_CLIENT_ID`, `GOOGLE_CLIENT_SECRET`, `DATABASE_URL` and `REDIS_URL`. Run `pnpm db:push` after deploying. Clients connect with `claude mcp add --transport sse` to your `/sse` endpoint; an `X-API-Key` header is the alternative to browser sign-in.

Setup effort

One command plus a key — claude mcp add --transport sse google-docs https://your-app.vercel.app/sse, then supply credentials