Multi-account Gmail + Google Calendar MCP server (stdio) with env-var-only OAuth credentials.
Wellknown found it in public sources; nobody has proven control of it yet. Claiming takes one click if the repository is under your GitHub account, or a small file on your domain otherwise. Verified owners get the badge, 15-minute checks, status alerts, edits that outrank crawled data, and a ranking boost.
Agents can do it too: POST https://wellknown.network/api/v1/claims with {"agent":"gmail-calendar-mcp","method":"well_known_file"} — machine-readable steps at claim.json, guide at /docs/claim.
Everything here was measured by our prober or read from a registry. Nothing is self-reported.
Attributed to the source that supplied each field. Treated as claims, not facts.
# Gmail + Calendar MCP Server A multi-account [Model Context Protocol](https://modelcontextprotocol.io) server for **Gmail and Google Calendar** (72 tools). Runs over **stdio**, installs via **uvx**, and takes **all credentials from environment variables** — the host running the server never needs a `credentials.json` or `token.json` file. - One shared Google OAuth "Desktop" client authorizes every account. - Each account contributes only its **refresh token** (one token covers both Gmail and Calendar). - Every tool takes an `account` argument to pick the account and an optional `password` (see below). ## How credentials work (2 env vars + 1 optional) | Variable | Required | Format | Example | | --- | --- | --- | --- | | `GMAIL_CLIENT` | yes | `client_id\|client_secret` | `123-abc.apps.googleusercontent.com\|GOCSPX-xxxx` | | `GMAIL_ACCOUNTS` | yes | `selector=refresh_token` pairs, separated by `;` or newlines | `alice@gmail.com=1//0gFoo;work=1//0gBar` | | `PASSWORDS` | no | `selector=password` pairs, separated by `;` or newlines | `alice@gmail.com=hunter2;work=s3cret` | The `selector` defaults to the account's email but you can rename it to a short alias (`work`, `personal`). You never hand-write the credential values — the `gmail-mcp-auth` command prints them. ### Password protection (optional) Set `PASSWORDS` to require a per-account password on **every** tool call. When it's set, the gate is **on**: each call must pass `password` matching that account's entry, or the tool returns `Invalid password for account '…'` and does nothing (no Gmail request is made). Passwords are compared in constant time. Notes: - Keys must match your `GMAIL_ACCOUNTS` selectors (case-insensitively). A `PASSWORDS` key that matches no account makes the server **refuse to start**. An account with no `PASSWORDS` entry is **locked** (no password can unlock it) while the gate is on — the server logs which accounts are locked at startup. - Passwords cannot contain `=`, `;`, or n…
Mapped onto the structured taxonomy from declared text and observed tool names. Confidence shown for derived entries.
Every source is kept verbatim. Field changes are logged as events.