An MCP server for X (Twitter) integration, allowing you to read timelines and engage with tweets.
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.
X (Twitter) provides a free tier for basic API access:
Note: For higher volume needs, paid tiers are available:
You can access the free tier at: https://developer.x.com/en/portal/products/free
git clone [your-repo-url]
cd x-mcp-server
npm install
npm run build
You need to set up your X (Twitter) API credentials. Follow these detailed steps:
Go to the Twitter Developer Portal
Access the Free Tier:
Create a new project:
Create a new app within your project:
Configure app settings:
Set app permissions:
Generate API Keys and Tokens:
Important:
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:
%APPDATA%/Claude
and press EnterCreate or edit claude_desktop_config.json
:
claude_desktop_config.json
Add the following configuration, replacing the placeholder values with your actual API credentials from the previous section:
{
"mcpServers": {
"x": {
"command": "node",
"args": ["%USERPROFILE%/Projects/MCP Basket/x-server/build/index.js"],
"env": {
"TWITTER_API_KEY": "paste-your-api-key-here",
"TWITTER_API_SECRET": "paste-your-api-key-secret-here",
"TWITTER_ACCESS_TOKEN": "paste-your-access-token-here",
"TWITTER_ACCESS_SECRET": "paste-your-access-token-secret-here"
}
}
}
}
Note: Make sure to:
.json
extensionGet the most recent tweets from your home timeline.
Parameters:
limit
(optional): Number of tweets to retrieve (default: 20, max: 100)Example:
await use_mcp_tool({
server_name: "x",
tool_name: "get_home_timeline",
arguments: { limit: 5 }
});
Create a new tweet.
Parameters:
text
(required): The text content of the tweet (max 280 characters)Example:
await use_mcp_tool({
server_name: "x",
tool_name: "create_tweet",
arguments: { text: "Hello from MCP! 🤖" }
});
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:
await use_mcp_tool({
server_name: "x",
tool_name: "reply_to_tweet",
arguments: {
tweet_id: "1234567890",
text: "Great tweet! 👍"
}
});
npm run build
: Build the TypeScript codenpm run dev
: Run TypeScript in watch modenpm start
: Start the MCP serverThe server includes built-in rate limit handling for X's free tier:
MIT
git checkout -b feature/amazing-feature
)git commit -m 'Add some amazing feature'
)git push origin feature/amazing-feature
)An IMAP Model Context Protocol (MCP) server to expose IMAP operations as tools for AI assistants.
Provides access to Intercom conversations and chats. Requires an Intercom API key.
Provides audio input and output capabilities for AI assistants.
MCP server acting as an interface to the Facebook Ads, enabling programmatic access to Facebook Ads data and management features.
Manage emails using Gmail and IMAP protocols. Requires external configuration for credentials and settings.
Interact with Slack workspaces to read and send messages directly through your AI assistant.
A Node.js service for interacting with the LnExchange API for spot trading.
Interact with Wizzypedia through the MediaWiki API, supporting both read-only and authenticated operations.
Query live Gmail data using LLMs via CData's read-only MCP server.
A server for interacting with LinkedIn, including authentication and posting capabilities.