The best Twitter MCP server depends on the job. Official X MCP at https://api.x.com/mcp wins first-party search, bookmarks, news, and Articles because it is X's own Streamable HTTP server, reached through npx -y @xdevplatform/xurl. twitterapi.io wins tweet and profile reads without an X developer app, at $0.15 per 1,000 tweets on the vendor pricing page fetched 17 October 2026. OpenTweet wins posting and scheduling on a flat Pro plan of $19.99 per month. Trends MCP is first only for the live X (Twitter) Trending board: one get_top_trends call, no X app, default limit 25. It cannot post, search tweets, or read timelines.
Which Twitter MCP server wins each job?
Official X MCP is the first-party pick for anyone who already has an X developer app on pay-per-use billing. The docs at docs.x.com/tools/mcp (GitHub mirror xdevplatform/docs, accessed 17 October 2026) list two hosted servers: https://api.x.com/mcp for the API and https://docs.x.com/mcp for documentation search (search_x, get_page_x). The API server speaks protocol 2025-06-18 with serverInfo: xmcp. Writes and user-context reads go through the xurl OAuth bridge. App-only Bearer against the same URL is read-only and has no auto-refresh.
twitterapi.io is the hosted tweet-search pick when the buyer will not enroll an X developer app. The Cursor docs at docs.twitterapi.io list 12 read-only tools on https://mcp.twitterapi.io/mcp. OpenTweet is the posting pick: 43 tools, hosted at https://mcp.opentweet.io/mcp, no X developer account. GetXAPI is the cheap unofficial REST wrapper ($0.001 per standard call on getxapi.com/pricing). @enescinar/twitter-mcp is the smallest official-API wrapper: two tools, last npm publish 26 June 2025.
Trends MCP sits in a different slot. Cursor MCP setup points at https://api.trendsmcp.ai/mcp. The X surface is one live feed, type string X (Twitter) Trending, documented on the X Twitter trending API page. Keyword growth for a topic that appears on that board has to use another source such as google search or youtube, because X is not a get_growth keyword source.
How the six servers compare
| Server | Best for | Auth | Hosted URL or launcher | Tools (vendor claim) | Billing verified 17 Oct 2026 |
|---|---|---|---|---|---|
| Official X MCP | First-party search, bookmarks, Articles | X app OAuth via xurl, or app-only Bearer | https://api.x.com/mcp | Posts, Search, Users, Bookmarks, News and Trends, Articles | X API pay-per-use: Post read $0.005, Post create $0.015, Post create with URL $0.200, Trends $0.010 per request |
| twitterapi.io | Tweet, profile, follower, reply reads | TWITTERAPI_IO_API_KEY | https://mcp.twitterapi.io/mcp or npx -y @twitterapi_io/mcp-server | 12 read-only | $0.15 per 1,000 tweets; $1 = 100,000 credits; 15 credits per returned tweet; min $0.00015 per call |
| OpenTweet | Post, schedule, threads, Articles | ot_ key | https://mcp.opentweet.io/mcp or npx -y @opentweet/mcp-server | 43 | Help center 12 Oct 2026: Pro $19.99, Advanced $29, Agency $49. npm README 1.6.0 still says from $11.99 |
| GetXAPI | Unofficial REST plus MCP writes | GETXAPI_KEY; writes also need X_AUTH_TOKEN | npx -y @getxapi/mcp@latest | README groups read vs write; pricing page lists 73 REST endpoints | Standard $0.001/call; signup credits $0.10; optional Pro $15 / Growth $49 / Scale $99 |
| EnesCinr twitter-mcp | Smallest official-API post + search | Four X API env vars | npx -y @enescinar/twitter-mcp | post_tweet, search_tweets | Same X pay-per-use meter as official MCP |
| Trends MCP | Live X trending board, plus Google/TikTok/Reddit | Bearer tmcp_live_… | https://api.trendsmcp.ai/mcp | Docs/llms.txt: three tools. Live MCP also exposes get_top_posts for tiktok and instagram, not X | Markdown: Free $0 / 100 req; Starter $19 / 1,000; Pro $49 / 5,000; Business $199 / 25,000. HTML yearly cards show $16 / $192, $39 / $468, $159 / $1,910 |
Cookie or browser-session servers such as mcp-twikit and XActions are omitted from the ranking. They log in with username, password, or cookies. That path is easier to stand up and easier to get an account suspended.
What Cursor JSON actually looks like
Official X MCP, full OAuth via xurl, from the 17 October 2026 GitHub mirror of docs.x.com/tools/mcp. npm @xdevplatform/xurl is 1.3.4, 6,138 weekly downloads, last publish 29 September 2026. Register redirect http://localhost:8080/callback on the X app. Raise client startup timeout to 300 seconds so the first browser login can finish.
{
"mcpServers": {
"xapi": {
"command": "npx",
"args": ["-y", "@xdevplatform/xurl", "mcp", "https://api.x.com/mcp"],
"env": {
"CLIENT_ID": "YOUR_X_APP_CLIENT_ID",
"CLIENT_SECRET": "YOUR_X_APP_CLIENT_SECRET"
}
}
}
}
App-only Bearer skips the bridge and is read-only:
{
"mcpServers": {
"xapi": {
"url": "https://api.x.com/mcp",
"headers": {
"Authorization": "Bearer YOUR_APP_ONLY_BEARER_TOKEN"
}
}
}
}
twitterapi.io publishes two Cursor shapes that must not be treated as one config. Hosted HTTP on docs.twitterapi.io/integrations/cursor (accessed 17 October 2026) uses Authorization: Bearer. Local stdio on npm @twitterapi_io/mcp-server 0.2.0 (157 weekly downloads, last publish 28 May 2026) uses TWITTERAPI_IO_API_KEY and, per that README, sends X-API-Key to https://api.twitterapi.io. The same npm README still says Streamable HTTP is "planned for v0.2+". The hosted URL is already live.
{
"mcpServers": {
"twitterapi-io": {
"url": "https://mcp.twitterapi.io/mcp",
"headers": {
"Authorization": "Bearer YOUR_TWITTERAPI_IO_KEY"
}
}
}
}
OpenTweet also ships two shapes. Homepage and npm 1.6.0 (98 weekly downloads, last publish 15 September 2026) agree on https://mcp.opentweet.io/mcp. Homepage Cursor JSON has url plus Authorization: Bearer ot_your_key and no type. The npm README hosted block sets "type": "streamable-http". Local stdio uses OPENTWEET_API_KEY.
{
"mcpServers": {
"opentweet": {
"url": "https://mcp.opentweet.io/mcp",
"headers": {
"Authorization": "Bearer ot_your_key"
}
}
}
}
GetXAPI (@getxapi/mcp 0.1.1, 50 weekly downloads, last publish 31 May 2026) is stdio only in the README:
{
"mcpServers": {
"getxapi": {
"command": "npx",
"args": ["-y", "@getxapi/mcp@latest"],
"env": {
"GETXAPI_KEY": "get-x-api-..."
}
}
}
}
EnesCinr (@enescinar/twitter-mcp 0.2.0, 203 weekly downloads, last publish 26 June 2025) needs all four X user-context keys:
{
"mcpServers": {
"twitter-mcp": {
"command": "npx",
"args": ["-y", "@enescinar/twitter-mcp"],
"env": {
"API_KEY": "your_api_key_here",
"API_SECRET_KEY": "your_api_secret_key_here",
"ACCESS_TOKEN": "your_access_token_here",
"ACCESS_TOKEN_SECRET": "your_access_token_secret_here"
}
}
}
}
Trends MCP Cursor JSON on llms.txt (Last updated 2026-10-17) includes transport and the Bearer prefix. The homepage copy-config block fetched the same day omits both (Authorization: YOUR_API_KEY with no Bearer, no transport). Use the llms.txt form:
{
"mcpServers": {
"trends-mcp": {
"url": "https://api.trendsmcp.ai/mcp",
"transport": "http",
"headers": {
"Authorization": "Bearer YOUR_API_KEY"
}
}
}
}
Claude.ai Connectors are a second host: the www host /mcp path with OAuth, and no API key in that connector config. Do not "correct" that path to the api host.
Does Trends MCP replace the official X MCP?
No. Trends MCP does not search tweets, resolve user IDs, list followers, post, bookmark, or draft Articles. Official X MCP does those jobs because every tool call hits the X API under the buyer's own app. The Trends MCP X surface is the ranked topic board.
Call get_top_trends with type exactly X (Twitter) Trending. Labels are case-sensitive. Shorter strings fail. Optional country accepts ISO 3166-1 alpha-2 codes (examples in docs: GB, JP). Aliases such as "United States" resolve to the default board. Omit country for that default. If the requested board is not stored yet, the handler fetches it live. limit defaults to 25 and maxes at 200. Free plan boards return the top 10 only; offset is pinned to 0 on Free. sort is rank by default; rank_change with window 1d, 3d, 7d, 14d, or 30d returns climbers versus a prior snapshot.
llms.txt and docs.md both still say "Three tools" (get_time_series, get_growth, get_top_trends). The live MCP server this run also exposes get_top_posts, sources tiktok and instagram only, default and max 20. That fourth tool does not take source twitter or x. pricing.md does not name it.
Live-feed counts also disagree on the same Last updated date. llms.txt lists 24 live feeds, including the four category boards (Google Trends by Category, TikTok Trending Hashtags by Category, Amazon Best Sellers by Category, Substack by Category). data-sources.md and the homepage live-feed table print 20 rows and drop those four boards. Keyword sources are 16 in both places, ending with python. X is not among them. Source-count marketing copy also disagrees: homepage hero 35+, homepage FAQ 40+, pricing HTML heading 30+, pricing FAQ 40+. Do not flatten those to one number.
MCP get_top_trends costs 1 credit per 10 requested rows (max 10 credits per call). REST is 1 request per call. The pricing HTML FAQ still says "One successful API or MCP call = one request." Those two sentences are both on the site. Quote the one that matches the transport in use.
A typical desk loop: pull the X board once, pick a few topic strings, then run get_growth on google search or youtube for those strings. Pair it with the Twitter trends overview if the buyer also wants search and video context around the same names.
What posting and search actually cost
Official X API pricing is pay-per-usage with no subscription, per x-api/getting-started/pricing.mdx in xdevplatform/docs (accessed 17 October 2026). Read operations bill per resource returned. Write operations bill per request. The table that matters for MCP agents:
- Posts: Read $0.005
- User: Read $0.010
- Post: Create $0.015
- Post: Create (with URL) $0.200
- Trends $0.010 per request
- Owned Reads $0.001 per resource when
{id}is the app owner - Pay-per-usage Post reads capped at 3 million per monthly billing cycle
- Resources deduplicated within a 24-hour UTC day (soft guarantee)
- New-card incentive: $20 free X API credits after the first eligible card and first credit purchase (separate free-credits page)
A 100-post search at $0.005 is $0.50. Twenty plain posts at $0.015 is $0.30. Twenty link posts at $0.200 is $4.00. Official X MCP has no extra MCP fee; it meters the same credits.
twitterapi.io prices tweets at $0.15 per 1,000 ($0.00015 each, 15 credits) with a $0.00015 floor on empty or single-result calls. A 20-tweet page is $0.003. The vendor's own comparison against official Post reads is about 33 times cheaper per tweet ($0.15 vs $5.00 per 1,000 official reads). Profiles, followers, and follower IDs use volume tiers (1 to 18 credits per profile; 0.45 to 2 credits per follower ID). npm README says "free tier available." The pricing page fetched this run is pay-as-you-go with no named free quota. Check the dashboard for whatever signup grant is live.
OpenTweet help (last updated 12 October 2026) lists Pro $19.99 per month ($15.83 billed annually), Advanced $29 ($24.17), Agency $49 ($40.83). Annual save is about 21% on Pro and about 17% on Advanced and Agency. Link-post caps: Pro 1 per day, Advanced 10 per day, Agency 20 per day. The /pricing table states the same caps as 30 / 300 / 600 per month. Trial is 7 days, card required, charged on day 7, with 5 link posts total (15 for agent accounts) and 2 X searches a day. npm @opentweet/mcp-server 1.6.0 README still says "flat pricing from $11.99/month." The live pricing title and help center both start at $19.99. Use $19.99 unless the npm line is re-fetched and changed.
GetXAPI standard calls are $0.001 and the vendor says they typically return about 20 tweets ($0.05 per 1,000). Create tweet is $0.002. Trends and trend locations are $0.001. Optional plans: Starter $5 one-time (4.5 plan credits, 30 days, once per account), Pro $15 / 30 credits, Growth $49 / 120, Scale $99 / 300. Top-ups start at $10 and do not expire. Write tools in the MCP README need X_AUTH_TOKEN (and optional X_CT0, X_TWID). Option A passes the X password through the model via x_login. That is a session, not the official X OAuth app flow.
Trends MCP markdown pricing (Last updated 2026-10-17): Free 100 requests, Starter $19 / 1,000, Pro $49 / 5,000, Business $199 / 25,000, annual saves 20%. HTML yearly cards on /pricing display Starter $16 ($192 billed annually), Pro $39 ($468), Business $159 ($1,910). Trial FAQ says the card is not charged until day 8; the plan cards say "Card charged after day 7." Keyword alerts: Starter 10, Pro 50, Business 250. Failed 2xx-not calls are free.
EnesCinr has no product price. Every post_tweet and search_tweets call is an official X API request on the buyer's credits.
FAQ
What is the best MCP server for Twitter in Cursor?
For first-party archive search, bookmarks, and Articles, official X MCP. For tweet and profile reads without an X developer app, twitterapi.io (12 tools, $0.15 per 1,000 tweets). For posting and scheduling, OpenTweet (43 tools, Pro $19.99 per month on the 12 October 2026 help page). For a live trending-topic board without an X app, Trends MCP type X (Twitter) Trending. There is no single winner across those jobs.
Does the official X MCP require pay-per-use billing?
Yes for any useful call. The MCP host itself has no separate subscription, but tools resolve to X API endpoints. New developer apps enroll in pay-per-use. Docs list a client-not-enrolled error when the app is not on Pay-per-use plus Production. There is no free API tier for new projects on the pricing page fetched this run.
Can Trends MCP post tweets or search a handle?
No. Trends MCP tools are read-only trend feeds and keyword series. Posting belongs to official X MCP, OpenTweet, GetXAPI writes, or EnesCinr post_tweet. Handle search belongs to official X MCP, twitterapi.io get_user_info / search_tweets, or GetXAPI user endpoints.
Is twitterapi.io the same as the official X API?
No. twitterapi.io is an independent data API. The MCP server is MIT-licensed at github.com/kaitoInfra/twitterapi-io-mcp-server. It does not need an X developer app. It also does not inherit first-party archive search, compliance streams, or X's ToS cover. Official X MCP is the ToS-clean path for those.
Should an agent use cookie-based Twitter MCP servers?
Not for anything that can take an account down. Session servers skip the published API. GetXAPI writes that inject X_AUTH_TOKEN sit in the same risk class even though reads can run on GETXAPI_KEY alone. Official X MCP and OpenTweet keep the X connection on an OAuth app the vendor or the buyer registered.
Sources (accessed 17 October 2026): GitHub xdevplatform/docs tools/mcp.mdx and x-api/getting-started/pricing.mdx; npm @xdevplatform/xurl 1.3.4, @twitterapi_io/mcp-server 0.2.0, @opentweet/mcp-server 1.6.0, @getxapi/mcp 0.1.1, @enescinar/twitter-mcp 0.2.0; docs.twitterapi.io/integrations/cursor; twitterapi.io/pricing and /twitter-mcp-server; getxapi.com and /pricing; opentweet.io, /pricing, /help/pricing-plans (12 Oct 2026); Trends MCP llms.txt, docs.md, pricing.md, data-sources.md, homepage, and /pricing HTML (Last updated 2026-10-17).