Composio’s MCP endpoint (Documentation Index
Fetch the complete documentation index at: https://docs.xquik.com/llms.txt
Use this file to discover all available pages before exploring further.
mcp.composio.dev) was decommissioned in March 2026, and managed Twitter credentials were removed in February 2026. This guide shows how to replace Composio’s Twitter MCP integration with Xquik.
Why Migrate
| Composio | Xquik | |
|---|---|---|
| Accounts needed | 3 (X Developer, Composio, AI tool) | 1 |
| Credentials | 6 (API Key, API Secret, Bearer Token, OAuth Client ID, OAuth Client Secret, Composio API Key) | 1 (API key) |
| Setup steps | 14 | 3 |
| OAuth dance | Yes (browser redirect on first use) | No |
| X Developer Portal | Required (create app, configure callbacks) | Not required |
| Dashboard config | Required (create auth config, toggle custom creds) | Not required |
| Setup code | ~20 lines + CLI commands | 0 lines (just config) |
| Twitter tools | 79 | 120 documented operations + 23 extraction tools |
Before: Composio Setup (14 Steps)
Configure OAuth callback
Set OAuth 2.0 callback URL to
https://backend.composio.dev/api/v1/auth-apps/add.Configure custom auth in Composio dashboard
Navigate to dashboard, create auth config for Twitter, toggle custom credentials, enter all 5 X credentials.
Write MCP URL generation script
Write ~20 lines of Python to create a Composio session and extract the MCP URL.
After: Xquik Setup (3 Steps)
Get an API key
Sign up at xquik.com, subscribe, and generate an API key from the dashboard.
Code Migration
Python (Pydantic AI)
TypeScript (Mastra)
Result Handoff
When you replace Composio agent steps, map raw tool responses into stable rows before sending them to Slack, Sheets, queues, databases, or dashboards.Tweet Search Page
Store request
q, each tweet_id, text, author_username, created_at, and url. Keep has_more and next_cursor for page loops.User Page
Store source
id as user_id, plus username, name, followers, verified, and profile_picture. Keep has_more and next_cursor when present.Trend Page
Store each trend
name, rank, query, and description. Keep response count and woeid for regional audit trails.Monitor Webhook
Store
delivery_id for receiver retry de-dupe and stream_event_id when one monitor event should process once across endpoint changes.Stored Event Replay
Use
GET /api/v1/events with after to replay stored monitor events. Store event_id, type, monitor_id, monitor_type, occurred_at, has_more, and next_cursor.Media Attachments
For tweets or replies, pass public URLs in
media and store tweet_id or write_action_id. For DMs, upload first, pass one media_id in media_ids, store message_id, and leave reply_to_message_id unset.tweet_rows, user_rows, trend_rows, webhook_event_rows, event_replay_rows, and media_write_rows as separate shapes instead of passing the whole MCP result through the workflow.