X (Twitter) MCP Tools for AI Agents
Let an agent search recent posts, monitor mentions, publish threads, reply to conversations, and manage X Lists for each authorized user.
Available Tools
55 tools available in this integration
X.AddListMember Add one or more users to an X List owned by the authenticated user.
X.AddMembersToList Add one or more users to an X List owned by the authenticated user.
X.CreateList Create a new X List owned by the authenticated user.
X.CreateThread Post a multi-tweet thread as the authenticated user.
X.CreateTweet Post a new tweet as the authenticated user.
X.DeleteList Delete an X List owned by the authenticated user.
X.DeleteTweet Delete one of the authenticated user's tweets.
X.DeleteTweetById Delete one of the authenticated user's tweets.
X.GetConversation Fetch the conversation thread containing ``tweet_id``.
X.GetHomeTimeline Fetch the authenticated user's reverse-chronological home timeline.
X.GetListMembers List members of an X List.
X.GetListMembershipsForUser List the X Lists the target user is a member of.
X.GetListTweets List recent tweets from members of an X List, newest first.
X.GetMyMentions Fetch recent @-mentions of the authenticated user, newest first.
X.GetOwnedLists List the X Lists a user owns.
X.GetQuoteTweets Fetch public quote tweets of the given tweet.
X.GetRepliesToTweet Fetch public DIRECT replies to a given tweet (last ~7 days).
X.GetSpace Look up a single X Space by its id.
X.GetSpacesByCreator List the live or scheduled X Spaces created by a set of users.
X.GetUserLikedTweets List tweets a user has liked, newest-liked first.
X.GetUserTweets Fetch tweets authored by a specific X user, newest first.
X.LikeTweet Like a tweet as the authenticated user.
X.ListEngagers List the users who liked or retweeted a tweet.
X.ListLikedTweets List tweets a user has liked, newest-liked first.
X.ListListTweets List recent tweets from members of an X List, newest first.
X.ListMembers List members of an X List.
X.ListMemberships List the X Lists the target user is a member of.
X.ListMyMentions Fetch recent @-mentions of the authenticated user, newest first.
X.ListOwnedLists List the X Lists a user owns.
X.ListQuotes Fetch public quote tweets of the given tweet.
X.ListReplies Fetch public DIRECT replies to a given tweet (last ~7 days).
X.ListSpaces List the live or scheduled X Spaces created by a set of users.
X.ListTweets Look up tweets by id (single or batched) on X.
X.ListUserTweets Fetch tweets authored by a specific X user, newest first.
X.ListUsers Look up X (Twitter) users by handle and/or numeric user id.
X.LookupSpaceById Look up a single X Space by its id.
X.LookupTweetEngagers List the users who liked or retweeted a tweet.
X.LookupTweets Look up tweets by id (single or batched) on X.
X.LookupUsers Look up X (Twitter) users by handle and/or numeric user id.
X.PinList Pin an X List to the authenticated user's profile.
X.PostThread Post a multi-tweet thread as the authenticated user.
X.PostTweet Post a new tweet as the authenticated user.
X.RemoveListMember Remove one or more users from an X List owned by the authenticated user.
X.RemoveMembersFromList Remove one or more users from an X List owned by the authenticated user.
X.RepostTweet Retweet a tweet as the authenticated user.
X.Retweet Retweet a tweet as the authenticated user.
X.SearchSpaces Search live and scheduled X Spaces by title.
X.SearchTweets Search tweets on X by structured filters across X's recent ~7-day index.
X.SearchTweetsByKeywords Search tweets on X by structured filters across X's recent ~7-day index.
X.UndoRetweet Undo a previous retweet by the authenticated user.
X.UnlikeTweet Remove the authenticated user's like from a tweet.
X.UnpinList Unpin an X List from the authenticated user's profile.
X.UnrepostTweet Undo a previous retweet by the authenticated user.
X.UpdateList Rename a list, edit its description, or toggle its visibility.
X.WhoAmI Get the authenticated X (Twitter) user's profile.
Why agent-optimized tools matter
Built for intent, not API schemas
Ask the agent to "find the latest posts about our launch, inspect the conversation, and prepare a response." Arcade picks the right X actions without guessing tweet IDs or user IDs first.
Up to 100x fewer tokens
X search and lookup results return the posts, users, and engagement data requested, so the agent can investigate a topic without loading an entire timeline into the model.
Complete the workflow end to end
Search a topic, inspect the conversation, review quote posts, identify engaged users, and publish a thread through one toolkit designed around the complete social monitoring task.
Make actions predictable and controlled
Arcade tools return structured results and useful errors across users and runs. Teams can apply scope restrictions, redaction, and approval policies so agents follow the same controls every time.
Securing X (Twitter)
The more capabilities agents get, the more useful they are. However, more capabilities bring more risks of undesired effects such as data loss and exfiltration.
This is why Arcade provides you with contextual rules that dictate how and when a tool is allowed to run. Arcade’s contextual access lets you govern tool visibility and behavior at every stage of execution and control who can see a tool, what inputs are allowed, and what comes back.
Learn about Contextual Access PoliciesFor X (Twitter), you can implement some of these policies:
- Hide X.DeleteList from agents unless the roles your IDP marks as social administrators are active, so an agent cannot remove a shared list without the right authority.
- Restrict X.DeleteTweetById to agents operating under your content-owner role, so ordinary workflows cannot erase published posts.
- Deny X.UpdateList to agents outside your social-administrator role, so an agent cannot change a list's name, description, or visibility.
- Hide X.CreateTweet from agents without your approved publishing role, so an automated workflow cannot post directly from a user's account.
- Restrict X.RepostTweet to agents operating under your social-publishing role, so routine research agents cannot amplify unreviewed content.
- Deny X.RemoveMembersFromList to agents outside the roles your IDP marks as list owners, so an agent cannot silently remove people from a shared audience list.
- Require human approval before X.PostTweet runs, so an agent cannot publish an unreviewed statement from your account.
- Block X.PostThread when any post contains credentials, access tokens, or customer data, so an agent cannot publish secrets across a thread.
- Require human approval before X.CreateThread runs, so a reviewer can check every post before a multi-part statement is published.
- Block X.AddMembersToList when any proposed account is outside your approved list-member allowlist, so an agent cannot add unintended people to a curated list.
- Refuse X.UnrepostTweet unless the request includes a confirmed tweet ID and an approved reason, so an agent cannot quietly reverse a user's public engagement.
- Redact X.GetConversation results, stripping phone numbers, email addresses, access tokens, and private customer details from tweet text before it reaches the model.
- Strip phone numbers, email addresses, and account credentials from X.GetMyMentions results, so an agent can triage mentions without receiving exposed personal data.
- Deny X.GetHomeTimeline output when the result contains content from accounts on your restricted-user list, so the model cannot inspect posts your organization has blocked from automated review.
- Redact X.ListUsers results, stripping email addresses, phone numbers, location details, and other private profile fields before they reach the model.
- Strip email addresses, phone numbers, and account identifiers from X.ListEngagers results, so engagement analysis does not expose personal contact data.
- Deny X.SearchTweets output when a result contains access tokens, credentials, or customer-identifying data, so public search cannot pass exposed secrets or personal records to the model.
How to use X (Twitter) with your agent
Connect X (Twitter) to an MCP client with Arcade's managed per-user OAuth. Follow the setup to give each user’s agent access to that user’s account.
Your questions, answered
An X (Twitter) MCP server exposes X capabilities as structured actions that an AI agent can call through the Model Context Protocol. After a user authorizes their account, the agent can read posts, inspect conversations, manage lists, publish tweets, and perform other permitted actions.
Arcade provides an MCP endpoint for X rather than requiring you to build and maintain the OAuth and API connection yourself. Arcade also adds agent-optimized actions, user-level authorization, approval workflows, response redaction, and controls that can limit which actions an agent can use.
Arcade agents can search recent posts, read timelines, mentions, conversations, replies, quote posts, users, Spaces, and lists; create tweets and threads; like or repost posts; delete the authenticated user's posts; and create, update, pin, and manage owned lists. It does not provide direct-message, follow, or unfollow actions.
Each user authorizes their own X account through OAuth. The required permissions depend on the enabled actions: read-only workflows need access to read the relevant account and public data, while posting, liking, reposting, deleting posts, or managing lists requires the corresponding write permissions.
Yes. Each user authorizes their own X account through OAuth, and actions run under that user's authorization. An agent can access only the account and permissions that person has approved.
Yes. Contextual Access policies can require human approval before consequential X actions such as posting, deleting a post, reposting, liking, or changing a list. The call proceeds only after the policy's conditions have been satisfied.
Arcade proxies X API calls and does not persist your content as part of normal tool execution. Credentials are brokered and stored encrypted at rest, and the model never receives them.
Any framework or client that can connect to Arcade's MCP gateway or tool APIs works, including LangChain, OpenAI Agents, CrewAI, Claude Desktop, Claude Code, Cursor, Visual Studio Code, Microsoft Copilot Studio, and GitHub Copilot.
Arcade refreshes access while the user's X authorization remains valid. If it is revoked, rotated, or can no longer be refreshed, calls stop until the user reconnects the account.
X API rate limits and plan-level quotas still apply to calls made through Arcade. Recent post search covers roughly the last seven days, and direct replies are also limited to roughly the last seven days; the available results and write volume therefore depend on X's current API limits.