x-developer 2.5.2 → 2.5.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/.claude-plugin/marketplace.json +4 -4
  2. package/.claude-plugin/plugin.json +2 -2
  3. package/.codex-plugin/plugin.json +3 -3
  4. package/.mcp.json +1 -4
  5. package/README.md +9 -7
  6. package/context7.json +2 -0
  7. package/openclaw.plugin.json +2 -2
  8. package/package.json +1 -1
  9. package/scripts/release-guard/content-policy.mjs +16 -10
  10. package/scripts/release-guard/policy.mjs +0 -4
  11. package/server.json +22 -18
  12. package/skills/x-twitter-scraper/SKILL.md +5 -3
  13. package/skills/x-twitter-scraper/metadata.json +1 -1
  14. package/skills/x-twitter-scraper/references/mcp-setup.md +229 -107
  15. package/skills/x-twitter-scraper/references/mcp-tools.md +4 -1
  16. package/skills/x-twitter-scraper/skill-card.md +2 -2
  17. package/skills/x-twitter-scraper/skillspector-report.md +1 -1
  18. package/skills/xquik-social-research/SKILL.md +2 -0
  19. package/skills.sh.json +1 -1
  20. package/stub-server.mjs +2 -2
  21. package/task-guides/check-mutuals.md +1 -1
  22. package/task-guides/clean-followers.md +1 -1
  23. package/task-guides/export-tweets-csv.md +1 -1
  24. package/task-guides/extract-followers.md +1 -1
  25. package/task-guides/find-bangers.md +1 -1
  26. package/task-guides/find-influencers.md +1 -1
  27. package/task-guides/find-viral-tweets.md +1 -1
  28. package/task-guides/follow-unfollow.md +1 -1
  29. package/task-guides/for-you-feed.md +1 -1
  30. package/task-guides/going-viral.md +1 -1
  31. package/task-guides/grow-followers.md +1 -1
  32. package/task-guides/monitor-accounts.md +1 -1
  33. package/task-guides/optimize-tweets.md +1 -1
  34. package/task-guides/post-tweets.md +2 -2
  35. package/task-guides/run-giveaway.md +1 -1
  36. package/task-guides/search-tweets.md +1 -1
  37. package/task-guides/send-dms.md +1 -1
  38. package/task-guides/top-replies.md +1 -1
  39. package/task-guides/track-competitors.md +1 -1
  40. package/task-guides/track-hashtags.md +1 -1
  41. package/task-guides/track-mentions.md +1 -1
  42. package/task-guides/trending-news.md +1 -1
  43. package/task-guides/tweet-analytics.md +1 -1
  44. package/task-guides/tweet-ideas.md +1 -1
  45. package/task-guides/tweet-replies.md +1 -1
  46. package/task-guides/tweet-style.md +1 -1
  47. package/task-guides/tweet-webhooks.md +1 -1
  48. package/task-guides/update-x-profile.md +1 -1
  49. package/task-guides/user-tweets.md +1 -1
  50. package/task-guides/who-liked.md +1 -1
  51. package/task-guides/who-quoted.md +1 -1
  52. package/task-guides/who-retweeted.md +1 -1
  53. package/task-guides/write-threads.md +1 -1
  54. package/task-guides/write-tweets.md +1 -1
  55. package/task-guides/x-articles.md +1 -1
  56. package/task-guides/x-bookmarks.md +1 -1
  57. package/task-guides/x-communities.md +1 -1
  58. package/task-guides/x-lists.md +1 -1
  59. package/task-guides/x-spaces.md +1 -1
  60. package/task-guides/x-trends.md +1 -1
@@ -5,15 +5,15 @@
5
5
  "email": "support@xquik.com"
6
6
  },
7
7
  "metadata": {
8
- "description": "Xquik X Twitter scraper API skill for AI agents with 123 REST operations and 118 MCP operations through 2 tools. Not affiliated with X Corp.",
9
- "version": "2.5.2"
8
+ "description": "Xquik X Twitter scraper API skill for AI agents with 126 REST operations and 118 MCP operations through 2 tools. Not affiliated with X Corp.",
9
+ "version": "2.5.4"
10
10
  },
11
11
  "plugins": [
12
12
  {
13
13
  "name": "x-twitter-scraper",
14
14
  "source": "./",
15
- "description": "123 REST operations, 118 MCP operations through 2 tools, 23 extraction types, SDKs, webhooks, exports, and confirmation-gated writes. Not affiliated with X Corp.",
16
- "version": "2.5.2",
15
+ "description": "126 REST operations, 118 MCP operations through 2 tools, 23 extraction types, SDKs, webhooks, exports, and confirmation-gated writes. Not affiliated with X Corp.",
16
+ "version": "2.5.4",
17
17
  "author": {
18
18
  "name": "Xquik"
19
19
  },
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "x-twitter-scraper",
3
- "version": "2.5.2",
4
- "description": "Xquik agent skill & plugin bundle. Not affiliated with X Corp. Includes 123 REST operations, 118 MCP operations through 2 tools, SDKs, webhooks, exports & approved X workflows.",
3
+ "version": "2.5.4",
4
+ "description": "Xquik agent skill & plugin bundle. Not affiliated with X Corp. Includes 126 REST operations, 118 MCP operations through 2 tools, SDKs, webhooks, exports & approved X workflows.",
5
5
  "author": {
6
6
  "name": "Xquik",
7
7
  "url": "https://github.com/Xquik-dev"
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "x-twitter-scraper",
3
- "version": "2.5.2",
4
- "description": "Xquik agent skill & plugin bundle. Not affiliated with X Corp. Includes 123 REST operations, 118 MCP operations through 2 tools, SDKs, webhooks, exports & approved X workflows.",
3
+ "version": "2.5.4",
4
+ "description": "Xquik agent skill & plugin bundle. Not affiliated with X Corp. Includes 126 REST operations, 118 MCP operations through 2 tools, SDKs, webhooks, exports & approved X workflows.",
5
5
  "author": {
6
6
  "name": "Xquik",
7
7
  "url": "https://github.com/Xquik-dev"
@@ -38,7 +38,7 @@
38
38
  "interface": {
39
39
  "displayName": "X Twitter Scraper",
40
40
  "shortDescription": "Use Xquik for X data, MCP, SDKs, and gated actions. Not affiliated with X Corp.",
41
- "longDescription": "Use the X Twitter Scraper skill to guide agents through 123 Xquik REST operations, 118 MCP operations through 2 tools, SDKs, webhooks, extractions, monitoring, exports, and confirmation-gated actions. Not affiliated with X Corp.",
41
+ "longDescription": "Use the X Twitter Scraper skill to guide agents through 126 Xquik REST operations, 118 MCP operations through 2 tools, SDKs, webhooks, extractions, monitoring, exports, and confirmation-gated actions. Not affiliated with X Corp.",
42
42
  "developerName": "Xquik",
43
43
  "category": "Productivity",
44
44
  "composerIcon": "./assets/icon.svg",
package/.mcp.json CHANGED
@@ -2,10 +2,7 @@
2
2
  "mcpServers": {
3
3
  "xquik": {
4
4
  "type": "http",
5
- "url": "https://xquik.com/mcp",
6
- "headers": {
7
- "x-api-key": "${user_config.api_key}"
8
- }
5
+ "url": "https://xquik.com/mcp"
9
6
  }
10
7
  }
11
8
  }
package/README.md CHANGED
@@ -23,9 +23,11 @@ This repository packages Xquik as an [AI agent skill](https://skills.sh) for Cla
23
23
 
24
24
  The npm package `x-developer` is this agent skill and plugin bundle. The separate `x-twitter-scraper` package is the typed TypeScript SDK.
25
25
 
26
- Includes 123 REST API operations, HMAC webhooks, 23 extraction tools, SDK pointers, and confirmation-gated writes.
26
+ Includes 126 REST API operations, HMAC webhooks, 23 extraction tools, SDK pointers, and confirmation-gated writes.
27
27
 
28
- MCP v2.5.2 exposes 118 MCP operations through 2 tools. It excludes 5 sensitive REST operations. These cover API key creation, listing, and revocation, saved-payment top-ups, and dashboard checkout redirects.
28
+ MCP v2.5.4 exposes 118 MCP operations through 2 tools. Add `https://xquik.com/mcp`, then follow the [current client compatibility path](https://docs.xquik.com/mcp/overview#client-compatibility). OAuth-capable clients complete OAuth 2.1; API-key fallback is client-specific; ChatGPT custom apps require OAuth. Eight credential or session-bound REST operations remain outside MCP: 3 account API-key operations, saved-payment top-up, account top-up redirect, and 3 guest-wallet credential operations.
29
+
30
+ > **Codex OAuth compatibility:** Affected Codex releases discard the RFC 9207 `iss` callback value even though Xquik returns it. If Codex reports `Authorization server response missing required issuer: expected https://xquik.com`, use `XQUIK_API_KEY` through the Codex `bearer_token_env_var` setting. Follow the [Codex OAuth troubleshooting guide](https://docs.xquik.com/guides/troubleshooting#codex-oauth-issuer-validation-error) and track [openai/codex#31573](https://github.com/openai/codex/issues/31573).
29
31
 
30
32
  ## Why Teams Use Xquik
31
33
 
@@ -33,7 +35,7 @@ MCP v2.5.2 exposes 118 MCP operations through 2 tools. It excludes 5 sensitive R
33
35
  - **Ship X data integrations faster** with endpoint routing for tweet search, user lookup, timelines, followers, replies, quotes, retweeters, favoriters, media, lists, communities, articles, trends, and Spaces.
34
36
  - **Build production apps, not just dataset runs** with REST APIs, typed SDKs, OpenAPI, MCP tools, cursor pagination, webhook delivery, and exports.
35
37
  - **Control large jobs before they run** with usage estimates for extractions, draws, monitors, webhooks, and other metered workflows.
36
- - **Keep agents safe around X content** with API-key-only auth, read-only defaults, untrusted-content delimiters, and explicit approval for private reads, writes, persistent resources, and bulk jobs.
38
+ - **Keep agents safe around X content** with OAuth-first MCP, scoped API-key access, read-only defaults, untrusted-content delimiters, and explicit approval for private reads, writes, persistent resources, and bulk jobs.
37
39
  - **Support enterprise-scale X data pipelines** with high-throughput read limits, bulk extraction jobs, exports, event replay, and webhook automation.
38
40
  - **Win high-intent search traffic** for Twitter scraper API, X scraper, X API alternative, tweet search API, Twitter follower export, social listening API, X monitoring, and X automation.
39
41
 
@@ -174,14 +176,14 @@ When installed, this skill gives your AI coding assistant deep knowledge of the
174
176
  - **Tweet composition**: Algorithm-optimized tweet composer with scoring
175
177
  - **Usage guardrails**: Check balance and estimate usage; dashboard handles plan and credit changes
176
178
  - **Support tickets**: Open and manage support tickets via API
177
- - **MCP server**: MCP v2.5.2 exposes 118 operations through 2 tools
179
+ - **MCP server**: MCP v2.5.4 exposes 118 operations through 2 tools with OAuth 2.1 discovery
178
180
 
179
181
  ## Capabilities
180
182
 
181
183
  | Area | Details |
182
184
  |------|---------|
183
- | **REST API** | 123 operations across 10 categories with retry logic and pagination |
184
- | **MCP Server** | 118 operations through 2 tools (`explore` + `xquik`), with Streamable HTTP configs for 10 platforms |
185
+ | **REST API** | 126 operations across 10 categories with retry logic and pagination |
186
+ | **MCP Server** | 118 operations through 2 tools (`explore` + `xquik`), with OAuth-first Streamable HTTP setup |
185
187
  | **Data Extraction** | 23 bulk extraction tools (replies, retweets, quotes, favoriters, threads, articles, user likes, user media, communities, lists, Spaces, people search, tweet search, mentions, posts) |
186
188
  | **X Lookups** | Tweet, user, article, search, user tweets, user likes, user media, favoriters, mutual followers, and confirmation-gated private reads |
187
189
  | **Write Actions** | Confirmation-gated post/delete tweets, like/unlike, retweet, follow/unfollow, remove followers, DM, profile update, avatar/banner, media upload, community actions |
@@ -252,7 +254,7 @@ x-twitter-scraper/
252
254
  │ ├── api-endpoints.md # REST API routing index
253
255
  │ ├── api-endpoints-*.md # Split endpoint sections for targeted agent loading
254
256
  │ ├── mcp-tools.md # MCP tool selection rules and workflow patterns
255
- │ ├── mcp-setup.md # MCP configs for 10 platforms (v2 + v1)
257
+ │ ├── mcp-setup.md # Current MCP client setup and compatibility
256
258
  │ ├── webhooks.md # Webhook setup & verification
257
259
  │ ├── extractions.md # 23 extraction tool types
258
260
  │ ├── types.md # TypeScript type routing index
package/context7.json CHANGED
@@ -24,6 +24,8 @@
24
24
  "rules": [
25
25
  "Use README.md for installation, comparison copy, SDK links, API coverage, and MCP setup.",
26
26
  "Use skills/x-twitter-scraper/SKILL.md as the primary agent operating guide.",
27
+ "Use https://docs.xquik.com/mcp/overview#client-compatibility as the canonical current MCP client matrix. Do not assume every client supports OAuth: Cline and Qwen Code support OAuth; affected Codex and Goose releases need environment-backed API keys; Roo Code's archived final release is API-key-only; Pi has no native MCP client.",
28
+ "If Codex reports Authorization server response missing required issuer: expected https://xquik.com, do not repeat OAuth. Affected Codex releases discard the RFC 9207 iss value even though Xquik returns it. Set XQUIK_API_KEY and bearer_token_env_var = \"XQUIK_API_KEY\" in Codex TOML, then use https://docs.xquik.com/guides/troubleshooting#codex-oauth-issuer-validation-error and track https://github.com/openai/codex/issues/31573.",
27
29
  "Use task-guides/*.md for task-specific workflows such as search, extraction, monitoring, webhooks, posting, and DMs.",
28
30
  "Use commands/*.md for slash-command examples.",
29
31
  "Keep implementation details public-safe; use Xquik API, read service, write service, or browser service wording."
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "id": "x-developer",
3
3
  "name": "X Developer API",
4
- "description": "Xquik X Twitter scraper API skill with 123 REST operations, 118 MCP operations through 2 tools, SDKs, webhooks, exports, and gated actions. Not affiliated with X Corp.",
5
- "version": "2.5.2",
4
+ "description": "Xquik X Twitter scraper API skill with 126 REST operations, 118 MCP operations through 2 tools, SDKs, webhooks, exports, and gated actions. Not affiliated with X Corp.",
5
+ "version": "2.5.4",
6
6
  "skills": ["./skills"],
7
7
  "providerAuthEnvVars": {
8
8
  "xquik": ["XQUIK_API_KEY"]
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "x-developer",
3
- "version": "2.5.2",
3
+ "version": "2.5.4",
4
4
  "description": "Xquik agent skill & plugin bundle for REST, MCP, webhooks, exports & confirmation-gated X workflows. Not affiliated with X Corp.",
5
5
  "author": {
6
6
  "name": "Xquik",
@@ -18,9 +18,9 @@ export const contentChecks = [
18
18
  {
19
19
  path: "README.md",
20
20
  required: [
21
- "123 REST API operations",
21
+ "126 REST API operations",
22
22
  "118 MCP operations through 2 tools",
23
- "MCP v2.5.2",
23
+ "MCP v2.5.4",
24
24
  "## Agent Safety And Account Boundary",
25
25
  "Plan and credit changes stay in the Xquik dashboard.",
26
26
  "The npm package `x-developer` is this agent skill and plugin bundle. The separate `x-twitter-scraper` package is the typed TypeScript SDK.",
@@ -127,7 +127,14 @@ export const contentChecks = [
127
127
  "https://xquik.com/mcp",
128
128
  "OpenAI Agents SDK",
129
129
  "118 operations through 2 structured API tools",
130
- "118 of 123 documented REST operations",
130
+ "118 of 126 documented REST operations",
131
+ "https://docs.xquik.com/mcp/overview#client-compatibility",
132
+ "gemini mcp add --transport http xquik https://xquik.com/mcp",
133
+ '"type": "http"',
134
+ '"url": "https://xquik.com/mcp"',
135
+ "copilot mcp add --transport http xquik https://xquik.com/mcp",
136
+ "Affected Goose releases need an environment-backed API key",
137
+ "Pi has no native MCP client",
131
138
  "| `explore` | Search the API endpoint catalog (read-only, no network calls) | Included |",
132
139
  ],
133
140
  forbidden: [
@@ -141,7 +148,7 @@ export const contentChecks = [
141
148
  "| `explore` | Search the API endpoint catalog (read-only, no network calls) | Included |",
142
149
  "Included usage flag from endpoint metadata",
143
150
  "Find all included-usage endpoints",
144
- "MCP v2.5.2 exposes 118 of 123 REST operations",
151
+ "MCP v2.5.4 exposes 118 of 126 REST operations",
145
152
  "Saved-payment top-ups",
146
153
  "Dashboard checkout redirects",
147
154
  ],
@@ -173,7 +180,7 @@ export const contentChecks = [
173
180
  {
174
181
  path: ".codex-plugin/plugin.json",
175
182
  required: [
176
- "123 REST operations",
183
+ "126 REST operations",
177
184
  "118 MCP operations through 2 tools",
178
185
  ],
179
186
  forbidden: ["100+ endpoints", dollarDenominatedPricing],
@@ -222,17 +229,15 @@ export const contentChecks = [
222
229
  path: "server.json",
223
230
  required: [
224
231
  '"title": "Xquik MCP Server"',
225
- "123 REST operations",
232
+ "126 REST operations",
226
233
  "118 MCP operations through 2 tools",
227
234
  '"websiteUrl": "https://docs.xquik.com/mcp/overview"',
228
- '"name": "x-api-key"',
229
235
  ],
230
236
  forbidden: [
231
237
  "113 REST endpoints",
232
238
  "112 REST endpoints",
233
239
  "100+ REST endpoints",
234
- '"name": "Authorization"',
235
- "Bearer {XQUIK_API_KEY}",
240
+ '"headers"',
236
241
  ],
237
242
  },
238
243
  {
@@ -240,7 +245,7 @@ export const contentChecks = [
240
245
  required: [
241
246
  "118 MCP operations",
242
247
  "Send confirmed Xquik API requests",
243
- '"x-api-key": "<YOUR_API_KEY>"',
248
+ "complete OAuth 2.1 for live API access",
244
249
  "included usage or requires account access",
245
250
  "Find all included-usage endpoints",
246
251
  ],
@@ -259,6 +264,7 @@ export const contentChecks = [
259
264
  "Always free",
260
265
  "Find all free endpoints",
261
266
  blocked("Call `POST /api/v1/", "sub", "scribe`"),
267
+ '"x-api-key": "<YOUR_API_KEY>"',
262
268
  '"Authorization": "Bearer <YOUR_API_KEY>"',
263
269
  ],
264
270
  },
@@ -195,10 +195,6 @@ export const jsonFieldExpectations = [
195
195
  websiteUrl: "https://docs.xquik.com/mcp/overview",
196
196
  "remotes.0.type": "streamable-http",
197
197
  "remotes.0.url": "https://xquik.com/mcp",
198
- "remotes.0.headers.0.name": "x-api-key",
199
- "remotes.0.headers.0.isRequired": true,
200
- "remotes.0.headers.0.isSecret": true,
201
- "remotes.0.headers.0.variables.XQUIK_API_KEY.isSecret": true,
202
198
  },
203
199
  },
204
200
  {
package/server.json CHANGED
@@ -2,32 +2,36 @@
2
2
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
3
3
  "name": "com.xquik/mcp",
4
4
  "title": "Xquik MCP Server",
5
- "description": "123 REST operations & 118 MCP operations through 2 tools. Not affiliated with X Corp.",
5
+ "description": "126 REST operations, 118 MCP operations through 2 tools. OAuth 2.1. Not affiliated with X Corp.",
6
6
  "repository": {
7
7
  "url": "https://github.com/Xquik-dev/x-twitter-scraper",
8
8
  "source": "github"
9
9
  },
10
10
  "websiteUrl": "https://docs.xquik.com/mcp/overview",
11
- "version": "2.5.2",
11
+ "version": "2.5.4",
12
+ "icons": [
13
+ {
14
+ "src": "https://xquik.com/icons/mcp/xquik.png",
15
+ "mimeType": "image/png",
16
+ "sizes": ["48x48", "96x96"],
17
+ "theme": "light"
18
+ },
19
+ {
20
+ "src": "https://xquik.com/logo-square.png",
21
+ "mimeType": "image/png",
22
+ "sizes": ["48x48", "96x96"],
23
+ "theme": "light"
24
+ },
25
+ {
26
+ "src": "https://xquik.com/logo-dark-square-flat.svg",
27
+ "mimeType": "image/svg+xml",
28
+ "theme": "dark"
29
+ }
30
+ ],
12
31
  "remotes": [
13
32
  {
14
33
  "type": "streamable-http",
15
- "url": "https://xquik.com/mcp",
16
- "headers": [
17
- {
18
- "name": "x-api-key",
19
- "value": "{XQUIK_API_KEY}",
20
- "description": "Xquik API key from your dashboard account page",
21
- "isRequired": true,
22
- "isSecret": true,
23
- "variables": {
24
- "XQUIK_API_KEY": {
25
- "description": "Your Xquik API key (starts with xq_)",
26
- "isSecret": true
27
- }
28
- }
29
- }
30
- ]
34
+ "url": "https://xquik.com/mcp"
31
35
  }
32
36
  ]
33
37
  }
@@ -3,13 +3,13 @@ name: x-twitter-scraper
3
3
  description: "Use Xquik for X/Twitter REST, MCP, SDKs, search, exports, monitoring & approved publishing. Not affiliated with X Corp. Trigger for tweet search, user lookup, timelines, follower exports, media, webhooks, bulk extraction, giveaways, or MCP setup. Read-only by default. Require explicit approval for writes, private reads, monitors, webhooks & metered bulk jobs."
4
4
  allowed-tools: WebFetch
5
5
  argument-hint: "[Xquik task, target, or setup goal]"
6
- version: "2.5.2"
6
+ version: "2.5.4"
7
7
  author: Xquik <support@xquik.com>
8
8
  license: MIT
9
9
  compatibility: Requires internet access to call the first-party Xquik REST API.
10
10
  tags: [twitter, x, social-media, api-development, scraping]
11
11
  metadata:
12
- version: "2.5.2"
12
+ version: "2.5.4"
13
13
  author: Xquik
14
14
  compatibility: Requires internet access to call the first-party Xquik REST API.
15
15
  tags: [twitter, x, social-media, api-development, scraping]
@@ -335,7 +335,9 @@ See [api endpoints](references/api-endpoints.md), [draws](references/draws.md),
335
335
 
336
336
  ## MCP Server
337
337
 
338
- The MCP endpoint is the `/mcp` route on the first-party Xquik host and uses the same API key.
338
+ The MCP endpoint is the `/mcp` route on the first-party Xquik host. Prefer OAuth 2.1 discovery. Use a scoped API key only when the client cannot complete OAuth.
339
+
340
+ Affected Codex releases discard the RFC 9207 `iss` callback value even though Xquik returns it. If Codex reports `Authorization server response missing required issuer: expected https://xquik.com`, use `XQUIK_API_KEY` through the Codex `bearer_token_env_var` setting. Follow the [Codex OAuth troubleshooting guide](https://docs.xquik.com/guides/troubleshooting#codex-oauth-issuer-validation-error) and track [openai/codex#31573](https://github.com/openai/codex/issues/31573).
339
341
 
340
342
  Available tools:
341
343
 
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "2.5.2",
2
+ "version": "2.5.4",
3
3
  "organization": "Xquik",
4
4
  "homepage": "https://docs.xquik.com",
5
5
  "repository": "https://github.com/Xquik-dev/x-twitter-scraper",