x-mcp
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., "@x-mcpshow me my recent mentions"
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.
x-mcp
MCP server in front of the X (Twitter) API v2. Image: ghcr.io/robertdwhite/x-mcp.
Manifests in whitehouse-rke2 (apps/ai/x-mcp/).
Reads are free. Writes are two-step — draft_post returns a preview plus a
single-use confirm_token, and nothing is published until publish_post is
called with that exact token. An agent cannot post in one call, so a human-visible
preview always exists first. That matters when the output is public and permanent.
There is deliberately no delete tool. Deletion is destructive and irreversible; remove posts from the X app.
Tools
Tool | Kind | Notes |
| read | Which account the credentials act as |
| read | One post by id |
| read | Recent posts from a handle |
| read | Mentions of the authenticated account |
| read | Reverse-chronological home timeline |
| read | Last-7-days search (plan-dependent) |
| stage | Validates + previews. Publishes nothing. |
| read | Staged drafts and their remaining TTL |
| write | Publishes a draft. Public and permanent. |
Drafts are in-memory: a restart clears them, so a stale confirm token never outlives the process that showed the preview.
Related MCP server: x-mcp
Endpoints
POST /mcp— streamable-HTTP MCP, gated onAuthorization: Bearer $MCP_TOKENGET /healthz— open, for liveness/readiness
Every other path returns 404, not 401 — including the /.well-known/oauth-*
probes MCP clients make on startup. A 401 there makes clients attempt an
interactive OAuth flow, which hangs headless clients as a connection timeout.
Configuration
Env | Required | Purpose |
| recommended | Bearer for |
| yes | Consumer key |
| yes | Consumer secret |
| yes | Access token (user context) |
| yes | Access token secret |
| no | Length limit, default |
| no | Draft lifetime in seconds, default |
| no | HTTP timeout, default |
Auth to X is OAuth 1.0a user context, signed per request. App-only bearer tokens cannot post, because publishing acts as the account. Get the four values from an X app with Read and Write permission: consumer keys plus an access token/secret pair generated for your own account.
If the credentials are missing, every tool returns a clear "not configured" error instead of a stack trace — so the service can be deployed before the credentials exist.
Note on X API plans
Write access is gated by X's paid API tiers, and the free tier is heavily
capped. A 429 from this server surfaces the rate-limit reset when X provides
it. Check your plan at developer.x.com if writes fail immediately.
Local run
pip install -r requirements.txt
MCP_TOKEN=dev X_API_KEY=... X_API_SECRET=... \
X_ACCESS_TOKEN=... X_ACCESS_TOKEN_SECRET=... python server.pyThis server cannot be deployed
Maintenance
Related MCP Connectors
Twitter/X read-only MCP server — 12 tools: search, users, tweets, followers, timelines, trends.
FastMCP server for posting formatted content to X (Twitter) — Tollbooth-monetized, DPYC-native
128 REST operations. 120 MCP routes; 119 JSON/text ops. OAuth 2.1. Not affiliated with X Corp.
Create, schedule, and publish social posts, manage accounts, and read analytics as MCP tools.
Related MCP Servers
- AlicenseBqualityDmaintenanceEnables interacting with Twitter/X through natural language, including searching tweets, posting, sending DMs, and managing timelines via any MCP client.8MIT
- FlicenseAqualityDmaintenanceEnables interaction with the X (Twitter) API through MCP tools for managing users, posts, bookmarks, likes, and lists. Supports markdown or JSON output and uses OAuth 2.0 PKCE authentication.22-
- FlicenseBqualityBmaintenanceMCP server for the official X API, enabling agents to read and publish posts, look up users, and search posts with safe read-only default and explicit write mode.88 npm-
- AlicenseAqualityAmaintenanceEnables MCP clients to interact with the X (Twitter) API v2 through 41 typed tools for reading, searching, engaging, publishing, and managing content, with policy-based access control and session credit budgets to prevent overspending.4136 npmMIT