X/Twitter MCP Server that wraps xurl (official X CLI) as MCP tools. Provides access to X/Twitter functionality including community posting, tweets, search, engagement, and media management.
34 tools with complete JSON schemas and descriptions, but quality is uneven. Naming is verb-forward (x_post, x_reply, x_delete_tweet) and mostly clear. Descriptions are present but brief (avg ~80 chars, below the 194-char baseline). Parameter descriptions are minimal or absent for many tools. No output schemas documented. Error handling is generic ('ok: false, output: msg'). Tools like x_raw_api_call expose low-level API details rather than abstracting them. No idempotency hints, no confirmation patterns for destructive ops (x_delete_tweet), no pagination guidance for list tools (x_get_followers, x_get_following). Parameter validation is weak, no enum constraints on optional fields, no format specs for IDs.
Block a user by username or user ID.
Bookmark a tweet.
Look up a community by ID. Returns name, description, member count, etc.
Post a tweet to your X Community page. Uses the configured community ID by default.
Post a tweet with media to your X Community. Upload media first with x_upload_media.
Search for X Communities by keyword.
No output schemas documented. LLMs cannot plan downstream calls or extract required fields (e.g., tweet_id from x_post, user_id from x_get_user). Baseline: 100% of A+ tools document return types.
Destructive tools (x_delete_tweet) lack confirmation or dry-run patterns. Agents can delete tweets without verification, risking irreversible data loss.
List tools (x_get_followers, x_get_following, x_timeline, x_mentions) lack pagination guidance. No documented limit, no next_cursor, no total_count. Large result sets risk context window exhaustion.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 53 | 2026-07-28+ | v2 |
Delete a tweet by ID.
Follow a user by username or user ID.
Get a user's followers list.
Get a user's following list.
Get users who liked a specific tweet.
Get quote tweets for a specific tweet.
Get replies to a specific tweet.
Get users who retweeted a specific tweet.
Get user profile information by username or user ID.
Get tweets from a specific user.
Like a tweet.
Get your recent @mentions.
Mute a user by username or user ID.
Post a tweet to your main timeline.
Quote a tweet with your own commentary.
Make a raw X API v2 call. Supports GET, POST, PUT, DELETE. Useful for endpoints not covered by shortcut commands.
Read a specific tweet by ID.
Reply to a specific tweet.
Retweet a tweet.
Search recent tweets (last 7 days). Supports X search operators.
Get your home timeline.
Unblock a user by username or user ID.
Remove a bookmark.
Unfollow a user by username or user ID.
Unlike a tweet.
Unmute a user by username or user ID.
Remove a retweet.
Upload media (image, video, GIF) to X. Returns media_id for use in posts.
Parameter descriptions are minimal or absent. Many tools have parameters (e.g., 'count' in x_get_followers) with no description of range, default, or constraints. Baseline: 100% of A+ tools have param descriptions.
x_raw_api_call exposes low-level API details (method, endpoint, raw JSON body). This violates the chat-data-model pattern, users think in terms of actions, not HTTP verbs. Agents will struggle to compose correct API calls.