mcpField
T
twitter-scraping

twitter-scraping

github.com/nirholasData & databases63145 installsUpdated 1d ago
Repository

About twitter-scraping

A skill for collecting data from X through a Node.js scraper API, browser-console scripts, and an interactive toolbox. It gathers profiles, posts, follower data, and search results, with exports and MCP tools for AI agents.

Key features

  1. 01Collect profiles, followers, and following lists
  2. 02Scrape posts, hashtags, threads, and media
  3. 03Provide a Node.js API and browser scripts
  4. 04Filter and control collection in an interactive panel
  5. 05Export JSON, CSV, and other formats
  6. 06Include MCP scraping tools

Use cases

  1. 01Compile posts and profile details for a user
  2. 02Collect search results or hashtag posts
  3. 03Export follower, bookmark, or media data
  4. 04Invoke X scraping functions from an AI agent

MCP support

An MCP server exposes tools for AI agents to scrape profiles, followers, posts, search results, threads, and video URLs.

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/nirholas/xactions --skill twitter-scraping

After installing, type/twitter-scrapingin Claude Code to confirm it loaded.

Bundled filesreferences/scraper-details.md

Details

From the project README

Twitter Scraping

Auth Setup

All scrapers require an auth_token cookie from x.com (DevTools -> Application -> Cookies -> copy auth_token value).

Node.js Scraper API

npm install xactions -- all functions from src/scrapers/index.js.

import { createBrowser, createPage, loginWithCookie, scrapeProfile } from 'xactions';

const browser = await createBrowser();
const page = await createPage(browser);
await loginWithCookie(page, AUTH_TOKEN);

const profile = await scrapeProfile(page, 'nichxbt');
await browser.close();
FunctionPurpose
scrapeProfile(page, username)Profile data (bio, followers, following)
scrapeFollowers(page, username, {limit})Follower list
scrapeFollowing(page, username, {limit})Following list
scrapeTweets(page, username, {limit})User's tweets
searchTweets(page, query, {limit})Search results
scrapeHashtag(page, tag, {limit})Hashtag tweets
scrapeThread(page, tweetUrl)Thread tweets
scrapeMedia(page, username, {limit})Media URLs
exportToJSON(data, path) / exportToCSV(data, path)File export

Browser Console Scripts

Standalone IIFEs -- paste into DevTools console on x.com. No dependencies.

ScriptFileNavigate to
Download videosrc/scrapers/videoDownloader.jsTweet with video
Export bookmarkssrc/scrapers/bookmarkExporter.jsx.com/i/bookmarks
Unroll threadsrc/scrapers/threadUnroller.jsAny thread
Find viral tweetssrc/scrapers/viralTweets.jsUser profile
Scrape followersscripts/scrapeFollowers.jsx.com/USER/followers
Scrape followingscripts/scrapeFollowing.jsx.com/USER/following
Scrape profilescripts/scrapeProfile.jsUser profile
Scrape searchscripts/scrapeSearch.jsSearch results
Scrape hashtagscripts/scrapeHashtag.jsx.com/hashtag/TAG
Scrape likesscripts/scrapeLikes.jsx.com/USER/likes
Scrape likersscripts/scrapeLikers.jsAny tweet
Scrape repliesscripts/scrapeReplies.jsAny tweet
Scrape mediascripts/scrapeMedia.jsUser media tab
Scrape DMsscripts/scrapeDMs.jsx.com/messages
Scrape notificationsscripts/scrapeNotifications.jsx.com/notifications
Scrape listscripts/scrapeList.jsAny X List
Scrape bookmarksscripts/scrapeBookmarks.jsx.com/i/bookmarks
Export to CSVscripts/exportToCSV.jsAfter any scrape
Link scraperscripts/linkScraper.jsAny timeline
Quote retweetsscripts/scrapeQuoteRetweets.jsAny tweet

Interactive browser toolbox (recommended for console scraping)

For paste-in-console scraping, prefer scripts/twitter/scraper-toolbox.js: an on-page control panel (start/pause/stop, live filters, user exclusions, keyword rules) that captures X's own GraphQL responses, so counts are exact integers and long posts are untruncated. Exports JSON/CSV/Markdown/TXT/HTML and copies to clipboard. Works on any timeline: profile, search, list, likes, bookmarks, home. Docs: scripts/twitter/README-scraper-toolbox.md.

MCP Scraping Tools

All scrapers available via the MCP server for AI agents:

ToolDescription
x_get_profileScrape user profile
x_get_followersGet follower list
x_get_followingGet following list
x_get_tweetsGet user tweets
x_search_tweetsSearch tweets
x_get_threadUnroll thread
x_download_videoExtract video URL

Notes

  • Always call browser.close() when done with Node.js scrapers
  • Browser scripts stop on page navigation -- stay on the page while running
  • All scripts support JSON and CSV export
  • Increase limit parameter for deeper scraping (default varies by function)
  • Rate limiting is built in -- avoid reducing delays below defaults

Comments

Markdown supported