The X MCP Server allows integration with X (Twitter) for reading and engaging with tweets via a TypeScript-based server.
Capabilities:
Retrieve tweets from your home timeline (with optional limit up to 100)
Post new tweets (up to 280 characters)
Reply to existing tweets using their ID
Built-in rate limit handling for X's free tier (500 posts/100 reads per month)
TypeScript implementation for type safety and scalability
A Model Context Protocol (MCP) server for X (Twitter) integration that provides tools for reading your timeline and engaging with tweets. Allows users to get tweets from their home timeline, create new tweets, reply to tweets, and includes built-in rate limit handling for the free API tier.
X MCP Server
A Model Context Protocol (MCP) server for X (Twitter) integration that provides tools for reading your timeline and engaging with tweets. Designed for use with Claude desktop.
Features
Get tweets from your home timeline
Create new tweets
Reply to tweets
Built-in rate limit handling for the free API tier
TypeScript implementation with full type safety
Prerequisites
Node.js (v16 or higher)
X (Twitter) Developer Account (Free)
Claude desktop app
X API Access
X (Twitter) provides a free tier for basic API access:
Free Tier Features
Post Limits:
500 posts per month at user level
500 posts per month at app level
Read Limits:
100 reads per month
Features:
Access to v2 post posting endpoints
Media upload endpoints
Access to Ads API
Limited to 1 app ID
Login with X functionality
Rate Limits:
Rate-limited access to all endpoints
Limits reset periodically
Note: For higher volume needs, paid tiers are available:
Basic tier ($100/month): 50,000 tweets/month, additional endpoints
Pro tier ($5000/month): Higher limits and enterprise features
You can access the free tier at: https://developer.x.com/en/portal/products/free
Installation
Clone the repository:
Install dependencies:
Build the server:
Configuration
You need to set up your X (Twitter) API credentials. Follow these detailed steps:
Go to the Twitter Developer Portal
Sign in with your X (Twitter) account
If you don't have a developer account, you'll be prompted to create one
Access the Free Tier:
Click "Subscribe" for the Free Access tier
Complete the registration process
Create a new project:
Click "Create Project" button
Enter a project name (e.g., "MCP Integration")
Select "Free" as your setup
Choose your use case
Click "Next"
Create a new app within your project:
Click "Create App"
Enter an app name
Click "Complete Setup"
Configure app settings:
In your app dashboard, click "App Settings"
Under "User authentication settings":
Click "Set Up"
Enable OAuth 1.0a
Select "Web App" or "Native App"
Enter any URL for callback (e.g., https://example.com/callback)
Enter any URL for website (e.g., https://example.com)
Click "Save"
Set app permissions:
In app settings, find "App permissions"
Change to "Read and Write"
Click "Save"
Generate API Keys and Tokens:
Go to "Keys and Tokens" tab
Under "Consumer Keys":
Click "View Keys" or "Regenerate"
Save your API Key and API Key Secret
Under "Access Token and Secret":
Click "Generate"
Make sure to select tokens with "Read and Write" permissions
Save your Access Token and Access Token Secret
Important:
Keep your keys and tokens secure and never share them publicly
You'll need all four values:
API Key (also called Consumer Key)
API Key Secret (also called Consumer Secret)
Access Token
Access Token Secret
Remember the free tier limits:
500 posts per month at user level
500 posts per month at app level
100 reads per month
Claude Desktop Configuration
To connect the X MCP server with Claude desktop, you need to configure it in the Claude settings. Follow these steps:
Open File Explorer
Navigate to the Claude config directory:
Press Win + R
Type
%APPDATA%/Claude
and press EnterIf the Claude folder doesn't exist, create it
Create or edit
claude_desktop_config.json
:If the file doesn't exist, create a new file named
claude_desktop_config.json
If it exists, open it in a text editor (like Notepad)
Add the following configuration, replacing the placeholder values with your actual API credentials from the previous section:
Save the file and restart Claude desktop
Note: Make sure to:
Replace all four credential values with your actual API keys and tokens
Keep the quotes ("") around each value
Maintain the exact spacing and formatting shown above
Save the file with the
.json
extension
Available Tools
get_home_timeline
Get the most recent tweets from your home timeline.
Parameters:
limit
(optional): Number of tweets to retrieve (default: 20, max: 100)
Example:
create_tweet
Create a new tweet.
Parameters:
text
(required): The text content of the tweet (max 280 characters)
Example:
reply_to_tweet
Reply to a tweet.
Parameters:
tweet_id
(required): The ID of the tweet to reply totext
(required): The text content of the reply (max 280 characters)
Example:
Development
npm run build
: Build the TypeScript codenpm run dev
: Run TypeScript in watch modenpm start
: Start the MCP server
Rate Limiting
The server includes built-in rate limit handling for X's free tier:
Monthly limits:
500 posts per month at user level
500 posts per month at app level
100 reads per month
Features:
Tracks monthly usage
Provides exponential backoff for rate limit errors
Clear error messages when limits are reached
Automatic retry after rate limit window expires
License
MIT
Contributing
Fork the repository
Create your feature branch (
git checkout -b feature/amazing-feature
)Commit your changes (
git commit -m 'Add some amazing feature'
)Push to the branch (
git push origin feature/amazing-feature
)Open a Pull Request
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Server for X (Twitter) integration that provides tools for reading your timeline and engaging with tweets. Designed for use with Claude desktop.
Related MCP Servers
- AsecurityAlicenseAqualityAn MCP server that allows Claude to create, manage and publish X/Twitter posts directly through the chat interface.Last updated -60MIT License
- AsecurityAlicenseAqualityAn MCP server that enables Claude to interact with Twitter, allowing for posting tweets and searching Twitter content.Last updated -173296MIT License
- -securityAlicense-qualityA Model Context Protocol server that enables AI models and applications to interact directly with Twitter/X, providing capabilities to create posts, reply to tweets, retrieve user data, and manage account actions.Last updated -09MIT License
- -securityAlicense-qualityEnables interaction with X (formerly Twitter), allowing for posting tweets, searching content, managing accounts, and organizing lists.Last updated -33MIT License