TwitterAPIs MCP
About
Official MCP server for twitterapis.com: Twitter/X search, users, followers, tweets, threads, lists, likes, bookmarks, DMs, plus post/like/retweet/follow actions as native Claude/Cursor tools.
Details
- Author
- twitterapis
- Categories
- Search, Other, Communication
Jump to
Setup
Install TwitterAPIs MCP in your MCP client (Claude Desktop, Cursor, Windsurf, and others).
Repository: https://github.com/twitterapis/twitterapis-mcp
Follow the installation instructions in the repository README, then restart your MCP client.
OfficialModel Context Protocolserver fortwitterapis.com, the Twitter / X API as native tools for Claude, Cursor, Windsurf, and any MCP client. Reads (search, profiles, timelines, followers, DMs) plus write actions (post, like, retweet, follow).
Ask your agent to search tweets, pull a user's profile or timeline, list followers/following, fetch thread context, or enumerate list members and it calls the API directly. Every tool maps to a REST endpoint athttps://api.twitterapis.com; the server holds no state and forwards your API key on each call.
No install needed. Run withnpx. You need one thing: an API key (free $0.50 in credits, no card required):twitterapis.com/signup.
Editclaude_desktop_config.json(Settings → Developer → Edit Config):
{ "mcpServers": { "twitterapis": { "command": "npx", "args": ["-y", "@twitterapis/mcp@latest"], "env": { "TWITTERAPIS_KEY": "YOUR_API_KEY" } } } }
Restart Claude Desktop. Thetwitter_tools appear in the tool picker.
~/.cursor/mcp.json(or Settings → MCP → Add New Server):
{ "mcpServers": { "twitterapis": { "command": "npx", "args": ["-y", "@twitterapis/mcp@latest"], "env": { "TWITTERAPIS_KEY": "YOUR_API_KEY" } } } }
{ "mcpServers": { "twitterapis": { "command": "npx", "args": ["-y", "@twitterapis/mcp@latest"], "env": { "TWITTERAPIS_KEY": "YOUR_API_KEY" } } } }
.vscode/mcp.jsonin your workspace, or the user-level MCP settings:
{ "servers": { "twitterapis": { "type": "stdio", "command": "npx", "args": ["-y", "@twitterapis/mcp@latest"], "env": { "TWITTERAPIS_KEY": "YOUR_API_KEY" } } } }
94 tools: 60 reads and 34 write actions. Most user endpoints acceptusername(handle without @)oruser_id(twitter_user_likesandtwitter_user_tweets_completerequireuser_id); tweet endpoints acceptidorurl; paginated endpoints return acursoryou pass back to get the next page. Two of the reads are free account/billing lookups (twitter_account_me,twitter_account_payments); the 14 monitoring tools are also free (account administration, not metered reads).
Write actions(require a linked X session)
Articles(X's long-form "Notes" feature; writes require a linked X session)
See alsotwitter_article_getandtwitter_article_listabove.
Monitoring(webhook delivery of new posts; free, not metered)
Watch an X account for new posts and get them pushed to your own HTTPS endpoint, HMAC-signed, instead of polling. Register a webhook first, then create a monitor; every new post from a watched handle is delivered to every active webhook on your account (or a restricted subset viawebhook_ids). Monitor/webhook CRUD is account administration, not a metered Twitter read, so every tool below is free.
Link an X account to your key once, so the account-only reads and write actions act as it (or pass per-callauth_token/ct0instead).
"Find the most popular tweets about AI agents posted this week"
The agent callstwitter_advanced_searchwith:
query: "AI agents min_faves:200 since:2024-01-01" product: "Top" count: 20
"Get the last 10 tweets from @sama"
The agent callstwitter_user_tweetswith:
"Get the full thread for this tweet:https://x.com/karpathy/status/1849....."
The agent callstwitter_tweet_threadwith:
url: "https://x.com/karpathy/status/1849....."
"List the first 100 followers of @openai, then the next 100"
First call,twitter_user_followers:{ username: "openai", count: 100 }Second call, pass back thecursorfrom the first response:{ username: "openai", count: 100, cursor: "<cursor from response>" }
"Show me recent tweets mentioning @twitterapis"
The agent callstwitter_user_mentionswith:
username: "twitterapis" count: 50
HTTP 401 (invalid or missing API key)Check thatTWITTERAPIS_KEYis set correctly in your MCP client config and matches the key shown in yourdashboard.
HTTP 402 (insufficient credits)Top up attwitterapis.com/dashboard. Your first $0.50 is free at signup.
HTTP 403 (access forbidden)The account or tweet may be private/protected, or your plan does not include this endpoint.
HTTP 404 (not found)The user, tweet, or list may have been deleted, suspended, or the id/handle is wrong.
HTTP 429 (rate limited)Wait a few seconds and retry. If you hit this frequently, add"TWITTERAPIS_TIMEOUT_MS": "60000"to your env config and space out bulk requests.
Request failed: timed out after 30000msThe default timeout is 30 s. For large paginated fetches setTWITTERAPIS_TIMEOUT_MSto a higher value (e.g.60000).
Tools do not appear in Claude / CursorEnsurenpxis on your PATH and Node.js 18+ is installed (node --version). Check MCP client logs for startup errors.
Calls are billed to your twitterapis.com account. Almost every endpoint is $0.0008/call: all reads (search, profiles, tweets, followers, likes) plus the simple write actions (like, retweet, bookmark, follow and their undos, delete). At the read rate that works out to $0.04 per 1,000 tweets, since each call returns about 20 tweets. The premium endpoints cost a little more: tweet creation, sending a DM (twitter_dm_send), and DM reads (twitter_dm_list,twitter_dm_conversation) at $0.0016/call, full tweet history (twitter_user_tweets_complete) at $0.0024/call, a full tweet thread (twitter_tweet_thread) and a Grok answer (twitter_grok_chat) at $0.004/call, and the article-editing writes (twitter_article_create,twitter_article_update_title,twitter_article_update_cover_media,twitter_article_update_content,twitter_article_publish,twitter_article_unpublish) at $0.0016/call (twitter_article_get,twitter_article_list, andtwitter_article_deletestay at the standard $0.0008/call). Your first $0.50 is free. Seetwitterapis.com/pricing.
- Docs:docs.twitterapis.com
- Dashboard / API keys:twitterapis.com/dashboard
- Pricing:twitterapis.com/pricing
- REST API base URL (call it directly, without MCP):https://api.twitterapis.com
Do I need an X (Twitter) developer account?No. Get an API key attwitterapis.com/signup; there is no application or approval step.
Is it read-only?No. 60 read tools work with just your API key; 34 write actions (post, like, retweet, follow, DM, media upload, List create/add member/remove member, article create/edit/publish/delete, monitor/webhook create/update/delete) act as a linked X account or per-call inline credentials, except monitor/webhook CRUD, which is account administration and needs only your API key.
Which clients are supported?Claude Desktop, Cursor, Windsurf, and VS Code (Copilot agent mode), or any Model Context Protocol client.
How is it billed?Per request. New keys start with $0.50 in free credits, no card required. Seepricing.
Does it store my key or data?No. The server holds no state and forwards your API key on each call.
src/tools.jsisgenerated. Do not edit it. The catalog is built at build time from two committed inputs:
- test/openapi.snapshot.json, a vendored copy of the published OpenAPI spec, which supplies the structure: which endpoints exist, which parameters each accepts, whether a parameter is required, and its type.
- scripts/tools.overrides.mjs, hand-authored, which supplies everything the spec cannot express: the tool and argument descriptions a model reads to decide how to call a tool, the cross-field rules ("provide exactly one ofusernameoruser_id"), the per-call credential arguments that travel asx-headers, and the write / destructive / JSON-body flags.
The spec is vendored on purpose. Nothing is fetched at install time or at server boot, so the published package is a fixed artifact rather than one that depends on a hostname still answering.
npm run openapi:refresh # re-vendor the spec, prints the route diff npm run build # regenerate src/tools.js npm test # gates, incl. "src/tools.js matches the generator"
npm testfails ifsrc/tools.jswas hand-edited or left stale, if the catalog and the live spec disagree, or if the tool list and this README disagree.
Search global news using natural language. Webz.io News Search API returns the most relevant articles and content, with filters for source, country, language, date, sentiment, and category.
A remote MCP server for Bluesky social media platform.
Live data from Twitter, Reddit, the web, GitHub, Amazon and YouTube for AI agents - one hosted MCP server, no API keys.
Manage your X (Twitter) account using the Apex social media infrastructure. Requires an Apex API Key.
An MCP server for interacting with the Reddit API, enabling searches for posts, comments, and subreddits.
MCP server for posting to X (Twitter) with multi-account support
Interact with Reddit by posting comments and searching for posts.
Twitter/X tools for AI agents — read timelines, post tweets, search, and engage
Interact with Twitter to post and search for tweets.
A server for interacting with Twitter, allowing you to post tweets, read timelines, and manage your account through the MCP standard.
Provides Twitter API access without requiring local credential setup. Credentials must be provided at runtime.
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.




