[BUG] MCP block at calendard.google.com
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
Google Calendar connector missing; Gmail connector exists but calendar.google.com navigation blocked in Chrome MCP
The Gmail connector reads your Grove email because it has a proper API integration with OAuth scope for mail.read. Google Calendar needs the same thing — a connector with calendar.readonly scope. That connector doesn't exist in your current setup.
The real fix: a Google Calendar API connector, equivalent to what you have for Gmail. That's an Anthropic product gap, not a configuration problem on your end. Worth filing at [github.com/anthropics/claude-code/issues](https://github.com/anthropics/claude-code/issues) — "Google Calendar connector missing; Gmail connector exists but calendar.google.com navigation blocked in Chrome MCP" is a clean bug report.
Until then, the screenshot is the workaround — but you're right that it shouldn't be necessary, and I should have gotten here faster instead of sending you hunting through extension settings.
What Should Happen?
Claude should be able to read my Google Calendar as part of my daily workflow. I'm not asking for write permissions, just read.
Error Messages/Logs
##Claude message
That's the real answer: navigate returns "Navigation to this domain is not allowed" — calendar.google.com is blocked at the MCP server level, not in your settings. No amount of approving sites in the extension changes it.
Here's the actual picture:
|What you have | How it works
|Gmail (Grove) | API connector — direct OAuth call, no browser needed
|Outlook calendar (EF) |API connector — same
|Google Calendar (Grove) | No connector exists — only path was Chrome extension, which MCP blocks
The Gmail connector reads your Grove email because it has a proper API integration with OAuth scope for mail.read. Google Calendar needs the same thing — a connector with calendar.readonly scope. That connector doesn't exist in your current setup.
Steps to Reproduce
- Install the Claude in Chrome extension and connect a Google Workspace account
via the Gmail connector (OAuth, mail.read scope).
- In a Claude Code session with the Claude in Chrome MCP enabled, attempt to
navigate to Google Calendar:
mcp__Claude_in_Chrome__navigate({ url: "https://calendar.google.com/calendar/u/0/r" })
- Observe error: "Navigation to this domain is not allowed"
- As a workaround, open calendar.google.com manually in Chrome. The Claude
extension is active on the page (glowing border, Stop Claude button visible),
confirming the extension itself is not blocking the domain.
- From the same Claude Code session, attempt to read the open calendar tab:
mcp__Claude_in_Chrome__get_page_text({ tabId: <id of calendar tab> })
- Observe error: "Permission denied for reading page content on this domain"
Expected: The Chrome MCP can read calendar.google.com, consistent with the
extension being active on the page and with the Gmail connector already having
read access to the same Google account.
Actual: Both navigation and page-text reading are blocked at the MCP layer.
The Gmail connector reads Grove Hydrogen email (david.leese@grovehydrogen.com)
successfully via OAuth, but no equivalent connector exists for Google Calendar,
and the Chrome MCP blocks the only available fallback path.
Claude Model
Sonnet (default)
Is this a regression?
I don't know
Last Working Version
_No response_
Claude Code Version
2.1.178
Platform
Anthropic API
Operating System
Windows
Terminal/Shell
PowerShell
Additional Information
##bug report relevant framing
Platform context: The Microsoft 365 connector (Microsoft Graph API) is available and works correctly for Outlook email and calendar. No equivalent connector exists for Google Workspace (Gmail / Google Calendar). The Claude in Chrome MCP is the only available path for Google Calendar, but calendar.google.com is blocked at the MCP server level (navigate returns "Navigation to this domain is not allowed"; get_page_text returns "Permission denied for reading page content on this domain"). A Google Workspace connector with calendar.readonly scope would resolve this — equivalent to the existing M365 connector.