π¦ ClawHub
xbird
by @checkra1neth
Use when the user asks to tweet, post threads, read tweets, search Twitter/X, check mentions, manage engagement (like/retweet/bookmark), update profile (bio, avatar, banner), upload media, or interact with Twitter accounts. Triggers: twitter, tweet, post, thread, timeline, mentions, followers, following, likes, retweet, bookmark, profile picture, bio.
TERMINAL
clawhub install xbirdπ About This Skill
name: xbird description: "Use when the user asks to tweet, post threads, read tweets, search Twitter/X, check mentions, manage engagement (like/retweet/bookmark), update profile (bio, avatar, banner), upload media, or interact with Twitter accounts. Triggers: twitter, tweet, post, thread, timeline, mentions, followers, following, likes, retweet, bookmark, profile picture, bio." argument-hint: "[action or query]"
xbird β Twitter/X for AI Agents
34 MCP tools for Twitter/X with x402 micropayments. Runs locally from residential IP.
Setup
Add xbird MCP server to Claude Code:
claude mcp add xbird -- npx @checkra1n/xbird
Required environment variables (set in ~/.claude/settings.json or shell):
XBIRD_AUTH_TOKEN β from x.com cookies (DevTools β Application β Cookies β auth_token)XBIRD_CT0 β from x.com cookies (DevTools β Application β Cookies β ct0)XBIRD_PRIVATE_KEY β wallet private key for x402 payments (optional, needed for paid tier)Tools Reference
Read β $0.001/call
| Tool | Description | |------|-------------| |get_tweet | Get tweet by ID |
| get_thread | Get full thread/conversation chain |
| get_replies | Get replies to a tweet (supports count, cursor) |
| get_user | Get user profile by handle |
| get_user_about | Get detailed user info (bio, stats, links) |
| get_current_user | Get authenticated user's profile |
| get_home_timeline | Get home feed (supports count, cursor) |
| get_news | Get trending topics (tabs: trending, forYou, news, sports, entertainment) |
| get_lists | Get owned Twitter lists |
| get_list_timeline | Get tweets from a list by list ID |Search β $0.005/call
| Tool | Description | |------|-------------| |search_tweets | Search tweets. Supports operators: from:user, to:user, since:2024-01-01, filter:media, -filter:retweets |
| get_mentions | Get mentions for a handle |Bulk β $0.01/call
| Tool | Description | |------|-------------| |get_user_tweets | Get user's tweets. Requires numeric userId β get it from get_user first |
| get_followers | Get user's followers. Requires numeric userId |
| get_following | Get who user follows. Requires numeric userId |
| get_likes | Get user's liked tweets. Requires numeric userId |
| get_bookmarks | Get bookmarked tweets |
| get_list_memberships | Get lists user is a member of |Write β $0.01/call
| Tool | Description | |------|-------------| |post_tweet | Post a tweet. Pass mediaIds array to attach media |
| reply_to_tweet | Reply to a tweet by replyToId |
| post_thread | Post a thread β array of strings, minimum 2 tweets |
| like_tweet / unlike_tweet | Like or unlike by tweet ID |
| retweet / unretweet | Retweet or undo by tweet ID |
| bookmark_tweet / unbookmark_tweet | Bookmark or remove by tweet ID |
| follow_user / unfollow_user | Follow or unfollow by handle |Profile β $0.01/call
| Tool | Description | |------|-------------| |update_profile | Update bio/description text |
| update_profile_image | Update avatar β absolute file path to image |
| update_profile_banner | Update banner β absolute file path to image |
| remove_profile_banner | Remove banner image |Media β $0.05/call
| Tool | Description | |------|-------------| |upload_media | Upload image/video, returns mediaId. Pass it to post_tweet or reply_to_tweet via mediaIds |Common Workflows
Post a tweet with an image
1.upload_media with file path β get mediaId
2. post_tweet with text and mediaIds: [""] Get someone's recent tweets
1.get_user with handle β get numeric userId
2. get_user_tweets with userIdUpdate profile with new avatar and bio
1.update_profile_image with file path
2. update_profile with new description textSearch and engage
1.search_tweets with query (e.g. "AI agents" since:2024-01-01 -filter:retweets)
2. like_tweet or retweet interesting resultsImportant Notes
@ prefixuserId. Always call get_user first to resolve handle β userIdcursor from previous response for next pagemediaId to tweetβοΈ Configuration
Add xbird MCP server to Claude Code:
claude mcp add xbird -- npx @checkra1n/xbird
Required environment variables (set in ~/.claude/settings.json or shell):
XBIRD_AUTH_TOKEN β from x.com cookies (DevTools β Application β Cookies β auth_token)XBIRD_CT0 β from x.com cookies (DevTools β Application β Cookies β ct0)XBIRD_PRIVATE_KEY β wallet private key for x402 payments (optional, needed for paid tier)