From 256a21aa364cddff8c0d0a91a9214f8936510df1 Mon Sep 17 00:00:00 2001 From: Paul Vann Date: Mon, 14 Sep 2026 17:45:04 -0400 Subject: [PATCH] Request dm.read and dm.write on the X plugin. X Chat MCP tools need those scopes, and existing installs must sign in again to pick them up. Co-authored-by: Cursor --- .cursor-plugin/marketplace.json | 2 +- third_party/x/.cursor-plugin/plugin.json | 5 +++-- third_party/x/CHANGELOG.md | 5 +++++ third_party/x/README.md | 7 +++++-- third_party/x/mcp.json | 2 ++ 5 files changed, 16 insertions(+), 5 deletions(-) diff --git a/.cursor-plugin/marketplace.json b/.cursor-plugin/marketplace.json index a3d15f20d..98137ca8e 100644 --- a/.cursor-plugin/marketplace.json +++ b/.cursor-plugin/marketplace.json @@ -141,7 +141,7 @@ { "name": "x", "source": "third_party/x", - "description": "Search posts, read timelines, pull trends, and manage bookmarks." + "description": "Search posts, read timelines, pull trends, manage bookmarks, and access X Chat." }, { "name": "clay", diff --git a/third_party/x/.cursor-plugin/plugin.json b/third_party/x/.cursor-plugin/plugin.json index 5ca54ee8a..79d0e0be6 100644 --- a/third_party/x/.cursor-plugin/plugin.json +++ b/third_party/x/.cursor-plugin/plugin.json @@ -1,11 +1,11 @@ { "name": "x", "displayName": "X", - "version": "2.2.0", + "version": "2.4.0", "minClientVersions": { "cursor": "3.13.0" }, - "description": "Search posts, read timelines, pull trends, and manage bookmarks.", + "description": "Search posts, read timelines, pull trends, manage bookmarks, and access X Chat.", "author": { "name": "Cursor", "email": "plugins@cursor.com" @@ -23,6 +23,7 @@ "news", "lists", "bookmarks", + "chat", "social", "mcp" ], diff --git a/third_party/x/CHANGELOG.md b/third_party/x/CHANGELOG.md index ccbd00cf6..46478d3c8 100644 --- a/third_party/x/CHANGELOG.md +++ b/third_party/x/CHANGELOG.md @@ -2,6 +2,11 @@ All notable changes to this plugin will be documented here. +## 2.4.0 — X Chat scopes + +- Requested `dm.read` and `dm.write` so agents can call X Chat endpoints on `https://api.x.com/mcp`. +- Existing installs need to sign in to X again to pick up the new scopes. + ## 2.3.0 — Auto credits, missing-tools failure, never pay first - Developer accounts are auto-created and auto-credited. On connect, agents confirm X tools exist, fetch `get_usage_credits`, then congratulate with “you've received free X API credits to get started” (no dollar amount). Starter amounts by plan (Ultra $100, SuperGrok Plus $50, Pro+ $30, Pro $10) only if the user asks how much they received. Remaining balance (`total_balance`) is for budgets and “what's left.” diff --git a/third_party/x/README.md b/third_party/x/README.md index cd55178e0..aa1d7649a 100644 --- a/third_party/x/README.md +++ b/third_party/x/README.md @@ -2,7 +2,7 @@ Cursor plugin that connects agents to the [X API](https://docs.x.com) through X's official hosted [Model Context Protocol](https://modelcontextprotocol.io/) server at `https://api.x.com/mcp`. -This plugin signs you in with OAuth as your own X account. It is no longer read-only: alongside searching and reading public X data, agents can manage your lists, bookmarks, blocks, and mutes. +This plugin signs you in with OAuth as your own X account. It is no longer read-only: alongside searching and reading public X data, agents can manage your lists, bookmarks, blocks, and mutes, and call X Chat endpoints. ## Install @@ -35,6 +35,8 @@ Or run `/add-plugin x` in chat. "block.write", "bookmark.read", "bookmark.write", + "dm.read", + "dm.write", "developer.billing.write", "developer.write", "offline.access" @@ -57,6 +59,7 @@ Or run `/add-plugin x` in chat. | Lists | Read and manage your lists | | Bookmarks | Read and manage your bookmarks | | Blocks & mutes | Read your blocks and mutes; add or remove blocks | +| Chat | List conversations, fetch events, send messages, typing, and read receipts | | Developer account | Read your X developer account settings and credit balance | Posting is not included: the plugin does not request the `tweet.write` scope, so agents cannot publish posts as you. @@ -69,7 +72,7 @@ Requests run in your user context, so they count against your account's rate lim ## Scopes requested -`tweet.read`, `users.read`, `follows.read`, `space.read`, `mute.read`, `like.read`, `list.read`, `list.write`, `block.read`, `block.write`, `bookmark.read`, `bookmark.write`, `developer.billing.write`, `developer.write`, `offline.access` +`tweet.read`, `users.read`, `follows.read`, `space.read`, `mute.read`, `like.read`, `list.read`, `list.write`, `block.read`, `block.write`, `bookmark.read`, `bookmark.write`, `dm.read`, `dm.write`, `developer.billing.write`, `developer.write`, `offline.access` ## X documentation search diff --git a/third_party/x/mcp.json b/third_party/x/mcp.json index 388197238..bb459cd2b 100644 --- a/third_party/x/mcp.json +++ b/third_party/x/mcp.json @@ -18,6 +18,8 @@ "block.write", "bookmark.read", "bookmark.write", + "dm.read", + "dm.write", "developer.billing.write", "developer.write", "offline.access"