Skip to content
Back to skills

X Twitter Scraper Davepoon

ASecurity

X (Twitter) data extraction and monitoring via Xquik: tweet search, user lookup, follower extraction, giveaway draws, trending topics, account monitoring with webhooks, reply/retweet/quote extraction, community and Space data, follow checks. 22 MCP tools + REST API.

  • 3 stars
  • 0 votes
  • 0 copies
  • 5 views
  • Added September 12, 2026
ai-agentsjavascriptgojavaawsgitapi

Works with

  • claude code
  • claude desktop
  • cursor
  • cli
  • api
  • mcp

Security analysis

A100/100

Scanned September 12, 2026

npx -y skills add thedixitjain/the-mega-skill-library --skill x-twitter-scraper--davepoon --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of X Twitter Scraper Davepoon?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for X Twitter Scraper  Davepoon
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/thedixitjain-x-twitter-scraper-davepoon/badge)](https://www.skillsdirectory.com/skills/thedixitjain-x-twitter-scraper-davepoon)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: x-twitter-scraper
description: "X (Twitter) data extraction and monitoring via Xquik: tweet search, user lookup, follower extraction, giveaway draws, trending topics, account monitoring with webhooks, reply/retweet/quote extraction, community and Space data, follow checks. 22 MCP tools + REST API."
category: marketing-and-growth
source_repo: davepoon/buildwithclaude
source_path: "plugins/all-skills/skills/x-twitter-scraper/SKILL.md"
source_url: https://github.com/davepoon/buildwithclaude/blob/HEAD/plugins/all-skills/skills/x-twitter-scraper/SKILL.md
---


# Xquik - X (Twitter) Data Platform

Xquik provides a REST API, MCP server, and HMAC webhooks for X (Twitter) data. It covers tweet search, user profiles, bulk extraction (19 tools), giveaway draws, account monitoring, and trending topics.

**Docs**: [docs.xquik.com](https://docs.xquik.com)

## Quick Reference

| | |
|---|---|
| **Base URL** | `https://xquik.com/api/v1` |
| **Auth** | `x-api-key: xq_...` header |
| **MCP endpoint** | `https://xquik.com/mcp` (StreamableHTTP) |
| **Rate limits** | 10 req/s sustained, 20 burst |
| **Pricing** | $20/month (1 monitor included), $5/month per extra monitor |

## Prerequisites

- Xquik account with active subscription
- API key generated from the [Xquik dashboard](https://xquik.com)
- For MCP: configure the endpoint in your client (Claude Desktop, Claude Code, Cursor, VS Code, etc.)

## Setup

### MCP Server (Claude Code)

Add to your MCP configuration:

```json
{
  "mcpServers": {
    "xquik": {
      "type": "streamable-http",
      "url": "https://xquik.com/mcp",
      "headers": {
        "x-api-key": "xq_YOUR_KEY_HERE"
      }
    }
  }
}
```

### REST API

```javascript
const API_KEY = "xq_YOUR_KEY_HERE";
const BASE = "https://xquik.com/api/v1";
const headers = { "x-api-key": API_KEY, "Content-Type": "application/json" };
```

## Core Workflows

### 1. Search Tweets

**When to use**: Find tweets by keyword, hashtag, or user.

**Endpoint**: `GET /x/tweets/search?q=...`

**MCP tool**: `search-tweets`

```javascript
const results = await fetch(`${BASE}/x/tweets/search?q=from:elonmusk AI`, { headers });
```

**Pitfalls**:
- Basic results only (id, text, author, date). Use `lookup-tweet` for engagement metrics
- Searches recent tweets, not full archive

### 2. Look Up a Tweet

**When to use**: Get full metrics (likes, retweets, views, bookmarks) for a specific tweet.

**Endpoint**: `GET /x/tweets/{id}`

**MCP tool**: `lookup-tweet`

### 3. Look Up a User Profile

**When to use**: Get name, bio, follower/following counts, profile picture, join date.

**Endpoint**: `GET /x/users/{username}`

**MCP tool**: `get-user-info`

**Pitfalls**:
- MCP returns a subset (no verified, location, createdAt, statusesCount). Use REST API for the full profile

### 4. Check Follow Relationship

**When to use**: Check if account A follows account B (both directions).

**Endpoint**: `GET /x/followers/check?source=A&target=B`

**MCP tool**: `check-follow`

### 5. Bulk Data Extraction (19 Tools)

**When to use**: Extract followers, replies, retweets, quotes, community members, list data, and more.

**Workflow**: Always estimate cost first, then create the job, then retrieve results.

**Tool types**:

| Tool Type | Target | Description |
|-----------|--------|-------------|
| `reply_extractor` | Tweet ID | Users who replied |
| `repost_extractor` | Tweet ID | Users who retweeted |
| `quote_extractor` | Tweet ID | Users who quote-tweeted |
| `thread_extractor` | Tweet ID | All tweets in a thread |
| `article_extractor` | Tweet ID | Article content from a tweet |
| `follower_explorer` | Username | Followers of an account |
| `following_explorer` | Username | Accounts followed by a user |
| `verified_follower_explorer` | Username | Verified followers |
| `mention_extractor` | Username | Tweets mentioning an account |
| `post_extractor` | Username | Posts from an account |
| `community_extractor` | Community ID | Community members |
| `community_moderator_explorer` | Community ID | Community moderators |
| `community_post_extractor` | Community ID | Community posts |
| `community_search` | Community ID + query | Search within a community |
| `list_member_extractor` | List ID | List members |
| `list_post_extractor` | List ID | List posts |
| `list_follower_explorer` | List ID | List followers |
| `space_explorer` | Space ID | Space participants |
| `people_search` | Search query | Search for users |

**MCP tools**: `estimate-extraction` -> `run-extraction` -> `get-extraction`

```javascript
// 1. Estimate cost
const estimate = await fetch(`${BASE}/extractions/estimate`, {
  method: "POST", headers,
  body: JSON.stringify({ toolType: "follower_explorer", targetUsername: "elonmusk" }),
}).then(r => r.json());

if (!estimate.allowed) return; // Would exceed monthly quota

// 2. Create job
const job = await fetch(`${BASE}/extractions`, {
  method: "POST", headers,
  body: JSON.stringify({ toolType: "follower_explorer", targetUsername: "elonmusk" }),
}).then(r => r.json());

// 3. Retrieve results (paginated)
const results = await fetch(`${BASE}/extractions/${job.id}`, { headers }).then(r => r.json());
```

**Pitfalls**:
- Always call estimate first. `402` means quota exhausted
- Large jobs return `status: "running"` and need polling
- Export (CSV/XLSX/MD) capped at 50,000 rows

### 6. Giveaway Draws

**When to use**: Pick random winners from tweet replies with configurable filters.

**Endpoint**: `POST /draws`

**MCP tool**: `run-draw`

Available filters: `mustRetweet`, `mustFollowUsername`, `filterMinFollowers`, `filterAccountAgeDays`, `filterLanguage`, `requiredKeywords`, `requiredHashtags`, `requiredMentions`, `uniqueAuthorsOnly`.

```javascript
const draw = await fetch(`${BASE}/draws`, {
  method: "POST", headers,
  body: JSON.stringify({
    tweetUrl: "https://x.com/user/status/123456789",
    winnerCount: 3,
    uniqueAuthorsOnly: true,
    mustRetweet: true,
  }),
}).then(r => r.json());
```

### 7. Real-Time Monitoring

**When to use**: Track when an account tweets, gets replies, gains/loses followers.

**Workflow**: Create a monitor, optionally register a webhook for push notifications.

**Event types**: `tweet.new`, `tweet.reply`, `tweet.quote`, `tweet.retweet`, `follower.gained`, `follower.lost`

**MCP tools**: `add-monitor` -> `add-webhook` -> `test-webhook`

```javascript
// Create monitor
await fetch(`${BASE}/monitors`, {
  method: "POST", headers,
  body: JSON.stringify({
    username: "elonmusk",
    eventTypes: ["tweet.new", "follower.gained"],
  }),
});

// Register webhook (save the secret!)
const webhook = await fetch(`${BASE}/webhooks`, {
  method: "POST", headers,
  body: JSON.stringify({
    url: "https://your-server.com/webhook",
    eventTypes: ["tweet.new"],
  }),
}).then(r => r.json());
```

**Pitfalls**:
- Webhook secret is shown only once at creation
- Verify HMAC signature (`X-Xquik-Signature` header) before processing
- Respond within 10 seconds; queue slow processing for async

### 8. Trending Topics

**When to use**: Get current trending topics for a region.

**Endpoint**: `GET /trends?woeid=1`

**MCP tool**: `get-trends`

Free, no quota consumed.

## Error Handling

Retry only `429` and `5xx`. Never retry other `4xx`.

| Status | Meaning | Action |
|--------|---------|--------|
| 400 | Invalid request | Fix parameters |
| 401 | Bad API key | Check key |
| 402 | No subscription or quota exhausted | Subscribe or wait for reset |
| 404 | Not found | Resource doesn't exist |
| 429 | Rate limited | Retry with backoff, respect `Retry-After` |
| 500+ | Server error | Retry with exponential backoff (max 3) |

## Conventions

- **IDs are strings** (bigints). Never parse as numbers
- **Timestamps**: ISO 8601 UTC
- **Cursors are opaque**. Pass `nextCursor` as the `after` query parameter
- **Pagination**: `hasMore` + `nextCursor` pattern across events, draws, extractions

## MCP Tool Reference

22 tools available through the MCP server:

| Tool | Purpose |
|------|---------|
| `search-tweets` | Search tweets by keyword/hashtag |
| `lookup-tweet` | Get tweet by ID with full metrics |
| `get-user-info` | User profile lookup |
| `check-follow` | Check follow relationship |
| `get-trends` | Trending topics by region |
| `add-monitor` | Start monitoring an account |
| `remove-monitor` | Stop monitoring |
| `list-monitors` | List active monitors |
| `get-events` | Poll for monitor events |
| `get-event` | Get single event details |
| `add-webhook` | Register webhook endpoint |
| `remove-webhook` | Delete webhook |
| `list-webhooks` | List webhooks |
| `test-webhook` | Send test payload |
| `run-draw` | Run giveaway draw |
| `list-draws` | List past draws |
| `get-draw` | Get draw results with winners |
| `estimate-extraction` | Preview extraction cost |
| `run-extraction` | Start bulk extraction |
| `list-extractions` | List extraction jobs |
| `get-extraction` | Get extraction results |
| `get-account` | Check subscription and usage |

---

**Source:** [`davepoon/buildwithclaude`](https://github.com/davepoon/buildwithclaude) → `plugins/all-skills/skills/x-twitter-scraper/SKILL.md`

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.