twitr.sh MCP server
online · 100% uptimesh.twitr/twitr·v1.0.0·9 starsX/Twitter reads, search, monitors and posting. Pay-per-call in USDC — no signup, no API keys.
9 stars
Reviews
Write oneNobody has reviewed twitr.sh yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
twitr.sh tools (14, 2 write)
write = sends, deletes, buys or postsx_communitiesFreeRead an X/Twitter Community: profile info, member and moderator rosters, the community's tweets, or keyword search inside the community. Fixed price for info; billed per item for rosters, tweets, and search. Guidance: kind=info (fixed price) or members|moderators|tweets|search (per-item — resultsLimit MANDATORY). id = community ID. search additionally requires q.
x_communityFreeManage X/Twitter Communities as a connected account: create a new community, join or leave an existing one, or delete a community you own. Guidance: PREREQUISITE: connect an X account. Acts as a handle THIS wallet owns. action=create (name, optional description) | join|leave (community_id) | delete (community_id + community_name confirmation). account required. Payment settles before the action; Idempotency-Key required.
x_composeFreeDraft tweets with AI: generate variants from a topic and goal, refine an existing draft, or score a draft for likely engagement — with tone, call-to-action, and style-matching options. Flat sub-cent price per step. Guidance: step=generate (topic + goal required; optional tone/styleUsername/additionalContext/callToAction/mediaType/hasLink/hasMedia), refine (draft required), or score (draft required). Returns text variants with scores and suggestions. Flat floor price per call.
x_drawswrite actionFreeRun a provably fair giveaway on X/Twitter: pick crypto-random winners from a tweet's replies, with retweet, follow, hashtag, keyword, minimum-follower, and account-age conditions. Fixed price set upfront from your estimated entry count. Guidance: tweetUrl required. Optional: winnerCount (default 1), backupCount, uniqueAuthorsOnly, mustRetweet, mustFollowUsername, filterMinFollowers, filterAccountAgeDays, filterLanguage, requiredHashtags/Keywords/Mentions. Pricing is fixed upfront from the estimatedEntries you set (default 1000, max 10000) — set it near the tweet's reply count; that number is enforced as a hard cap. Payment settles before the draw runs, so pay only when you intend to run it; a failed draw does not auto-refund (contact support). Idempotency-Key header required — retries with the same key replay the original result instead of re-charging.
x_extractFreeBulk-export X/Twitter data as downloadable datasets: followers, following, repliers, quoters, reposters, likers, mentions, full threads, list and community members, spaces, or people/tweet search results — 23 extractors. Runs async: you get a claim check immediately and poll a free status URL for the download link. Billed per result. Guidance: tool selects the extractor (23 options). Provide the matching target: targetTweetId (reply/repost/quote/thread/article/favoriters extractors), targetUsername (follower/following/verified/post/mention/likes/media), targetCommunityId, targetListId, targetSpaceId, or searchQuery (people_search, tweet_search_extractor). resultsLimit is MANDATORY — billed per result (article_extractor bills 5× per result). Runs ASYNC: the response is a claim check {snapshot_id, status_url}; poll status_url (free, SIWX) until status=ready for the download link. Idempotency-Key header is required so retries reuse the same job.
x_inboxFreeRead a connected X/Twitter account's private surfaces: bookmarks and bookmark folders, notifications, and DM history. Billed per item returned; readable only for handles this wallet connected. Guidance: PREREQUISITE: connect an X account (see /api/x-accounts/start). Reads act AS that account, so you can only read the inbox of a handle THIS wallet connected. action=bookmarks (optional folderId) | bookmark_folders | notifications (optional type) | dm_history (target_user_id required). bookmarks/notifications/dm_history are billed per item — set resultsLimit (1–10000). account (the connected handle) is required.
x_listsFreeRead an X/Twitter List: its combined tweet timeline, its member roster, or its followers. Billed per item returned. Useful for following a curated set of accounts as one feed. Guidance: kind=tweets|members|followers; id = list ID. resultsLimit is MANDATORY — billed per item returned. tweets supports sinceTime/untilTime and includeReplies.
x_monitorFreeWatch an X/Twitter account or keyword query in real time: new tweets, replies, quotes, mentions, hashtags, and profile changes, delivered to your agent by free polling or HMAC-signed webhooks. Prepaid by the hour with a hard stop at expiry — no open-ended billing. The way to track a brand, competitor, or topic without re-polling paid reads. Guidance: action=create needs username (account monitor, e.g. "vercel") OR query (keyword monitor, X search syntax, ≤512 chars), optional eventTypes — 21 available: post events (tweet.new, .reply, .retweet, .quote, .media, .link, .poll, .mention, .hashtag, .longform) for any monitor, plus profile-change events (profile.avatar/banner/name/username/bio/location/url/verified/protected/pinned_tweet/unavailable.changed) for ACCOUNT monitors only; default all applicable — and hours (1–168, default 1). action=extend needs monitorId + hours; hours append to the current expiry (total prepaid window ≤ 720h). Extend at least 5 minutes BEFORE expiry — extends inside the final 5 minutes are refused (unpaid) to keep settlement from racing the expiry teardown. PREPAID: the monitor stops and is removed at expires_at unless extended — no open-ended billing; early deletion does not refund remaining hours. Idempotency-Key header REQUIRED — retries replay the original monitor instead of re-charging (on the MCP door, retries are protected by single-use payment credentials instead). Pay with USDC on Base (x402) or Tempo (MPP); Solana is not offered for monitors (stateful resources need a recoverable owner wallet). After creation: poll events at /api/monitors/{id}/events (free — SIWX sign-in with the paying wallet; do NOT poll in a tight loop) or register an HTTPS webhook once at /api/webhooks to push signed events straight to your AI agent (Claude, OpenClaw, Hermes, or any endpoint) in real time. Manage monitors at /api/monitors (SIWX).
x_profileFreeEdit a connected X/Twitter account's profile: display name, bio, location, website link, avatar image, and banner image. Acts only on handles this wallet connected. Guidance: PREREQUISITE: connect an X account. Acts as a handle THIS wallet owns. action=update_profile (any of name, description, location, url) | set_avatar (media_url) | set_banner (media_url). account required. Payment settles before the change; Idempotency-Key required.
x_radarFreeTrending topics and breaking stories across tech, dev, science, business, culture, politics, and entertainment — aggregated from multiple public sources with regional and time-window filters. Flat sub-cent price per call; the cheap first stop for what is happening right now. Guidance: Optional filters: category, region, hours (lookback), limit, source. Use report.next_cursor via `after` for the next page. Flat floor price per call.
x_readFreeRead live X/Twitter data: look up a single tweet or user profile, batch-read up to 100 tweets or users at once, check whether one account follows another, fetch trending topics by region, extract a long-form article, or download tweet media. Pay per call in USDC — no API key, no signup; failed calls are never charged. Guidance: resource=get-tweet|get-user (id), batch-tweets|batch-users (ids array, ≤100), check-follower (source+target usernames), trends (optional woeid/count), article (tweet id), followers-you-know (id + mandatory resultsLimit), download-media (id or ids ≤50 — returns media file URLs on THIS origin; links live 7 days). Fixed-price per call/id except followers-you-know which is per-result.
x_searchFreeSearch X/Twitter tweets with the full operator set — keyword, exact phrase, from-user, language, date range, media type, minimum likes/retweets, verified-only — or search user profiles by keyword. Billed per tweet returned against your resultsLimit cap. Built for tracking what people say about a topic, brand, or ticker in real time. Guidance: type=search-tweets (default): q required, resultsLimit MANDATORY (billed per tweet returned). Supports the full filter set: fromUser, language, sinceDate/untilDate, mediaType, minFaves, verifiedOnly, exactPhrase, excludeWords, advancedQuery, and more. type=search-users: q required; returns one results page per call — follow report.next_cursor for the next page (each page is a separate paid call).
x_timelineFreeFetch a user's X/Twitter timeline — their tweets, replies, likes, media posts, or mentions — plus follower and following lists, and per-tweet engagement lists (who replied, quoted, retweeted, or favorited). Billed per item returned. The building block for monitoring what an account posts or ranking accounts by activity. Guidance: kind selects the timeline: user-tweets|user-replies|user-likes|user-media|user-mentions|followers|following|verified-followers (id = user) or tweet-replies|tweet-quotes|tweet-thread|tweet-favoriters|tweet-retweeters (id = tweet). resultsLimit is MANDATORY — billed per item returned. Search-operator filters (fromUser, language, mediaType, minFaves, …) apply to tweet timelines.
x_writewrite actionFreeAct on X/Twitter through an account you connect: post a tweet, reply, like, retweet, follow or unfollow, send a DM, delete a tweet, remove a follower, or upload media. Ownership is checked server-side — an agent can only write as a handle its own wallet connected. Guidance: PREREQUISITE: connect an X account first — POST /api/x-accounts/start (free, SIWX) with {username} only; it returns a one-time connect_url the USER opens in their own browser to sign in there. Never ask the user for their X password, email, or 2FA secret. Poll GET /api/x-accounts until the handle shows linked, then reference it in `account`. Actions: post (text) | reply (text + reply_to_tweet_id) | like|unlike|retweet|unretweet|delete_tweet (target_tweet_id) | follow|unfollow (target_user_id — the NUMERIC user id, get it from x_read get-user) | remove_follower (target_user_id of the follower) | send_dm (target_user_id + text) | upload_media (media_url → returns media_id). You can only write as a handle THIS wallet connected (checked server-side; the input account is not trusted). Payment settles before the action runs and is non-refundable; a write may return status=pending_confirmation with an actionId to poll — do NOT resend. Idempotency-Key header is required so a retry replays the original result instead of acting twice.
Public scan report
scanner v0.1.9 · 2026-09-24 · same rubric, same numbers if you re-run it
- –Code scanremote-only server, no package to scann/a
- Live reliabilityremote reachable in 270ms20/20
- Tool poisoning14 tool descriptions checked15/15
- Auth qualityopen endpoint exposes 2 write-action tools with no auth3/15
- Maintenancelast push 53 days ago12/15
- Maintainer identitynamespace and repository owner differ; GitHub account older than a year; website matches verified namespace7/10
Findings (1)
- highWrite-action tools reachable without authentication
auth.open-write
How twitr.sh compares
Against every graded Web search MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 76/100
- higher than 53% of 3,472 Web search servers
- Tools
- 14
- the typical Web search server has 5
- Tools that change things
- 14%
- typical: 0%. Fewer write tools means less an agent can break
- Uptime
- 100%
- of our recent checks; the typical remote Web search server answers 100%
- Response time
- 224 ms
- faster than 62% of 2,237 Web search servers
- GitHub stars
- 9
- more than 85% of 1,783 Web search servers
What its tools let an agent do: 12 read · 2 change
Install twitr.sh in Claude Code, Cursor or VS Code
claude mcp add --transport http twitr https://twitr.sh/api/mcp
What the publisher says
From the twitr.sh repository's README, as published. We do not edit it. Read it on GitHub
X (Twitter) skills for Claude Code — no API key, no developer account
Six installable X/Twitter skills for Claude Code, Cursor, OpenClaw and Hermes — paid per call in USDC. No X developer account, no API keys, no OAuth, no signup, no subscription.
Start in 60 seconds · Ideas · The skills · Wallets · Pricing · Links
⚡ Start in 60 seconds
Most X/Twitter skills wrap the official API, so the setup is yours: register an X developer account, create an app, complete OAuth, store the tokens, and pay X directly. These skip all of it — your agent's wallet pays per request, and that payment is the authentication.
1 · Install the skills (needs Node 18+ and git on PATH):
npx skills add lnvestor/twitr-skillsClaude Code users can install from the plugin marketplace instead — either path works:
/plugin marketplace add lnvestor/twitr-skills
/plugin install twitr-skills@twitr2 · Get a wallet. Any x402/MPP wallet works — each one's own documented command:
First time with agent wallets? → Wallet setup has step-by-step guides (AgentCash's onboarding bonus can even fund you up to $25 for free).
3 · Ask your agent something. The first call returns HTTP 402 with the exact price — that's the quote, not an error. Your wallet pays and retries automatically. $5 covers thousands of reads.
💡 What can my agent do?
Copy-paste any of these once the skills are installed:
"What is @vercel posting about this week?"
"Search X for what people are saying about my product — top 50 by likes, English only."
"Watch @competitor and tell me the moment they announce something." — a real-time monitor; events reach your agent by free polling or signed webhook
"Draft 3 tweet variants announcing our launch in my voice — I'll pick one, then post it."
"Export everyone who replied to this tweet as a dataset."
"Run my X presence: watch these 3 topics, queue drafts every morning, replies wait for my approval."
📦 The skills
Six focused skills with explicit trigger boundaries, so they don't fire over each other.
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
twitr.sh: common questions
- Is twitr.sh MCP server safe?
- Mostly: it is graded B (76/100). Read the twitr.sh safety report
- How do I install twitr.sh?
- It runs remotely at twitr.sh. Add it to Claude Code, Cursor, VS Code or Claude Desktop with the snippets above, or call it through the mcp.market gateway without installing anything.
- Does twitr.sh need an API key?
- Not as far as the registry entry and our scan can tell: no credentials are declared or required.
- Is twitr.sh maintained?
- The last commit was 92 days ago (2026-08-02). The latest release is v1.0.0.
- Is twitr.sh up?
- 100% of our last 28 checks got an answer. We check remote servers about four times a day.
- What can I use instead of twitr.sh?
- Servers from other publishers that do the same job: Tenjin MCP server, Tolgee MCP server and Reddit Buddy MCP server.
- How does twitr.sh compare with other Web search MCP servers?
- safety score 76/100 (higher than 53% of 3,472 Web search servers); tools 14 (the typical Web search server has 5); tools that change things 14% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.
Alternatives to twitr.sh
Same job from other publishers: the closest match first, then the best rated.
TenjinSearch, read & publish paid essays. Pay-per-read in USDC on Base (x402); wallet-only, no account.not reviewedEstablishedB- TolgeeYour app's translations in Tolgee: search keys, create translations, trigger machine translationnot reviewedEstablishedA
- Reddit BuddyBrowse Reddit RSS; approved API access for search, analysis, and optional posting.not reviewedEstablishedA
- CrgToken-efficient code review knowledge graph: semantic search and call-graph resolution.not reviewedEstablishedB
- DocdexFast per-repo documentation indexer and full-text search MCP server for codebases.not reviewedGrowingB