Skip to content

Repository files navigation

Claude Plugin Gmail

Gmail channel plugin for Claude Code. It follows the Claude channel contract from the official channels reference: the server connects over stdio, declares experimental["claude/channel"], emits notifications/claude/channel, and exposes basic Gmail MCP tools.

What it does

  • subscribes to Gmail mailbox updates through users.watch
  • receives events through Google Cloud Pub/Sub
  • resolves mailbox changes through users.history.list
  • emits notifications/claude/channel events into Claude
  • exposes Gmail tools for reading and modifying messages

Channel events

This plugin emits notifications/claude/channel only for new mail:

  • message_added

Implemented tools

  • gmail_list_recent
  • gmail_get_message
  • gmail_mark_read
  • gmail_archive_message
  • gmail_modify_labels

Commands

Install dependencies:

bun install

Type-check:

bun run check

Run the channel server:

bun run start

Run the console smoke test:

bun run smoke

Run setup and integration checks:

bun run doctor

Run Gmail OAuth bootstrap:

bun run auth

bun run auth starts a temporary local HTTP callback server on the configured oauthRedirectUri, captures the Google OAuth code automatically, and saves the refresh token into ./.state/oauth.json.

Config

Primary project config:

./gmail-channel.config.json

Example template:

./gmail-channel.config.example.json

Repo-local secrets and state:

  • service account key: ./.secrets/gcp-service-account.json
  • OAuth state: ./.state/oauth.json
  • runtime state: ./.state/state.json

Setup

Full setup instructions are in SETUP.md.

References

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages