Twitter (X) API alternative for AI agents: tweet search, profiles, followers. $0.0002 per result.
Inferred from the transports this listing declares (streamable-http). A client not listed here hasn’t been ruled out — it just isn’t something Forge can confirm.
Verification confirms publisher identity (repo ownership), not code safety. The security scan covers known CVEs and suspicious install scripts.
Read from a real MCP initialize → tools/list handshake against the declared endpoint. No tool was ever invoked — tools/list is the read-only introspection call the protocol defines for this. It reflects what the server advertised at that moment; a hosted endpoint is not pinned to any version and can change without notice.
https://api.socialdata.tools/mcp14 tools · 544msget_user_by_usernameLook up a Twitter/X user profile by username (handle). Returns the profile including follower and following counts. Bills one user request against the caller's balance.Look up a Twitter/X user profile by username (handle). Returns the profile including follower and following counts. Bills one user request against the caller's balance.
| Parameter | Type | Description |
|---|---|---|
| username* | string | The Twitter/X username (handle), with or without the leading @. |
get_user_by_idLook up a Twitter/X user profile by numeric user ID. Bills one user request against the caller's balance.Look up a Twitter/X user profile by numeric user ID. Bills one user request against the caller's balance.
| Parameter | Type | Description |
|---|---|---|
| user_id* | string | The numeric Twitter/X user ID, as a string (IDs exceed safe integer precision). |
search_usersSearch Twitter/X user profiles by name or handle. Returns one page of matching profiles and bills against the caller's balance. Use this when you know roughly who someone is but not their exact handle.Search Twitter/X user profiles by name or handle. Returns one page of matching profiles and bills against the caller's balance. Use this when you know roughly who someone is but not their exact handle.
| Parameter | Type | Description |
|---|---|---|
| query* | string | Name or handle to search for. |
get_tweetFetch a single Twitter/X post by its numeric ID, including engagement counts. Bills one post request against the caller's balance.Fetch a single Twitter/X post by its numeric ID, including engagement counts. Bills one post request against the caller's balance.
| Parameter | Type | Description |
|---|---|---|
| tweet_id* | string | The numeric post ID, as a string. |
get_tweet_threadFetch one page of a Twitter/X thread — the chain of follow-up posts the author wrote under their own post ("1/", "2/", ...). Give it the ID of any post in the chain and it returns that chain in order. It does NOT return what other people replied; use get_tweet_comments for those. A post the author…Fetch one page of a Twitter/X thread — the chain of follow-up posts the author wrote under their own post ("1/", "2/", ...). Give it the ID of any post in the chain and it returns that chain in order. It does NOT return what other people replied; use get_tweet_comments for those. A post the author…
| Parameter | Type | Description |
|---|---|---|
| tweet_id* | string | The numeric post ID, as a string. |
| cursor | string | Pagination cursor from a previous call's next_cursor. Omit for the first page. |
get_tweet_commentsFetch one page of replies to a Twitter/X post. Returns about 20 replies plus a next_cursor. The first item of a page can repeat the last item of the previous page, so de-duplicate by post id when paging. Each call bills against the caller's balance — do not page through the whole conversation unles…Fetch one page of replies to a Twitter/X post. Returns about 20 replies plus a next_cursor. The first item of a page can repeat the last item of the previous page, so de-duplicate by post id when paging. Each call bills against the caller's balance — do not page through the whole conversation unles…
| Parameter | Type | Description |
|---|---|---|
| tweet_id* | string | The numeric ID of the post whose replies you want, as a string. |
| cursor | string | Pagination cursor from a previous call's next_cursor. Omit for the first page. |
get_user_tweetsFetch one page of a user's own posts (excluding replies), newest first. Returns about 20 posts plus a next_cursor. If the account has a pinned post it is prepended to every page, so de-duplicate by post id when paging. Each call bills against the caller's balance — do not page through a whole timel…Fetch one page of a user's own posts (excluding replies), newest first. Returns about 20 posts plus a next_cursor. If the account has a pinned post it is prepended to every page, so de-duplicate by post id when paging. Each call bills against the caller's balance — do not page through a whole timel…
| Parameter | Type | Description |
|---|---|---|
| user_id* | string | The numeric Twitter/X user ID, as a string. |
| cursor | string | Pagination cursor from a previous call's next_cursor. Omit for the first page. |
get_user_tweets_and_repliesFetch one page of a user's posts including their replies, newest first. Returns about 20 items plus a next_cursor. If the account has a pinned post it is prepended to every page, so de-duplicate by post id when paging. Each call bills against the caller's balance. Requires a numeric user ID: call g…Fetch one page of a user's posts including their replies, newest first. Returns about 20 items plus a next_cursor. If the account has a pinned post it is prepended to every page, so de-duplicate by post id when paging. Each call bills against the caller's balance. Requires a numeric user ID: call g…
| Parameter | Type | Description |
|---|---|---|
| user_id* | string | The numeric Twitter/X user ID, as a string. |
| cursor | string | Pagination cursor from a previous call's next_cursor. Omit for the first page. |
get_user_mentionsFetch one page of posts mentioning a given user, newest first. Returns about 20 posts plus a next_cursor. The first item of a page can repeat the last item of the previous page, so de-duplicate by post id when paging. Each call bills against the caller's balance.Fetch one page of posts mentioning a given user, newest first. Returns about 20 posts plus a next_cursor. The first item of a page can repeat the last item of the previous page, so de-duplicate by post id when paging. Each call bills against the caller's balance.
| Parameter | Type | Description |
|---|---|---|
| username* | string | The Twitter/X username (handle) being mentioned, with or without the leading @. |
| cursor | string | Pagination cursor from a previous call's next_cursor. Omit for the first page. |
get_user_followersFetch one page of a user's followers. This is one of the most expensive tools: a page is set upstream and can run to ~100 user records, every one of which is billed. Never page through a large account's followers without the user explicitly asking. Requires a numeric user ID.Fetch one page of a user's followers. This is one of the most expensive tools: a page is set upstream and can run to ~100 user records, every one of which is billed. Never page through a large account's followers without the user explicitly asking. Requires a numeric user ID.
| Parameter | Type | Description |
|---|---|---|
| user_id* | string | The numeric Twitter/X user ID whose followers you want, as a string. |
| cursor | string | Pagination cursor from a previous call's next_cursor. Omit for the first page. |
get_user_followingFetch one page of the accounts a user follows. Expensive: a page is set upstream and can run to ~100 user records, every one of which is billed. Never page through a large account's following list without the user explicitly asking. Requires a numeric user ID.Fetch one page of the accounts a user follows. Expensive: a page is set upstream and can run to ~100 user records, every one of which is billed. Never page through a large account's following list without the user explicitly asking. Requires a numeric user ID.
| Parameter | Type | Description |
|---|---|---|
| user_id* | string | The numeric Twitter/X user ID whose following list you want, as a string. |
| cursor | string | Pagination cursor from a previous call's next_cursor. Omit for the first page. |
check_is_followingCheck whether one Twitter/X user follows another. Far cheaper than fetching a follower list — use this whenever the question is about a specific pair of accounts. Both IDs must be numeric.Check whether one Twitter/X user follows another. Far cheaper than fetching a follower list — use this whenever the question is about a specific pair of accounts. Both IDs must be numeric.
| Parameter | Type | Description |
|---|---|---|
| source_user_id* | string | The numeric ID of the user who might be following, as a string. |
| target_user_id* | string | The numeric ID of the user who might be followed, as a string. |
search_tweetsSearch Twitter/X posts. Returns one page of about 20 results plus a
next_cursor, and bills one search request against the caller's balance.
The query supports Twitter's advanced search operators, and using them is
almost always better than a bare keyword search:
from:handle posts by an account
t…Search Twitter/X posts. Returns one page of about 20 results plus a next_cursor, and bills one search request against the caller's balance. The query supports Twitter's advanced search operators, and using them is almost always better than a bare keyword search: from:handle posts by an account t…
| Parameter | Type | Description |
|---|---|---|
| query* | string | The search query. Supports Twitter advanced search operators such as from:, to:, since:, until:, min_faves: and filter:. |
| type | string | Latest returns the newest matching posts; Top returns the most engaged-with. Defaults to Latest. |
| cursor | string | Pagination cursor from a previous call's next_cursor. Omit for the first page. |
get_list_tweetsFetch one page of posts from a Twitter/X list, newest first. A page is large — around 100 posts — plus a next_cursor. Billing is per result, so one call here costs several times a single-user timeline call; do not page through a busy list unless the user asked for that.Fetch one page of posts from a Twitter/X list, newest first. A page is large — around 100 posts — plus a next_cursor. Billing is per result, so one call here costs several times a single-user timeline call; do not page through a busy list unless the user asked for that.
| Parameter | Type | Description |
|---|---|---|
| list_id* | string | The numeric Twitter/X list ID, as a string. |
| cursor | string | Pagination cursor from a previous call's next_cursor. Omit for the first page. |
14 of 14 tools published a description.
Tool names and descriptions are written by the publisher and shown verbatim as inert text. They are the strings an MCP client passes to a model, so Forge scans them for prompt-injection patterns — any finding appears with the security scan above. “Privileged” is a keyword match on the tool name, not an audit of what the tool does: a benign-sounding name can still do anything.
Twitter (X) API alternative for AI agents: tweet search, profiles, followers. $0.0002 per result.
Linked names open Forge’s index of every entry observed exposing that tool. Browse all indexed tools.
This entry publishes no npm package, so Forge has no dependency tree for it. That is a gap in coverage — not a statement that it has no dependencies.