# How to connect X to Grok Bot

```json
{
  "title": "How to connect X to Grok Bot",
  "toolkit": "X MCP",
  "toolkit_slug": "x_mcp",
  "framework": "Grok Bot",
  "framework_slug": "grok-bot",
  "url": "https://composio.dev/toolkits/x_mcp/framework/grok-bot",
  "markdown_url": "https://composio.dev/toolkits/x_mcp/framework/grok-bot.md",
  "updated_at": "2026-11-14T06:01:10.987Z"
}
```

## Introduction

Grok is xAI's assistant, and its bot builder lets you create a personal agent that holds context, runs skills, and connects to the apps you already use through plugins.
This guide explains how to connect X to a Grok bot using Composio Connect, which handles OAuth, token refresh, and reliability so you do not have to. You add Composio as a plugin, authenticate once, then ask your bot to work with X in plain language.
For exact tool slugs and parameter tables, see the [tool catalog in the Composio docs](https://docs.composio.dev/toolkits/x_mcp).

## Also integrate X MCP with

- [ChatGPT](https://composio.dev/toolkits/x_mcp/framework/chatgpt)
- [Claude Cowork](https://composio.dev/toolkits/x_mcp/framework/claude-cowork)
- [Hermes](https://composio.dev/toolkits/x_mcp/framework/hermes-agent)
- [Atomic Agent](https://composio.dev/toolkits/x_mcp/framework/atomic-agent)

## TL;DR

Composio exposes 1,700+ apps to your Grok bot through a single connection, so you get:
- Connect to 1,700+ apps with on-demand tool loading, so you do not fill your context window with unnecessary tool definitions.
- Use programmatic tool calling through a remote workbench, letting the model write its own code to handle complex tool chaining. This reduces back-and-forth for frequent tool calls.
- Handle large tool responses outside the model context to keep conversations lean.

## Connect X MCP to Grok Bot

### Connecting X to Grok Bot
Once Grok Bot is set up, you connect X entirely from its interface, and the whole flow takes under a minute.
### Set up Grok Bot
Get access. Grok Bot is included with Cursor Ultra, Cursor Premium Teams, and SuperGrok Heavy. Get the desktop app for macOS or Windows from [x.ai/bot](https://x.ai/bot) and sign in. An iPhone companion app is also available, and your bots sync across devices.
Create a bot. Pick a suggested role or define your own, then give it a short name, one primary job, and a short description of how it should work. Focused bots work best, because a clear role gives the bot more useful context over time.
### Connect X
### 1. Add the Composio plugin
Click the button. The Composio listing on x.ai opens and launches Grok Bot for you. If the app does not open on its own, click Add to Grok Bot.
[Add to Grok Bot](https://x.ai/bot/plugin/32661537)
Grok Bot opens the Composio plugin, showing its connector and skills. Click Add.
### 2. Authenticate
Go to the Installed section and click the Composio entry. You'll see its connector and skills listed.
Click Authenticate. You'll be taken to the Composio consent screen. Review the access it requests and click Authorize. Composio handles the OAuth handshake for you, so you never touch API keys or tokens.
### 3. Connect your X account
Back in the chat, ask your bot to connect to X or give it any X task.
For example, ask it to:
- "Search X posts about AI agents today"
- "Find trending technology topics on X"
- "Summarize recent posts from selected X users"
It will prompt you to authenticate and authorize access.
That's it. Composio's tools are now available in your Grok bot, and your X account is ready to use.

## What is Grok Bot?

Grok is xAI's assistant, available as a chat interface and a bot builder for creating personal agents that run skills and connect to external apps.
With Composio Connect, your Grok bot can securely access apps like X through MCP without you sharing account credentials directly with the agent.

## What is the X MCP server, and what's possible with it?

The X MCP server is an implementation of the Model Context Protocol that connects your AI agent and assistants like Claude, Cursor, etc directly to your X account. It provides structured and secure access to posts, news, communities, lists, bookmarks, chats, broadcasts, and Article drafts, so your agent can retrieve content, organize lists and bookmarks, manage conversations, and create Article drafts on your behalf.
- Post and news retrieval: Have your agent fetch posts by ID, retrieve groups of posts, review reposts and quoted posts, see who liked a post, check recent post counts, and get news stories.
- List and community management: Let the agent create lists, follow lists, add members, review members and followers, read list posts, and retrieve community details.
- Bookmark organization: Direct your agent to create bookmark folders, save posts to bookmarks, and remove saved posts when they are no longer useful.
- Chat and moderation tasks: Instruct your agent to review conversations and message requests, inspect conversation events, accept requests, archive conversations, and manage chat moderators.
- Broadcasts and Article drafts: Have your agent retrieve broadcast details and chat history, schedule or cancel broadcasts, manage broadcast sources, and create draft Articles.

## Supported Tools

| Tool slug | Name | Description |
|---|---|---|
| `X_MCP_ACCEPT_CHAT_MESSAGE_REQUEST` | Accept chat message request | Accept a Chat message request |
| `X_MCP_ADD_CHAT_MODERATOR` | Add chat moderator | Add a chat moderator |
| `X_MCP_ADD_CONVERSATION_KEYS` | Add conversation keys | Add Conversation Keys |
| `X_MCP_ADD_LISTS_MEMBER` | Add lists member | Add Lists Member |
| `X_MCP_ARCHIVE_CHAT_CONVERSATION` | Archive chat conversation | Archive a Chat conversation |
| `X_MCP_ARTICLE_CREATE_DRAFT` | Article create draft | Create draft Article |
| `X_MCP_CANCEL_SCHEDULED_CALL` | Cancel scheduled call | Cancel a scheduled call |
| `X_MCP_CHAT_MEDIA_DOWNLOAD` | Chat media download | Download Chat Media. Returns JSON with the response bytes base64-encoded in `data`, plus `content_type` and `size_bytes`. Needs the OAuth2 scope `media.write`. |
| `X_MCP_CHAT_MEDIA_UPLOAD_APPEND` | Chat media upload append | Append Chat Media Upload. Needs the OAuth2 scope `media.write`. |
| `X_MCP_CHAT_MEDIA_UPLOAD_FINALIZE` | Chat media upload finalize | Finalize Chat Media Upload. Needs the OAuth2 scope `media.write`. |
| `X_MCP_CHAT_MEDIA_UPLOAD_INITIALIZE` | Chat media upload initialize | Initialize Chat Media Upload. Needs the OAuth2 scope `media.write`. |
| `X_MCP_CREATE_LISTS` | Create lists | Create Lists |
| `X_MCP_CREATE_SCHEDULED_BROADCAST` | Create scheduled broadcast | Create a scheduled broadcast |
| `X_MCP_CREATE_SOURCE` | Create source | Create a stream source |
| `X_MCP_CREATE_USERS_BOOKMARK` | Create users bookmark | Create Bookmark |
| `X_MCP_CREATE_USERS_BOOKMARK_FOLDER` | Create users bookmark folder | Create Bookmark Folder |
| `X_MCP_DELETE_SCHEDULED_BROADCAST` | Delete scheduled broadcast | Delete a scheduled broadcast |
| `X_MCP_DELETE_SOURCE` | Delete source | Delete a stream source |
| `X_MCP_DELETE_USERS_BOOKMARK` | Delete users bookmark | Delete Bookmark |
| `X_MCP_FOLLOW_LIST` | Follow list | Follow List |
| `X_MCP_GET_BROADCAST` | Get broadcast | Get a broadcast |
| `X_MCP_GET_BROADCAST_CHAT` | Get broadcast chat | Get broadcast chat history |
| `X_MCP_GET_CHAT_CONVERSATION` | Get chat conversation | Get Chat Conversation; unread state via chat_conversation.fields=unread,last_read_event_id,newest_event_id |
| `X_MCP_GET_CHAT_CONVERSATION_EVENTS` | Get chat conversation events | Get Chat Conversation Events, newest first; unread ones have an id above last_read_event_id |
| `X_MCP_GET_CHAT_CONVERSATIONS` | Get chat conversations | Get Chat Conversations; unread state via chat_conversation.fields=unread,last_read_event_id,newest_event_id |
| `X_MCP_GET_CHAT_MESSAGE_REQUEST` | Get chat message request | Get Chat Message Request |
| `X_MCP_GET_CHAT_MESSAGE_REQUESTS` | Get chat message requests | Get Chat Message Requests |
| `X_MCP_GET_CHAT_MODERATORS` | Get chat moderators | Get chat moderators |
| `X_MCP_GET_COMMUNITIES_BY_ID` | Get communities by | Get Communities by ID |
| `X_MCP_GET_LISTS_BY_ID` | Get lists by | Get Lists by ID |
| `X_MCP_GET_LISTS_FOLLOWERS` | Get lists followers | Get Lists Followers |
| `X_MCP_GET_LISTS_MEMBERS` | Get lists members | Get Lists Members |
| `X_MCP_GET_LISTS_POSTS` | Get lists posts | Get Lists Posts |
| `X_MCP_GET_NEWS` | Get news | Get news stories by ID Each returned story includes a `url` deeplinking to its x.com page. |
| `X_MCP_GET_POSTS_BY_ID` | Get posts by | Get Posts by ID Each returned post includes a `url` deeplinking to it on x.com. |
| `X_MCP_GET_POSTS_BY_IDS` | Get posts by ids | Get Posts by IDs Each returned post includes a `url` deeplinking to it on x.com. |
| `X_MCP_GET_POSTS_COUNTS_RECENT` | Get posts counts recent | Get Posts Counts Recent |
| `X_MCP_GET_POSTS_LIKING_USERS` | Get posts liking users | Get Posts Liking Users |
| `X_MCP_GET_POSTS_QUOTED_POSTS` | Get posts quoted posts | Get Posts Quoted Posts Each returned post includes a `url` deeplinking to it on x.com. |
| `X_MCP_GET_POSTS_REPOSTED_BY` | Get posts reposted by | Get Posts Reposted by |
| `X_MCP_GET_SCHEDULED_BROADCAST` | Get scheduled broadcast | Get a scheduled broadcast |
| `X_MCP_GET_SCHEDULED_CALL` | Get scheduled call | Get a scheduled call |
| `X_MCP_GET_SOURCE` | Get source | Get a stream source |
| `X_MCP_GET_SPACES_BY_CREATOR_IDS` | Get spaces by creator ids | Get Spaces by Creator IDs |
| `X_MCP_GET_SPACES_BY_ID` | Get spaces by | Get Spaces by ID |
| `X_MCP_GET_SPACES_BY_IDS` | Get spaces by ids | Get Spaces by IDs |
| `X_MCP_GET_SPACES_POSTS` | Get spaces posts | Get Space Posts |
| `X_MCP_GET_TRENDS_BY_WOEID` | Get trends by woeid | Get Trends by Woeid Each returned trend includes a `url` deeplinking to its x.com search. |
| `X_MCP_GET_USAGE_CREDITS` | Get usage credits | Get usage credits |
| `X_MCP_GET_USERS_BOOKMARK_FOLDERS` | Get users bookmark folders | Get Users Bookmark Folders |
| `X_MCP_GET_USERS_BOOKMARKS` | Get users bookmarks | Get Users Bookmarks Each returned post includes a `url` deeplinking to it on x.com. |
| `X_MCP_GET_USERS_BOOKMARKS_BY_FOLDER_ID` | Get users bookmarks by folder | Get Users Bookmarks by Folder ID Each returned post includes a `url` deeplinking to it on x.com. |
| `X_MCP_GET_USERS_BY_ID` | Get users by | Get Users by ID |
| `X_MCP_GET_USERS_BY_USERNAME` | Get users by username | Get Users by Username |
| `X_MCP_GET_USERS_BY_USERNAMES` | Get users by usernames | Get Users by Usernames |
| `X_MCP_GET_USERS_FOLLOWED_LISTS` | Get users followed lists | Get Users Followed Lists |
| `X_MCP_GET_USERS_LIKED_POSTS` | Get users liked posts | Get Users Liked Posts Each returned post includes a `url` deeplinking to it on x.com. |
| `X_MCP_GET_USERS_LIST_MEMBERSHIPS` | Get users list memberships | Get Users List Memberships |
| `X_MCP_GET_USERS_ME` | Get users me | Get Users Me |
| `X_MCP_GET_USERS_ME_FOLLOWERS` | Get users me followers | Get the authenticated user's followers |
| `X_MCP_GET_USERS_ME_FOLLOWING` | Get users me following | Get the users the authenticated user follows |
| `X_MCP_GET_USERS_MENTIONS` | Get users mentions | Get Users Mentions Each returned post includes a `url` deeplinking to it on x.com. |
| `X_MCP_GET_USERS_OWNED_LISTS` | Get users owned lists | Get Users Owned Lists |
| `X_MCP_GET_USERS_PINNED_LISTS` | Get users pinned lists | Get Users Pinned Lists |
| `X_MCP_GET_USERS_POSTS` | Get users posts | Get Users Posts Each returned post includes a `url` deeplinking to it on x.com. |
| `X_MCP_GET_USERS_PUBLIC_KEY` | Get users public key | Get public keys |
| `X_MCP_GET_USERS_PUBLIC_KEYS` | Get users public keys | Get public keys |
| `X_MCP_GET_USERS_TIMELINE` | Get users timeline | Get Users Timeline Each returned post includes a `url` deeplinking to it on x.com. |
| `X_MCP_GO_LIVE_SCHEDULED_BROADCAST` | Go live scheduled broadcast | Go live on a scheduled broadcast |
| `X_MCP_LIST_BROADCASTS` | List broadcasts | List broadcasts |
| `X_MCP_LIST_SCHEDULED_BROADCASTS` | List scheduled broadcasts | List scheduled broadcasts |
| `X_MCP_LIST_SCHEDULED_CALLS` | List scheduled calls | List scheduled calls |
| `X_MCP_LIST_SOURCES` | List sources | List stream sources |
| `X_MCP_MARK_CHAT_CONVERSATION_READ` | Mark chat conversation read | Mark Conversation as Read |
| `X_MCP_MARK_CHAT_CONVERSATION_UNREAD` | Mark chat conversation unread | Mark Conversation as Unread |
| `X_MCP_MUTE_BROADCAST_CHAT_USER` | Mute broadcast chat user | Mute or time out a user in a broadcast chat |
| `X_MCP_PIN_LIST` | Pin list | Pin List |
| `X_MCP_REMOVE_CHAT_MODERATOR` | Remove chat moderator | Remove a chat moderator |
| `X_MCP_REMOVE_LISTS_MEMBER_BY_USER_ID` | Remove lists member by user | Remove a List member |
| `X_MCP_RESPOND_TO_SCHEDULED_CALL` | Respond to scheduled call | Respond to a scheduled call |
| `X_MCP_SCHEDULE_CALL` | Schedule call | Schedule a call |
| `X_MCP_SEARCH_COMMUNITIES` | Search communities | Search Communities |
| `X_MCP_SEARCH_NEWS` | Search news | Search News Each returned story includes a `url` deeplinking to its x.com page. |
| `X_MCP_SEARCH_POSTS_ALL` | Search posts all | Search Posts All Each returned post includes a `url` deeplinking to it on x.com. |
| `X_MCP_SEARCH_SPACES` | Search spaces | Search Spaces |
| `X_MCP_SEARCH_USERS` | Search users | Search Users |
| `X_MCP_SEND_CHAT_MESSAGE` | Send chat message | Send Chat Message |
| `X_MCP_SEND_CHAT_TYPING_INDICATOR` | Send chat typing indicator | Send Typing Indicator |
| `X_MCP_UNARCHIVE_CHAT_CONVERSATION` | Unarchive chat conversation | Unarchive a Chat conversation |
| `X_MCP_UNFOLLOW_LIST` | Unfollow list | Unfollow a List |
| `X_MCP_UNMUTE_BROADCAST_CHAT_USER` | Unmute broadcast chat user | Unmute a user in a broadcast chat |
| `X_MCP_UNPIN_LIST` | Unpin list | Unpin a List |
| `X_MCP_UPDATE_LISTS` | Update lists | Update List |
| `X_MCP_UPDATE_SCHEDULED_BROADCAST` | Update scheduled broadcast | Update a scheduled broadcast |
| `X_MCP_UPDATE_SCHEDULED_CALL` | Update scheduled call | Update a scheduled call |
| `X_MCP_UPDATE_SOURCE` | Update source | Rename a stream source |

## Supported Triggers

None listed.

## Creating MCP Server - Stand-alone vs Composio SDK

Once connected, your Grok bot can access the X MCP server through Composio to run the actions you authorize, using plain language in the chat.

## Complete Code

None listed.

## Conclusion

### Way Forward
Now that X is connected, extend your setup by connecting the other apps you already use every day, so your Grok bot can run true cross-app workflows end to end.
- Connect Calendar to turn threads into scheduled meetings automatically.
- Connect Slack or Teams to post summaries, approvals, and alerts where your team works.
- Connect Notion, Linear, Jira, or Asana to convert requests into tickets, tasks, and docs.
- Connect Drive, Dropbox, or OneDrive to fetch, file, and share attachments without manual steps.
Start with one workflow you do repeatedly, then keep adding apps as you find new handoffs. With everything behind a single connection, your bot can coordinate multiple tools safely and reliably in one conversation.

## How to build X MCP Agent with another framework

- [ChatGPT](https://composio.dev/toolkits/x_mcp/framework/chatgpt)
- [Claude Cowork](https://composio.dev/toolkits/x_mcp/framework/claude-cowork)
- [Hermes](https://composio.dev/toolkits/x_mcp/framework/hermes-agent)
- [Atomic Agent](https://composio.dev/toolkits/x_mcp/framework/atomic-agent)

## Related Toolkits

- [Twitter](https://composio.dev/toolkits/twitter) - Twitter is a social media platform for sharing real-time updates, conversations, and news. Stay connected, informed, and engaged with communities worldwide.
- [Instagram](https://composio.dev/toolkits/instagram) - Instagram is a social platform for sharing photos, videos, and stories with your audience. It helps brands and creators engage, grow, and analyze their online presence.
- [Ayrshare](https://composio.dev/toolkits/ayrshare) - Ayrshare is a Social Media API for managing, automating, and analyzing posts across multiple platforms. It helps you streamline social media workflows and centralize analytics.
- [DEV Community](https://composio.dev/toolkits/devto) - DEV Community (dev.to) is a social publishing platform for software developers. Use it to share technical articles, grow a developer audience, and join community discussions.
- [Dotsimple](https://composio.dev/toolkits/dotsimple) - Dotsimple is a social media management platform for planning, creating, and publishing content. It helps teams boost their reach with AI-powered content generation and actionable analytics.
- [Just One API](https://composio.dev/toolkits/just_one_api) - Just One API is a unified platform providing public social, creator, entertainment, and ecommerce data. Use it to query standardized, metered datasets across hundreds of endpoints for research and product insights.
- [Metricool MCP](https://composio.dev/toolkits/metricool_mcp) - Metricool is a social media management platform for analytics, planning, and publishing. It helps teams measure performance and plan content across social networks.
- [Pinterest](https://composio.dev/toolkits/pinterest) - Pinterest is a visual discovery platform for recipes, home ideas, style inspiration, travel plans, and more. It helps people save, organize, and revisit ideas through Pins and Boards.
- [Strava](https://composio.dev/toolkits/strava) - Strava is a social fitness network and app for cyclists and runners. It's perfect for tracking workouts, sharing progress, and joining active communities.
- [Threads](https://composio.dev/toolkits/threads) - Threads is Meta's social network for publishing posts, managing replies, discovering content, and tracking performance. It helps creators and brands engage audiences and measure what resonates.
- [TikHub](https://composio.dev/toolkits/tik_hub) - TikHub is a social metadata API that exposes supported TikTok and social metadata routes. It provides consistent, API-key-based access to public metadata without cookies or device signatures.
- [Tiktok](https://composio.dev/toolkits/tiktok) - Tiktok is a short-form video platform for creating, sharing, and discovering viral content. It helps creators and brands reach massive audiences with creative tools and global social features.
- [Twitch](https://composio.dev/toolkits/twitch) - Twitch is a live streaming platform for gamers, creators, and communities. It enables real-time interaction, monetization, and community building.
- [TwitterShots](https://composio.dev/toolkits/twittershots) - TwitterShots is an API service that renders public X posts as clean screenshots and retrieves tweet content. Use it to capture social posts, extract tweet text, and track API usage without building screenshot infrastructure.
- [Upload-Post](https://composio.dev/toolkits/upload_post) - Upload-Post is a social publishing API for posting, scheduling, and managing content across social networks. Use it to run multi-channel content workflows through one clean API instead of separate platform integrations.
- [Gmail](https://composio.dev/toolkits/gmail) - Gmail is Google's email service with powerful spam protection, search, and G Suite integration. It keeps your inbox organized and makes communication fast and reliable.
- [Google Calendar](https://composio.dev/toolkits/googlecalendar) - Google Calendar is a time management service for scheduling meetings, events, and reminders. It streamlines personal and team organization with integrated notifications and sharing options.
- [Google Drive](https://composio.dev/toolkits/googledrive) - Google Drive is a cloud storage platform for uploading, sharing, and collaborating on files. It's perfect for keeping your documents accessible and organized across devices.
- [Outlook](https://composio.dev/toolkits/outlook) - Outlook is Microsoft's email and calendaring platform for unified communications and scheduling. It helps users stay organized with powerful email, contacts, and calendar management.
- [Google Sheets](https://composio.dev/toolkits/googlesheets) - Google Sheets is a cloud-based spreadsheet tool for real-time collaboration and data analysis. It lets teams work together from anywhere, updating information instantly.

## Frequently Asked Questions

### What are the differences in Tool Router MCP and X MCP?

With a standalone X MCP server, the agents and LLMs can only access a fixed set of X tools tied to that server. However, with the Composio Tool Router, agents can dynamically load tools from X and many other apps based on the task at hand, all through a single MCP endpoint.

### Can I use Tool Router MCP with Grok Bot?

Yes, you can. Grok Bot fully supports MCP integration. You get structured tool calling, message history handling, and model orchestration while Tool Router takes care of discovering and serving the right X tools.

### Can I manage the permissions and scopes for X while using Tool Router?

Yes, absolutely. You can configure which X scopes and actions are allowed when connecting your account to Composio. You can also bring your own OAuth credentials or API configuration so you keep full control over what the agent can do.

### How safe is my data with Composio Tool Router?

All sensitive data such as tokens, keys, and configuration is fully encrypted at rest and in transit. Composio is SOC 2 Type 2 compliant and follows strict security practices so your X data and credentials are handled as safely as possible.

---
[See all toolkits](https://composio.dev/toolkits) · [Composio docs](https://docs.composio.dev/llms.txt)
