Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| X_USER_ID | Yes | Your X user ID | |
| XAI_API_KEY | No | xAI key for intelligence tools | |
| X_CLIENT_ID | No | OAuth for write operations (posting, DMs) | |
| X_BEARER_TOKEN | Yes | X API bearer token (read-only operations) |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| x_home_timeline | Get your home timeline — tweets from people you follow. Requires OAuth token. Args:
count: Number of tweets to fetch (1-100, default 20) |
| x_user_tweets | Get recent tweets from a specific user. Args:
username: X username (without @) or user ID
count: Number of tweets (1-100, default 20) |
| x_get_tweet | Get a specific tweet by ID with full details. Args:
tweet_id: The tweet ID to fetch |
| x_post_tweet | Post a new tweet. Requires OAuth token with tweet.write scope. Args:
text: Tweet text (max 280 characters)
reply_to: Optional tweet ID to reply to |
| x_delete_tweet | Delete one of your tweets. Permanent action. Args:
tweet_id: ID of the tweet to delete |
| x_search_tweets | Search recent tweets (last 7 days). Supports X search operators. Args:
query: Search query. Supports operators like 'from:user', 'has:links', '#hashtag', '-filter:retweets'
count: Number of results (10-100, default 20) |
| x_list_dms | List your actual DM conversations (where you've replied). Filters out unanswered message requests. Args:
count: Number of DM events to scan (1-100, default 50). Higher = more conversations found. |
| x_message_requests | List pending DM message requests — messages from people you haven't replied to. Args:
count: Number of DM events to scan (1-100, default 50). |
| x_read_dm | Read messages from a specific DM conversation. Args:
conversation_id: The DM conversation ID
count: Number of messages (1-100, default 20) |
| x_send_dm | Send a direct message to a user. Requires OAuth with dm.write scope. Args:
user_id: The recipient's user ID
text: Message text |
| x_bookmarks | Get your bookmarked tweets. Requires OAuth token. Args:
count: Number of bookmarks (1-100, default 20) |
| x_liked_tweets | Get liked tweets for yourself or another user. Args:
username: Username or user ID (default: your account)
count: Number of likes (1-100, default 20) |
| x_like_tweet | Like a tweet. Requires OAuth token. Args:
tweet_id: ID of the tweet to like |
| x_user_info | Get detailed profile info for a user. Args:
username: X username (without @) or user ID |
| x_followers | List followers for yourself or another user. Args:
username: Username or user ID (default: your account)
count: Number of followers (1-1000, default 50) |
| x_following | List accounts you (or another user) follow. Args:
username: Username or user ID (default: your account)
count: Number of accounts (1-1000, default 50) |
| x_analyze_topic | Use Grok AI to analyze what X is saying about a topic right now. Returns insights with citations from real-time X data. Args:
topic: Topic to analyze (e.g., 'AI agents', 'Claude Code', 'Bitcoin') |
| x_daily_digest | Generate an AI-powered daily digest of what's happening on X. Uses Grok with real-time X search. Args:
focus: Optional focus area (e.g., 'AI', 'crypto', 'tech startups'). Defaults to general tech/AI. |
| x_summarize_thread | Use Grok to find and summarize a tweet thread. Provides key points and analysis. Args:
tweet_id: ID of the first tweet in the thread (or any tweet in it) |
| x_analyze_account | Use Grok to analyze an X account — their posting patterns, key topics, influence, and recent activity. Args:
username: X username (without @) |
| x_dm_inbox | List all DM conversations — both regular (REST API) and encrypted (XChat GraphQL). Shows conversation list with participant info, last message preview,
and encryption status. Encrypted conversations are fetched from XChat
and decrypted if private key is available.
Args:
count: Max conversations to return (default 20) |
| x_dm_read_conversation | Read messages from a DM conversation. Automatically detects encrypted conversations (IDs starting with 'e')
and uses XChat GraphQL + decryption. Regular conversations use REST API.
Args:
conversation_id: The conversation ID
count: Max messages to fetch (default 50) |
| x_dm_send | Send a DM via X's internal API (regular conversations only). Args:
conversation_id: The conversation ID to send to
text: Message text to send |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |