opentwitter

Query Twitter/X data including user profiles, tweets, search, followers, and real-time monitoring via 6551 API. Supports 12 REST endpoints covering user info, tweet retrieval, advanced search with filters (hashtags, date ranges, engagement thresholds), follower tracking, deleted tweets, and KOL identification WebSocket real-time subscriptions push events for new tweets, replies, quotes, retweets, follower changes, profile updates, and CA token creation from monitored accounts Search parameters include keyword matching, user/mention/hashtag filtering, engagement minimums, date ranges, language filtering, and "Top" vs "Latest" sorting Requires Bearer token authentication via $TWITTER_TOKEN environment variable; watch list management allows adding and removing monitored accounts

INSTALLATION
npx skills add https://github.com/6551team/opentwitter-mcp --skill opentwitter
Run in your project or agent environment. Adjust flags if your CLI version differs.

SKILL.md

Twitter/X Data Skill

Query Twitter/X data from the 6551 platform REST API. All endpoints require a Bearer token via $TWITTER_TOKEN.

Get your token: https://6551.io/mcp

Base URL: https://ai.6551.io

Authentication

All requests require the header:

Authorization: Bearer $TWITTER_TOKEN

Twitter Operations

1. Get Twitter User Info

Get user profile by username.

curl -s -X POST "https://ai.6551.io/open/twitter_user_info" \

  -H "Authorization: Bearer $TWITTER_TOKEN" \

  -H "Content-Type: application/json" \

  -d '{"username": "elonmusk"}'

2. Get Twitter User by ID

Get user profile by numeric ID.

curl -s -X POST "https://ai.6551.io/open/twitter_user_by_id" \

  -H "Authorization: Bearer $TWITTER_TOKEN" \

  -H "Content-Type: application/json" \

  -d '{"userId": "44196397"}'

3. Get User Tweets

Get recent tweets from a user.

curl -s -X POST "https://ai.6551.io/open/twitter_user_tweets" \

  -H "Authorization: Bearer $TWITTER_TOKEN" \

  -H "Content-Type: application/json" \

  -d '{"username": "elonmusk", "maxResults": 20, "product": "Latest"}'

Parameter

Type

Default

Description

username

string

required

Twitter username (without @)

maxResults

integer

20

Max tweets (1-100)

product

string

"Latest"

"Latest" or "Top"

includeReplies

boolean

false

Include reply tweets

includeRetweets

boolean

false

Include retweets

4. Search Twitter

Search tweets with various filters.

curl -s -X POST "https://ai.6551.io/open/twitter_search" \

  -H "Authorization: Bearer $TWITTER_TOKEN" \

  -H "Content-Type: application/json" \

  -d '{"keywords": "bitcoin", "maxResults": 20, "product": "Top"}'

Search from specific user:

curl -s -X POST "https://ai.6551.io/open/twitter_search" \

  -H "Authorization: Bearer $TWITTER_TOKEN" \

  -H "Content-Type: application/json" \

  -d '{"fromUser": "VitalikButerin", "maxResults": 20}'

Search by hashtag:

curl -s -X POST "https://ai.6551.io/open/twitter_search" \

  -H "Authorization: Bearer $TWITTER_TOKEN" \

  -H "Content-Type: application/json" \

  -d '{"hashtag": "crypto", "minLikes": 100, "maxResults": 20}'

Twitter Search Parameters

Parameter

Type

Default

Description

keywords

string

-

Search keywords

fromUser

string

-

Tweets from specific user

toUser

string

-

Tweets to specific user

mentionUser

string

-

Tweets mentioning user

hashtag

string

-

Filter by hashtag (without #)

excludeReplies

boolean

false

Exclude reply tweets

excludeRetweets

boolean

false

Exclude retweets

minLikes

integer

0

Minimum likes threshold

minRetweets

integer

0

Minimum retweets threshold

minReplies

integer

0

Minimum replies threshold

sinceDate

string

-

Start date (YYYY-MM-DD)

untilDate

string

-

End date (YYYY-MM-DD)

lang

string

-

Language code (e.g. "en", "zh")

product

string

"Top"

"Top" or "Latest"

maxResults

integer

20

Max tweets (1-100)

5. Get Follower Events

Get new followers or unfollowers for a user.

# Get new followers

curl -s -X POST "https://ai.6551.io/open/twitter_follower_events" \

  -H "Authorization: Bearer $TWITTER_TOKEN" \

  -H "Content-Type: application/json" \

  -d '{"username": "elonmusk", "isFollow": true, "maxResults": 20}'

# Get unfollowers

curl -s -X POST "https://ai.6551.io/open/twitter_follower_events" \

  -H "Authorization: Bearer $TWITTER_TOKEN" \

  -H "Content-Type: application/json" \

  -d '{"username": "elonmusk", "isFollow": false, "maxResults": 20}'

Parameter

Type

Default

Description

username

string

required

Twitter username (without @)

isFollow

boolean

true

true=new followers, false=unfollowers

maxResults

integer

20

Max events (1-100)

6. Get Deleted Tweets

Get deleted tweets from a user.

curl -s -X POST "https://ai.6551.io/open/twitter_deleted_tweets" \

  -H "Authorization: Bearer $TWITTER_TOKEN" \

  -H "Content-Type: application/json" \

  -d '{"username": "elonmusk", "maxResults": 20}'

Parameter

Type

Default

Description

username

string

required

Twitter username (without @)

maxResults

integer

20

Max tweets (1-100)

7. Get KOL Followers

Get which KOLs (Key Opinion Leaders) are following a user.

curl -s -X POST "https://ai.6551.io/open/twitter_kol_followers" \

  -H "Authorization: Bearer $TWITTER_TOKEN" \

  -H "Content-Type: application/json" \

  -d '{"username": "elonmusk"}'

Parameter

Type

Default

Description

username

string

required

Twitter username (without @)

8. Get Twitter Article by ID

Get Twitter article by ID.

curl -s -X POST "https://ai.6551.io/open/twitter_article_by_id" \

  -H "Authorization: Bearer $TWITTER_TOKEN" \

  -H "Content-Type: application/json" \

  -d '{"id": "article_id"}'

Parameter

Type

Default

Description

id

string

required

Twitter article ID

9. Get Tweet by ID

Get a specific tweet by its ID, including nested reply/quote tweets.

This endpoint retrieves a tweet by ID and automatically fetches any tweets it replies to or quotes, providing complete context.

curl -s -X POST "https://ai.6551.io/open/twitter_tweet_by_id" \

  -H "Authorization: Bearer $TWITTER_TOKEN" \

  -H "Content-Type: application/json" \

  -d '{"twId": "2030318958512164966"}'

Parameter

Type

Default

Description

twId

string

required

Twitter tweet ID (numeric)

Response includes:

  • Main tweet data
  • replyStatus: The tweet being replied to (if applicable)
  • quotedStatus: The tweet being quoted (if applicable)

10. Get Quote Tweets by ID

Get tweets that quote a specific tweet.

curl -s -X POST "https://ai.6551.io/open/twitter_quote_tweets_by_id" \

  -H "Authorization: Bearer $TWITTER_TOKEN" \

  -H "Content-Type: application/json" \

  -d '{"id": "2030318958512164966", "maxResults": 20}'

Parameter

Type

Default

Description

id

string

required

Twitter tweet ID (numeric)

maxResults

integer

20

Max tweets (1-100)

11. Get Retweet Users by ID

Get users who retweeted a specific tweet.

curl -s -X POST "https://ai.6551.io/open/twitter_retweet_users_by_id" \

  -H "Authorization: Bearer $TWITTER_TOKEN" \

  -H "Content-Type: application/json" \

  -d '{"id": "2030318958512164966"}'

Parameter

Type

Default

Description

id

string

required

Twitter tweet ID (numeric)

cursor

string

-

Pagination cursor for next page

12. Get Twitter Watch List

Get all Twitter monitoring users for the current user.

curl -s -X POST "https://ai.6551.io/open/twitter_watch" \

  -H "Authorization: Bearer $TWITTER_TOKEN" \

  -H "Content-Type: application/json" \

  -d '{}'

13. Add Twitter Watch

Add a Twitter user to monitoring list.

curl -s -X POST "https://ai.6551.io/open/twitter_watch_add" \

  -H "Authorization: Bearer $TWITTER_TOKEN" \

  -H "Content-Type: application/json" \

  -d '{"username": "elonmusk", "newTweetBol": true, "newFlwBol": false}'

Parameter

Type

Default

Description

username

string

required

Twitter username (without @)

newTweetBol

boolean

true (server)

Monitor new tweets

newFlwBol

boolean

false (server)

Monitor new followers

newUnFlwBol

boolean

false (server)

Monitor unfollowers

newTweetReplyBol

boolean

true (server)

Monitor tweet replies

newTweetQuoteBol

boolean

true (server)

Monitor quote tweets

newRetweetBol

boolean

true (server)

Monitor retweets

updateNameBol

boolean

true (server)

Monitor username changes

updateDescBol

boolean

true (server)

Monitor bio/description changes

updateAvatarBol

boolean

true (server)

Monitor profile picture changes

updateBannerBol

boolean

true (server)

Monitor banner image changes

newCaBol

boolean

false (server)

Monitor CA (contract address) events

tweetToppingBol

boolean

false (server)

Monitor tweet pinning events

14. Delete Twitter Watch

Delete a Twitter user from monitoring list by username.

curl -s -X POST "https://ai.6551.io/open/twitter_watch_delete" \

  -H "Authorization: Bearer $TWITTER_TOKEN" \

  -H "Content-Type: application/json" \

  -d '{"username": "elonmusk"}'

Parameter

Type

Default

Description

username

string

required

Twitter username to delete (without @)

WebSocket Real-time Subscriptions

Endpoint: wss://ai.6551.io/open/twitter_wss?token=YOUR_TOKEN

Subscribe to real-time events from your monitored Twitter accounts.

Subscribe to Twitter Events

{

  "jsonrpc": "2.0",

  "id": 1,

  "method": "twitter.subscribe"

}

Response:

{

  "jsonrpc": "2.0",

  "id": 1,

  "result": {

    "success": true

  }

}

Unsubscribe

{

  "jsonrpc": "2.0",

  "id": 2,

  "method": "twitter.unsubscribe"

}

Server Push - Twitter Event

When a monitored account has activity, the server pushes:

{

  "jsonrpc": "2.0",

  "method": "twitter.event",

  "params": {

    "id": 123456,

    "twAccount": "elonmusk",

    "twUserName": "Elon Musk",

    "profileUrl": "https://twitter.com/elonmusk",

    "eventType": "NEW_TWEET",

    "content": "...",

    "ca": "0x1234...",

    "remark": "Custom note",

    "createdAt": "2026-03-06T10:00:00Z"

  }

}

Note: The content field structure varies by event type (see below).

**Event Types and Content Structure**:

#### Tweet Events

- `NEW_TWEET` - New tweet posted

- `NEW_TWEET_REPLY` - New reply tweet

- `NEW_TWEET_QUOTE` - New quote tweet

- `NEW_RETWEET` - Retweeted

- `CA` - Tweet with CA address

Content structure for tweet events:

{

"id": "1234567890",

"text": "Tweet content...",

"createdAt": "2026-03-06T10:00:00Z",

"language": "en",

"retweetCount": 100,

"favoriteCount": 500,

"replyCount": 20,

"quoteCount": 10,

"viewCount": 10000,

"userScreenName": "elonmusk",

"userName": "Elon Musk",

"userIdStr": "44196397",

"userFollowers": 170000000,

"userVerified": true,

"conversationId": "1234567890",

"isReply": false,

"isQuote": false,

"hashtags": ["crypto", "bitcoin"],

"media": [

{

"type": "photo",

"url": "https://...",

"thumbUrl": "https://..."

}

],

"urls": [

{

"url": "https://...",

"expandedUrl": "https://...",

"displayUrl": "example.com"

}

],

"mentions": [

{

"username": "VitalikButerin",

"name": "Vitalik Buterin"

}

]

}


#### Follower Events

- `NEW_FOLLOWER` - New follower

- `NEW_UNFOLLOWER` - Unfollower event

Content structure for follower events (array):

[

{

"id": 123,

"twId": 44196397,

"twAccount": "elonmusk",

"twUserName": "Elon Musk",

"twUserLabel": "Verified",

"description": "User bio...",

"profileUrl": "https://...",

"bannerUrl": "https://...",

"followerCount": 170000000,

"friendCount": 500,

"createdAt": "2026-03-06T10:00:00Z"

}

]


#### Profile Update Events

- `UPDATE_NAME` - Username changed (content: new name string)

- `UPDATE_DESCRIPTION` - Bio updated (content: new description string)

- `UPDATE_AVATAR` - Profile picture changed (content: new avatar URL string)

- `UPDATE_BANNER` - Banner image changed (content: new banner URL string)

#### Other Events

- `TWEET_TOPPING` - Tweet pinned

- `DELETE` - Tweet deleted

- `SYSTEM` - System event

- `TRANSLATE` - Tweet translation

- `CA_CREATE` - CA token created

## Data Structures

### Twitter User

{

"userId": "44196397",

"screenName": "elonmusk",

"name": "Elon Musk",

"description": "...",

"followersCount": 170000000,

"friendsCount": 500,

"statusesCount": 30000,

"verified": true

}


### Tweet

{

"id": "1234567890",

"text": "Tweet content...",

"createdAt": "2024-02-20T12:00:00Z",

"retweetCount": 1000,

"favoriteCount": 5000,

"replyCount": 200,

"userScreenName": "elonmusk",

"hashtags": ["crypto", "bitcoin"],

"urls": [{"url": "https://..."}]

}


## Common Workflows

### Crypto Twitter KOL Tweets

curl -s -X POST "https://ai.6551.io/open/twitter_user_tweets" \

-H "Authorization: Bearer $TWITTER_TOKEN" \

-H "Content-Type: application/json" \

-d '{"username": "VitalikButerin", "maxResults": 10}'


### Trending Crypto Tweets

curl -s -X POST "https://ai.6551.io/open/twitter_search" \

-H "Authorization: Bearer $TWITTER_TOKEN" \

-H "Content-Type: application/json" \

-d '{"keywords": "bitcoin", "minLikes": 1000, "product": "Top", "maxResults": 20}'

BrowserAct

Let your agent run on any real-world website

Bypass CAPTCHA & anti-bot for free. Start local, scale to cloud.

Explore BrowserAct Skills →

Stop writing automation&scrapers

Install the CLI. Run your first Skill in 30 seconds. Scale when you're ready.

Start free
free · no credit card