Everything you need to install, configure, and use PRISM.
npm, binary, Docker
OAuth setup
Claude, Cursor, etc.
All 92 tools
Pre-built binaries for Windows, macOS, and Linux are available on the GitHub Releases page.
Requirements: Node.js 22 or later. PRISM is built on Node 24 but supports 22+.
PRISM uses OAuth 2.0 with PKCE to authenticate with Gmail. Here's how to set it up:
Create a Google Cloud Project
Go to console.cloud.google.com and create a new project. Name it anything (e.g., "PRISM Email").
Enable the Gmail API
In your project, go to APIs & Services → Library. Search for "Gmail API" and click Enable.
Create OAuth Credentials
Go to APIs & Services → Credentials → Create Credentials → OAuth client ID.
Configure OAuth Consent Screen
Go to OAuth consent screen. Choose External user type. Fill in app name and your email. Add these scopes:
Add your email as a test user under Test users.
Place credentials and authenticate
Your browser opens. Sign in with Google. Tokens are encrypted with AES-256-GCM and stored locally.
Security note: PRISM never sees your Google password. OAuth tokens are encrypted on your machine with a key derived from your hardware. Even if someone copies the token file, they can't decrypt it on a different machine.
Outlook support uses Microsoft Graph API via MSAL. Documentation coming soon. For now, see the setup guide on GitHub.
Add PRISM to your AI client's MCP configuration.
Edit ~/.claude/.mcp.json:
{
"mcpServers": {
"prism": {
"command": "prism"
}
}
} Edit ~/.cursor/mcp.json:
{
"mcpServers": {
"prism": {
"command": "prism"
}
}
} Any MCP-compatible client works. Just point the command to the prism binary. PRISM uses stdio transport by default.
PRISM exposes these tools to your AI client. Free-tier tools are marked with ●, Pro tools with ●.
messages_list — Search/list messagesmessages_get — Get message by IDmessages_send — Send emailmessages_trash — Move to trashmessages_untrash — Restore from trashmessages_modify — Add/remove labelsmessages_count — Count matching messagesmessages_get_headers — Headers onlymailbox_search_count — Fast search countmailbox_stats — Inbox statisticsmessages_delete — Permanent delete (2-step)messages_get_raw — Raw RFC2822 sourcemessages_import — Import messagemessages_insert — Insert messagemessages_batch_delete — Bulk deletemessages_batch_modify — Bulk label changesthreads_list — Search/list threadsthreads_get — Full thread with messagesthreads_get_messages — Message IDs in threadthreads_count — Count threadsthreads_modify — Modify thread labelsthreads_trash — Trash threadthreads_untrash — Restore threadthreads_delete — Permanent deletethreads_batch_modify — Bulk modifyThread count shows 10; 9 listed here + messages_batch_trash which also operates on threads.
All draft, label, filter, and attachment tools are free-tier. See the full tool reference on GitHub for complete documentation with parameters and examples.
These categories require a Pro or Team license:
Your OAuth token doesn't have the right permissions. Run prism auth again and make sure all 4 Gmail scopes are enabled in your Google Cloud Console.
Download your OAuth client credentials from Google Cloud Console and place the file at ~/.prism/credentials.json.
Your refresh token expired (happens if your app is in "Testing" mode and hasn't been used in 7 days). Run prism auth to re-authenticate.
PRISM has built-in rate limiting, but if you hit Google's quota, wait a few seconds and retry. The retry middleware handles this automatically for most cases.
That tool is in the Pro tier. Run prism status to see your current tier, or prism activate <key> to activate a license.