Google Calendar MCP: OAuth scopes error in CLI but works in desktop app
Description
Google Calendar MCP tools return an "Insufficient Google OAuth scopes" error when used in Claude Code CLI (interactive mode), but the same Google Calendar integration works correctly in the Claude desktop app / claude.ai web app.
Environment
- Claude Code version: 2.1.116
- Platform: macOS (Darwin 25.2.0)
- Shell: zsh
- Mode: Interactive
Steps to Reproduce
- Connect Google Calendar in claude.ai/settings (workspace admin has granted permissions to the Claude Drive app)
- Verify Google Calendar works in the Claude desktop app (it does)
- Open Claude Code CLI in interactive mode
- Call any Google Calendar tool (e.g.,
gcal_find_my_free_time)
Expected Behavior
Google Calendar tools should work in Claude Code CLI the same way they work in the desktop app, since they share the same cloud-managed MCP integration and OAuth connection.
Actual Behavior
Returns error:
{
"error": "Insufficient Google OAuth scopes",
"details": "The connected Google account was authorized without the Calendar scopes this tool requires. The user must disconnect and reconnect Google Calendar, making sure to allow correct scopes when prompted."
}
Troubleshooting Already Attempted
- Disconnected and reconnected Google Calendar in claude.ai/settings
- Confirmed workspace admin granted permissions to the Claude Drive app
- Updated Claude Code to latest version (2.1.116)
- Confirmed the integration works in the Claude desktop app with the same account
Additional Context
My Claude account is tied to a personal Gmail address, but the Google Calendar I'm trying to access is on a separate Google Workspace (business) account. The Workspace admin has granted permissions to the Claude Drive app. The desktop app successfully connects to the Workspace calendar, but the CLI may not be resolving to the correct Google account/token.
Possibly Related Issues
- #47417 (OAuth token issues with MCP)
- #48130 (Gmail connector not responding after OAuth)
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗