A Practical Composio MCP Tutorial for Developers — From Installation to Social Media Marketing Automation
Table of Contents
- What is Composio?
- Competitor Comparison: Composio vs Zapier vs Make
- Pricing Plans
- Registering a Composio Account
- Connecting Apps on the Composio Website
- Installing the MCP Server
- Practical Exercise: Reddit Search and Posting
- Practical Exercise: Facebook Search and Posting
- The Killer Feature: Multi-Platform Parallel Querying
- Practical Exercise: Marketing Automation
- Common Pitfalls and Precautions
- Conclusion
1. What is Composio?
Composio is an application integration platform designed specifically for AI Agents. It provides a unified API/MCP interface that allows your AI assistants (Claude, ChatGPT, Cursor, etc.) to directly operate 500+ third-party applications — including Reddit, Facebook, Twitter, Instagram, TikTok, Gmail, Google Sheets, GitHub, and more.
Core Value: You do not need to write API integration code for each platform yourself. Composio handles OAuth authentication, API invocations, and data format conversions for you. You only need to connect via MCP (Model Context Protocol) to enable the AI to operate these applications directly.
Architecture Overview
mermaid
graph LR
A[Your AI Assistant
Claude / Cursor / VS Code] -->|MCP Protocol| B[Composio MCP Server]
B --> C[Reddit]
B --> D[Facebook]
B --> E[Twitter/X]
B --> F[Instagram]
B --> G[TikTok]
B --> H[Gmail]
B --> I[500+ More Apps]
style A fill:#4A90D9,color:#fff
style B fill:#FF6B35,color:#fff
In a word: Composio is the "universal remote control" for AI Agents.
2. Competitor Comparison: Composio vs Zapier vs Make
⚠️ Key Difference: Zapier and Make are "no-code automation tools" aimed at non-technical users. Composio is an "AI Agent integration layer" aimed at developers.
| Dimension | Composio | Zapier | Make (Integromat) |
|---|---|---|---|
| Positioning | AI Agent Integration Platform | No-code Automation | Visual Automation |
| Target Audience | Developers / AI Engineers | Non-technical Users | Semi-technical Users |
| Integration Method | MCP / SDK / API | Web UI Drag-and-Drop | Web UI Visual Workflows |
| AI Integration | ✅ Native Support (Direct invocation by Claude/GPT) | ❌ Requires extra configuration | ❌ Requires extra configuration |
| Supported Apps | 500+ | 7000+ | 1500+ |
| OAuth Management | ✅ Composio manages tokens for you | ✅ Built-in | ✅ Built-in |
| Batch Parallel Invocation | ✅ Native Support (Call multiple platforms in one request) | ❌ Serial execution | ⚠️ Requires Iterator module |
| Starting Price | Free 20K calls/month | $19.99/month | $10.59/month |
| Code Control | ✅ Full code control | ❌ GUI only | ⚠️ Limited custom functions |
| MCP Support | ✅ Native | ❌ None | ❌ None |
When to choose Composio:
- You are developing with Claude Code / Cursor / AI Agents.
- You need the AI to directly operate third-party applications.
- You need to query multiple platforms at once and aggregate the results.
- You are a developer who prefers to control everything with code.
When to choose Zapier/Make:
- You do not know how to code and just want simple if-this-then-that workflows.
- You need to connect niche applications (Zapier has the broadest ecosystem).
- Your workflow is fixed and does not require AI participation.
3. Pricing Plans
Composio adopts a pay-per-call billing model, which is highly developer-friendly:
| Plan | Monthly Fee | Monthly Calls | Overage Rate | Support |
|---|---|---|---|---|
| Free | $0 | 20,000 calls | — | Community Support |
| Starter | $29/mo | 200,000 calls | $0.299/1K calls | Email Support |
| Pro | $229/mo | 2,000,000 calls | $0.249/1K calls | Slack Support |
| Enterprise | Custom | Custom | Custom | Dedicated SLA + SOC-2 |
💡 Advice for developers: The Free plan's 20K calls/month is more than enough for personal projects and testing. A typical Reddit search consumes about 1-2 calls, so 20K calls can accomplish a lot.
⚠️ Note: Every tool invocation (search, post, fetch comments, etc.) counts as one call. During multi-platform parallel querying, each platform is counted as a separate call.
4. Registering a Composio Account
⚠️ This is the first step and cannot be skipped! You must have a Composio account first to Connect apps, otherwise the MCP will not work properly.
4.1 Overall Workflow
mermaid flowchart LR A[1️⃣ Register for Composio] --> B[2️⃣ Connect Apps on the Web] B --> C[3️⃣ Install MCP Server] C --> D[4️⃣ Use in Claude Code]
style A fill:#E74C3C,color:#fff
style B fill:#E67E22,color:#fff
style C fill:#3498DB,color:#fff
style D fill:#2ECC71,color:#fff
Why register and Connect first? The MCP Server is merely a "pipeline"; it accesses third-party application APIs through your Composio account. If you haven't connected Reddit on the Composio website, the MCP will throw an error when calling the Reddit API: No active connection for toolkit: reddit.
4.2 Registration Steps
Open the Composio official website: https://composio.dev
Click "Get Started" or "Sign Up"
Choose a registration method:
- Log in with GitHub (Recommended, preferred for developers)
- Log in with Google
- Register with Email + Password
After completing registration, enter the Composio Dashboard
💡 No credit card required for the Free plan. Ready to use upon registration, with 20K calls/month for free.
5. Connecting Apps on the Composio Website
🔥 This is the most critical step! All third-party application OAuth authorizations are completed here. The MCP only "reads" these authorizations and cannot replace this step.
5.1 Detailed Connect Workflow
mermaid flowchart TD A[Log in to Composio Dashboard] --> B[Go to Integrations Page] B --> C[Search for the App to Connect] C --> D[Click Connect] D --> E[Redirect to Third-Party OAuth Page] E --> F[Log in and Authorize] F --> G[Auto-redirect back to Composio] G --> H{Status shows Connected?} H -->|Yes| I[✅ Ready for MCP Invocation] H -->|No| J[❌ Retry or Check Account Permissions] J --> D
style A fill:#4A90D9,color:#fff
style I fill:#2ECC71,color:#fff
style J fill:#E74C3C,color:#fff
5.2 Connect Reddit
Steps:
- Log in to the Composio Dashboard
- Find Integrations or Connected Apps in the left menu
- Search for Reddit and click to enter
- Click the Connect button
- The browser will redirect to Reddit's OAuth authorization page
- Log in to your Reddit account → Click Allow
- Auto-redirect back to Composio, and the status will change to Connected ✅
What you can do after Reddit authorization:
| Capability | Tool Name | Description |
|---|---|---|
| Search Posts | REDDIT_SEARCH_ACROSS_SUBREDDITS |
Site-wide search |
| Get Hot Posts | REDDIT_GET_R_TOP |
Hot posts in a specific Subreddit |
| Create Post | REDDIT_CREATE_REDDIT_POST |
Post text/link |
| Comment | REDDIT_POST_REDDIT_COMMENT |
Reply to a post or comment |
| View Comments | REDDIT_RETRIEVE_POST_COMMENTS |
Get all comments for a post |
| View Rules | REDDIT_GET_SUBREDDIT_RULES |
Must-check before posting |
5.3 Connect Facebook
Steps:
- Search for Facebook in the Composio Dashboard
- Click Connect
- Redirect to the Facebook OAuth page
- Log in to your Facebook account → Select the Facebook Page you want to link → Click Continue
- Authorize Composio to manage your Page
- Auto-redirect back to Composio, and the status will change to Connected ✅
⚠️ Key Facebook Precautions:
- Composio's Facebook integration binds to a Facebook Page, not a personal profile.
- If you don't have a Page, you need to create one on Facebook first.
- Group posts currently do not support API posting/commenting; content can only be fetched indirectly via web search.
- Ensure all permissions are checked during authorization (
pages_manage_posts,pages_read_engagement, etc.).
5.4 Connect Instagram
Steps:
- Search for Instagram in the Composio Dashboard
- Click Connect
- Redirect to the Meta (Facebook) OAuth page (Instagram uses Facebook authentication)
- Select the linked Facebook Page → Authorize the Instagram Professional account
- Auto-redirect back to Composio, and the status will change to Connected ✅
⚠️ Instagram Prerequisites:
- Your Instagram must be a Professional Account (Business or Creator).
- The Instagram account must be linked to a Facebook Page.
- Standard personal accounts cannot use the API.
How to upgrade a personal Instagram to Professional:
- Open the Instagram App → Settings → Account → Switch to Professional Account
- Select Creator or Business
- Link your Facebook Page
5.5 Connect Twitter/X
Steps:
- Search for Twitter in the Composio Dashboard
- Click Connect
- Redirect to the X (Twitter) OAuth page
- Log in to your Twitter account → Click Authorize App
- Auto-redirect back to Composio, and the status will change to Connected ✅
5.6 Connect TikTok
Steps:
- Search for TikTok in the Composio Dashboard
- Click Connect
- Redirect to the TikTok OAuth page
- Log in to your TikTok account → Authorize
- Auto-redirect back to Composio, and the status will change to Connected ✅
5.7 Connect Gmail / Google Sheets and other Google Apps
Google ecosystem apps share a single Google OAuth:
- Search for Gmail or Google Sheets, etc.
- Click Connect
- Redirect to Google OAuth → Select Google account → Authorize
- One authorization works for all Google apps ✅
5.8 Overview of All Connected Apps
After completing the Connect process, you can see all connected apps on the Integrations page of the Composio Dashboard:
✅ Reddit — ericwhk1205 — Connected
✅ Facebook — Wang Jianping — Connected
⬜ Instagram — Not Connected
⬜ Twitter/X — Not Connected
⬜ TikTok — Not Connected
✅ Gmail — [email protected] — Connected
💡 Multi-account Support: You can connect multiple accounts for the same app. For example, if you connect both a personal Page and a company Page on Facebook, you can specify which one to use via the
accountparameter during invocation.
💡 Alternative Connect Method (via MCP conversation): If you haven't pre-connected on the website, Composio will also pop up an authorization link when you request to operate a platform in a Claude Code conversation. However, it is highly recommended to Connect all apps on the website first for a smoother user experience.
6. Installing the MCP Server
Prerequisite: You have completed Step 4: Registering a Composio Account and Step 5: Connecting Apps.
What is MCP?
MCP (Model Context Protocol) is a standard protocol proposed by Anthropic that allows AI assistants to call external tools through a unified interface. You can think of it as the "USB port" of the AI world — a standard that connects everything.
Installation Steps
Done in one line of command:
claude mcp add --scope user --transport http composio https://connect.composio.dev/mcp
Parameter Description:
| Parameter | Meaning |
|---|---|
--scope user |
Takes effect globally (available for all projects) |
--transport http |
Uses HTTP transport (SSE protocol) |
composio |
MCP server name (customizable) |
| URL | Composio's MCP endpoint |
Verify Installation:
Type /mcp in Claude Code, and you should see composio appear in the installed list.
mermaid sequenceDiagram participant User as Your Terminal participant Claude as Claude Code participant MCP as Composio MCP Server participant Apps as Connected Apps
User->>Claude: claude mcp add composio ...
Claude->>MCP: Establish SSE Connection
MCP-->>Claude: Connection Successful ✅
User->>Claude: "Help me search Reddit for China travel posts"
Claude->>MCP: Invoke REDDIT_SEARCH
MCP->>Apps: Call API with your authorized Reddit Token
Apps-->>MCP: Return Post Data
MCP-->>Claude: Format Results
Claude-->>User: Display Search Results
⚠️ Important Notice:
- You need to restart Claude Code after installation for it to take effect.
- If the connection fails, check if your network requires a proxy.
- MCP will not handle OAuth authorization for you — you must Connect the apps on the website or in the conversation first.
7. Practical Exercise: Reddit Search and Posting
7.1 Searching for Posts
Search Prompt:
Help me search for recent hot posts on Reddit about "traveling to China"
Claude will invoke the REDDIT_SEARCH_ACROSS_SUBREDDITS tool:
Actual Invocation Example (You won't see this, but Claude does it in the background):
// Search request
{
"tool_slug": "REDDIT_SEARCH_ACROSS_SUBREDDITS",
"arguments": {
"search_query": "travel China tourism",
"sort": "hot",
"limit": 25
}
}
Example Return Result:
{
"posts": [
{
"title": "Blue Moon Valley, Yulong Snow Mountain, Yunnan",
"score": 379,
"num_comments": 9,
"subreddit": "travelchina",
"permalink": "/r/travelchina/comments/xxx/",
"created_utc": 1780223243
},
// ... more posts
]
}
Get hot posts from a specific Subreddit:
Show me the top 5 hottest posts today in r/travelchina
This will invoke REDDIT_GET_R_TOP:
{
"tool_slug": "REDDIT_GET_R_TOP",
"arguments": {
"subreddit": "travelchina",
"t": "day",
"limit": 5
}
}
7.2 Posting
⚠️ Posting is a public action! Once posted, it cannot be easily undone. Claude will confirm the content with you before publishing.
Create a new post:
Create a post in r/test with the title "Test" and the content "This is a test post sent via the Composio API"
{
"tool_slug": "REDDIT_CREATE_REDDIT_POST",
"arguments": {
"subreddit": "test",
"title": "Test",
"kind": "self",
"text": "This is a test post sent via the Composio API"
}
}
7.3 Commenting on a Post
Comment on this post: https://www.reddit.com/r/travelchina/comments/xxx/
Comment content: "Great post! Very helpful."
{
"tool_slug": "REDDIT_POST_REDDIT_COMMENT",
"arguments": {
"thing_id": "t3_xxx",
"text": "Great post! Very helpful."
}
}
⚠️ thing_id Format: The
t3_prefix indicates replying to a post, while thet1_prefix indicates replying to a comment. Do not mix them up.
8. Practical Exercise: Facebook Search and Posting
8.1 Searching Facebook Content
Facebook content cannot be directly searched for posts (due to API limitations), but you can indirectly find public Facebook posts and groups via web search:
Search Facebook for popular groups and posts about China travel
Claude will use COMPOSIO_SEARCH_WEB to search:
{
"tool_slug": "COMPOSIO_SEARCH_WEB",
"arguments": {
"query": "site:facebook.com China travel groups posts 2026"
}
}
The return results include:
- Group links (e.g., facebook.com/groups/travelchina3/)
- Public post links
- Post titles and summaries
8.2 Posting on a Facebook Page
⚠️ Important Limitation: Composio's Facebook integration only supports Pages, not personal profiles or groups. If you want to post in a group, you need to do it manually.
Post on a Page:
Publish a post about China travel on my Facebook Page
{
"tool_slug": "FACEBOOK_CREATE_POST",
"arguments": {
"page_id": "Your Page ID",
"message": "🇨🇳 China Travel Tips: Highly recommend using Alipay, Amap, and 12306 for buying train tickets!"
}
}
8.3 Facebook vs Reddit Capability Comparison
| Feature | ||
|---|---|---|
| Search Posts | ✅ Fully Supported | ⚠️ Only accessible indirectly via web search |
| Post | ✅ Supported | ⚠️ Only supports Pages, not groups |
| Comment | ✅ Supported | ⚠️ Only supports Page posts |
| Read Content | ✅ Fully Supported | ⚠️ Limited |
| Fetch Comments | ✅ Supported | ⚠️ Requires Page permissions |
9. The Killer Feature: Multi-Platform Parallel Querying
🔥 This is one of Composio's most powerful features — querying multiple platforms simultaneously with a single request.
Scenario: You want to know the popularity of discussions about "China travel" across the entire web
Without Composio: Open Reddit, Facebook, and Twitter separately and search one by one.
With Composio: Done in one sentence.
Help me search "travel to China" across multiple platforms including Reddit, Facebook web, and Twitter for the latest hot content
Claude will invoke multiple tools in parallel:
sequenceDiagram
participant User as You
participant Claude as Claude + Composio
participant R as Reddit API
participant F as Web Search (Facebook)
participant T as Twitter API
User->>Claude: Search "travel to China" across multiple platforms
par Parallel Execution
Claude->>R: REDDIT_SEARCH_ACROSS_SUBREDDITS
Claude->>F: COMPOSIO_SEARCH_WEB (site:facebook.com)
Claude->>T: TWITTER_RECENT_SEARCH
end
R-->>Claude: Reddit Post List
F-->>Claude: Facebook Groups/Posts
T-->>Claude: Twitter Tweets
Claude->>Claude: Deduplicate + Sort + Aggregate
Claude-->>User: Unified Result List ✅Actual Code Invocation:
// COMPOSIO_MULTI_EXECUTE_TOOL — Parallel invocation in one request
{
"tools": [
{
"tool_slug": "REDDIT_SEARCH_ACROSS_SUBREDDITS",
"arguments": {
"search_query": "travel China tourism",
"sort": "hot",
"limit": 10
}
},
{
"tool_slug": "COMPOSIO_SEARCH_WEB",
"arguments": {
"query": "site:facebook.com China travel groups 2026"
}
},
{
"tool_slug": "TWITTER_RECENT_SEARCH",
"arguments": {
"query": "China travel tips"
}
}
]
}
The results you get:
| # | Platform | Title | Score | Link |
|---|---|---|---|---|
| 1 | Blue Moon Valley, Yulong Snow Mountain, Yunnan | 379⬆ | reddit.com/r/travelchina/... | |
| 2 | How to eat like Jensen Huang in Beijing Hutongs | 79⬆ | reddit.com/r/travelchina/... | |
| 3 | 🇨🇳 TRAVEL in CHINA Group Discussion | — | facebook.com/groups/travelchina3/... | |
| 4 | #ChinaTravel tips thread | 1.2K❤ | x.com/user/status/... | |
| 5 | How to order food in China when there are only QR code menus | 23⬆ | reddit.com/r/chinatravel/... |
💡 Marketing Value: A single query allows you to grasp the discussion trends across the web, which is 10 times more efficient than manual platform-by-platform searching.
10. Practical Exercise: Marketing Automation
Scenario: You want to promote your travel product in China travel communities
Complete Marketing Workflow:
mermaid flowchart TD A[🔍 Step 1: Multi-Platform Monitoring] --> B[📊 Step 2: Analyze Trend Popularity] B --> C[🎯 Step 3: Identify Target Users] C --> D[💬 Step 4: Precision Engagement] D --> E[📈 Step 5: Performance Tracking]
A1[Reddit r/travelchina<br/>r/Chinavisa] --> A
A2[Facebook China Travel Groups] --> A
A3[Twitter #ChinaTravel] --> A
A4[TikTok China Travel Videos] --> A
style A fill:#3498DB,color:#fff
style B fill:#9B59B6,color:#fff
style C fill:#E67E22,color:#fff
style D fill:#2ECC71,color:#fff
style E fill:#E74C3C,color:#fff
10.1 Multi-Platform Monitoring
Search Reddit, Facebook, and Twitter for discussions about "China travel guides" over the past 7 days, sorted by popularity
10.2 Identify Target Users
Find recent posts on Reddit from people planning to travel to China, and list the posters' usernames and post links
10.3 Precision Engagement (Commenting)
Comment on this post: "Recommend downloading Alipay and Amap, which basically cover all payment and navigation needs. Also, the 12306 app can be used to buy train tickets and supports an English interface."
⚠️ Marketing Precautions:
- Do not hard-sell! Reddit communities strongly dislike ads and you can easily get downvoted or banned.
- Focus on providing value: Share real experiences and practical guides.
- Become a familiar face first, then naturally introduce your product.
- Leave at least a few minutes between each action to avoid being flagged as spam.
10.4 Automated Publishing Example
If you want to schedule content publishing across multiple platforms:
# Pseudocode — Demonstrates Composio's multi-platform publishing capabilities
# In actual use, this is completed through Claude Code conversations
platforms = {
"reddit": {
"tool": "REDDIT_CREATE_REDDIT_POST",
"subreddit": "travelchina",
"title": "My China Travel Tips After 30 Days",
"text": "Just came back from a 30-day trip across China..."
},
"facebook": {
"tool": "FACEBOOK_CREATE_POST",
"page_id": "your_page_id",
"message": "🇨🇳 Just came back from 30 days in China..."
}
}
# Composio MULTI_EXECUTE parallel publishing in one go
11. Common Pitfalls and Precautions
🚨 Pitfalls You Must Know
| Pitfall | Description | Solution |
|---|---|---|
| Reddit thing_id Prefix | t3_ is for posts, t1_ is for comments. Mixing them up posts to the wrong place. |
Use t3_xxx to reply to posts, t1_xxx to reply to comments. |
| Facebook Only Supports Pages | API access to groups and personal profiles is restricted. | Page operations are fine; groups require manual action. |
| Reddit Posting Rate Limits | Continuous posting will trigger a RATELIMIT error. | Leave a 5-10 minute interval between actions. |
| Subreddit Rules | Some communities mandate flairs; missing them gets posts deleted. | Use REDDIT_GET_SUBREDDIT_RULES to check rules first. |
| OAuth Token Expiration | Connections may expire after long periods of inactivity. | Simply click the authorization link again. |
| Parallel Invocation Billing | When querying multiple platforms in parallel, each platform counts as one call. | The Free plan's 20K calls are sufficient for daily use. |
| Facebook Comment Permissions | Specific permissions are required to comment on Page posts. | Ensure Page admin permissions are authorized. |
⚡ Efficiency Tips
- Use
COMPOSIO_SEARCH_WEBfor broad searches first, then use platform APIs for precise searches — This is the most efficient approach. - Check rules before posting —
REDDIT_GET_SUBREDDIT_RULEScan prevent your posts from being deleted. - Use
REDDIT_GET_R_TOPto fetch by time range —t: "day" / "week" / "month". - Multi-account management — You can connect multiple accounts for the same platform and specify the
accountparameter during invocation.
12. Conclusion
Composio's Core Advantages
mermaid mindmap root((Composio)) AI Native MCP Protocol Support Direct Claude/GPT Invocation Natural Language Control Multi-Platform 500+ Apps Unified API Parallel Querying Developer Friendly Code Control SDK Support Free 20K Calls Marketing Tool Network-wide Monitoring Automated Publishing Precision Engagement
Quick Start Checklist
- Register a Composio account: composio.dev
- Connect the apps you need on the Dashboard (Reddit, Facebook, Instagram...)
- Install the MCP Server:
claude mcp add --scope user --transport http composio https://connect.composio.dev/mcp - Restart Claude Code
- Verify connection: Type
/mcpto see if composio is in the list - Search test: Search for a topic you are interested in
- Post test: Test posting in r/test first
- Try multi-platform parallel querying
- Start your marketing automation journey 🚀
📝 Author: eric
Last Updated: 2026-06-01
Composio Official Website: composio.dev
Documentation: docs.composio.dev
Pricing: composio.dev/pricing