Summary
The Gmail connector exposes create_filter, list_filters (and related filter tools), but calling them fails with 403 after trying upscoping. Google Account → Linked Apps shows the Cursor/Grok app only has “See (but not change) your email settings”, so filter create/list cannot work. Re-auth does not help: Google never requests a settings-write scope during consent.
Environment
- Product: Grok Bot / Cursor Gmail MCP connector
- Plugin id (from install):
45893410
- MCP server id:
user-Gmail--shark5060-gmail-com
- Account: personal Gmail (example:
shark5060@gmail.com)
- Other Gmail tools work:
list_labels, search_threads, label apply, etc.
Steps to reproduce
- Install/connect the Gmail plugin and complete OAuth.
- Confirm mail tools work (e.g.
list_labels, search_threads).
- Call
list_filters or create_filter (e.g. criteria from: youtube.com, action add a user label + remove INBOX).
- Optionally force re-auth (
AuthenticateMcpServer with force_reauth) and approve all consent screens again.
- Retry
create_filter / list_filters.
Expected
- Filter tools succeed, or
- OAuth consent requests
https://www.googleapis.com/auth/gmail.settings.basic so Linked Apps shows edit/create/change settings & filters, then tools work after re-consent.
Actual
- Tool call error (approx.):
HTTP MCP tool execution failed: … Server returned 403 after trying upscoping
- Google Linked Apps for the Cursor app under Gmail includes wording like:
- See (but not change) your email settings
- View your settings (e.g., filters and labels)
- There is no Linked Apps toggle to grant settings write; only delete connection.
- Label create/update and message labeling still work (consistent with
gmail.modify, not settings write).
Why this matters
Without users.settings.filters.*, agents cannot install durable server-side routing (skip Inbox + apply label) and must re-label mail after arrival. The tools being present implies filter management is intended.
API / scope note
Per Gmail API users.settings.filters.create, create requires:
https://www.googleapis.com/auth/gmail.settings.basic
(Gmail scopes: that scope is “See, edit, create, or change your email settings and filters in Gmail.”)
gmail.modify covers labels/messages but not filter settings write — matching the Linked Apps “see but not change” text.
Suggested fix
- Add
gmail.settings.basic to the Gmail plugin OAuth client / consent scope list.
- Document that existing users must re-consent after the scope is added.
- Ensure upscoping actually requests that scope (current “403 after trying upscoping” suggests upscope does not obtain write settings).
Workaround
Create filters manually (or via browser automation) in Gmail Settings → Filters and Blocked Addresses until the connector requests the correct scope.
Related (third-party, not Cursor)
Other Gmail MCP projects have discussed the same scope requirement, e.g. needing gmail.settings.basic for filter tools — same underlying Google API constraint.
Summary
The Gmail connector exposes
create_filter,list_filters(and related filter tools), but calling them fails with 403 after trying upscoping. Google Account → Linked Apps shows the Cursor/Grok app only has “See (but not change) your email settings”, so filter create/list cannot work. Re-auth does not help: Google never requests a settings-write scope during consent.Environment
45893410user-Gmail--shark5060-gmail-comshark5060@gmail.com)list_labels,search_threads, label apply, etc.Steps to reproduce
list_labels,search_threads).list_filtersorcreate_filter(e.g. criteriafrom: youtube.com, action add a user label + removeINBOX).AuthenticateMcpServerwithforce_reauth) and approve all consent screens again.create_filter/list_filters.Expected
https://www.googleapis.com/auth/gmail.settings.basicso Linked Apps shows edit/create/change settings & filters, then tools work after re-consent.Actual
HTTP MCP tool execution failed: … Server returned 403 after trying upscopinggmail.modify, not settings write).Why this matters
Without
users.settings.filters.*, agents cannot install durable server-side routing (skip Inbox + apply label) and must re-label mail after arrival. The tools being present implies filter management is intended.API / scope note
Per Gmail API
users.settings.filters.create, create requires:https://www.googleapis.com/auth/gmail.settings.basic(Gmail scopes: that scope is “See, edit, create, or change your email settings and filters in Gmail.”)
gmail.modifycovers labels/messages but not filter settings write — matching the Linked Apps “see but not change” text.Suggested fix
gmail.settings.basicto the Gmail plugin OAuth client / consent scope list.Workaround
Create filters manually (or via browser automation) in Gmail Settings → Filters and Blocked Addresses until the connector requests the correct scope.
Related (third-party, not Cursor)
Other Gmail MCP projects have discussed the same scope requirement, e.g. needing
gmail.settings.basicfor filter tools — same underlying Google API constraint.