Twitter/X MCP Server
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Twitter/X MCP Serversearch for the latest tweets mentioning Model Context Protocol"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Twitter/X MCP Server
Read, search, and post on Twitter/X from any AI agent. No API key needed -- uses persistent browser sessions.
Why This Exists
Twitter's API costs $100+/month and rate-limits everything. This MCP server uses Playwright browser automation with a persistent Chrome profile instead -- zero API fees, no rate limit headaches. Your AI agent gets full Twitter access through the Model Context Protocol.
Works with Claude Code, Cursor, Windsurf, or any MCP-compatible client.
Related MCP server: Spectre
Tools
Category | Tool | Description | Auth Required |
Read |
| Search tweets by keyword or hashtag | No |
| Read your home timeline | Yes | |
| Read your saved bookmarks | Yes | |
| Get a user's profile info | No | |
| Get tweets from a specific user | No | |
| Get trending topics | No | |
| Read your notifications | Yes | |
Write |
| Post a new tweet | Yes |
| Reply to a tweet | Yes | |
| Like a tweet | Yes | |
| Retweet a tweet | Yes |
No API key needed. Read-only tools work without authentication. Write tools require a one-time browser login (cookies persist automatically).
Quick Start
git clone https://github.com/Miles0sage/twitter-mcp.git
cd twitter-mcp
pip install -r requirements.txt
playwright install chromiumAdd to your MCP config (~/.mcp.json or client settings):
{
"mcpServers": {
"twitter": {
"command": "python3",
"args": ["server.py"],
"cwd": "/path/to/twitter-mcp"
}
}
}Authentication
This server uses a persistent Chrome profile stored at ~/.twitter-mcp/chrome-profile/. Log in once and your session persists across restarts.
First-time setup
# Opens a real browser -- log in to Twitter/X manually
python3 -c "from browser_session import login; login()"Once logged in, cookies are saved to the Chrome profile. All future MCP calls reuse the session automatically.
Headless vs non-headless
Twitter blocks headless browsers. The server runs Chromium with DISPLAY=:99 (Xvfb) by default for server environments. On desktop, it uses your normal display.
# Server/VPS setup
export DISPLAY=:99
Xvfb :99 -screen 0 1920x1080x24 &Keepalive
A keepalive script prevents session expiry by loading Twitter periodically:
# Add to crontab (every 30 min)
*/30 * * * * DISPLAY=:99 python3 /path/to/twitter-mcp/twitter_keepalive.pyUsage Examples
"Search Twitter for AI agent news"
-> Latest tweets matching query, with engagement stats
"Read my feed"
-> Your home timeline, newest first
"Show my bookmarks"
-> Your saved/bookmarked tweets
"Post: Just shipped a new MCP server!"
-> Tweet posted, returns URL
"What's trending?"
-> Top trending topics with tweet counts
"Get @elonmusk's recent tweets"
-> Latest tweets from the userArchitecture
LLM / MCP Client
|
MCP Protocol (stdio)
|
server.py ── registers 11 tools
|
+----+----+--------+
| | |
tools_ tools_ tools_
read.py feed.py write.py
| | |
+----+----+--------+
|
browser_session.py
(persistent Chromium via Playwright)
|
~/.twitter-mcp/chrome-profile/
(cookies + session state)Project Structure
server.py # MCP server, tool registration
tools_read.py # Search, user profile, user tweets, trending
tools_feed.py # Feed, bookmarks, notifications
tools_write.py # Post, reply, like, retweet
browser_session.py # Playwright session management, persistent Chrome profile
twitter_keepalive.py # Session keepalive cron script
api_server.py # Optional REST API wrapperComparison
Feature | Twitter MCP | Twitter API (Basic) | Twitter API (Pro) | Apify Scrapers |
Cost | Free | $100/mo | $5,000/mo | Per-run fees |
Auth | Browser login | OAuth + API key | OAuth + API key | API key |
Post tweets | Yes | Yes | Yes | No |
Read feed | Yes | Limited | Yes | Yes |
Bookmarks | Yes | No | Yes | No |
Search | Yes | Limited | Yes | Yes |
Rate limits | Browser-level | Strict | Strict | Per-plan |
MCP native | Yes | No | No | No |
Setup time | 2 min | 30+ min | Application | 10 min |
License
MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
X (Twitter) data for AI agents: tweets, profiles, followers, search, trends + social listening.
X (formerly Twitter) posts, profiles, and search for AI agents. Free key, self-minted, no signup.
Give your agent live data from Twitter, Reddit, the web and GitHub. No API keys, no scraping stack.
Twitter (X) API alternative for AI agents: tweet search, profiles, followers. $0.0002 per result.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables LLM agents to interact with Twitter (X) for searching tweets, posting content with images, analyzing engagement, and extracting topics using the Twitter API.-
- AlicenseCqualityBmaintenanceEnables AI agents to search, read user profiles, timelines, media, follow threads, track trends, and manage accounts on X/Twitter via GraphQL, without browser automation or paid API keys.10011MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to fully automate X/Twitter interactions including searching, posting, engaging, and managing multiple accounts without paid API keys.MIT
- AlicenseNot gradedqualityAmaintenanceProvides 19+ tools for AI agents to interact with X/Twitter, including search, posting, analysis, and monitoring capabilities.3 npm1MIT