Back to Tools
Communication OAuth
x logo

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 Policies

For X (Twitter), you can implement some of these policies:

Access when tools are listed for a user
  • 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.
Pre-execution before each tool call
  • 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.
Post-execution after the tool returns
  • 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.

Ready to actually ship your agent?

Connect your agent to X (Twitter) with managed OAuth, agent-optimized tools and approval controls for consequential actions.