MCP Integration
Use Boring API directly within Claude through the Model Context Protocol (MCP).
What is MCP?
Model Context Protocol (MCP) is an open standard developed by Anthropic that allows AI assistants like Claude to connect to external systems and data sources. With Boring MCP Server, you can publish to social media platforms directly through natural conversation with Claude.
Quick Start
Prerequisites
- Claude - Claude App (mobile/web) or Claude Desktop
- Boring Account - Sign up at Boring Dashboard
- Connected Accounts - Connect your social media accounts in Boring Dashboard
Option 1: Claude Connectors (Recommended)
Use Claude Connectors in the Claude mobile/web app - the easiest way to connect Boring! No additional authentication required - just copy and paste your MCP link.
Setup Steps
Get Your MCP Link
- Visit Boring Dashboard
- Sign in with your Google account
- Go to Settings page
- Copy your MCP Server URL (looks like:
https://boring.aiagent-me.com/mcp/t/xxxxx...)
Open Claude App
Go to Claude settings and find the Connectors section.
Add New Connector
- Click "Add Connector" or "+"
- Paste your MCP Server URL from step 1
- Click Connect
Start Using
That's it! You can immediately start publishing to social media through natural conversation with Claude!
Example MCP Link
https://boring.aiagent-me.com/mcp/t/Y1ykkIGU...your_token.../
Security Note: Your MCP link contains your credentials. Keep it secure and don't share it publicly. If compromised, you can regenerate it in the Settings page.
Advantages of Claude Connectors
- One-click setup - Just paste your MCP link, no additional login needed
- No API key management - Authentication is embedded in the URL
- Works on mobile - Use Claude's mobile app to publish on the go
- Easy regeneration - If compromised, regenerate your link in Settings
Option 2: Claude Desktop (API Key)
Use our hosted MCP server with Claude Desktop - configure once with your API key.
Configuration
Configure Claude Desktop
Edit your Claude Desktop config file:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
- macOS:
Add Remote Boring MCP Server
{ "mcpServers": { "boring": { "type": "url", "url": "https://boring.aiagent-me.com/mcp/", "headers": { "X-API-Key": "boring_xxxxxxxxxxxxx" } } } }Get your API Key
- Visit Boring Dashboard
- Sign in with Google
- Go to Settings page
- Click "Create New Key"
- Copy the key and paste it in the config above
Restart Claude Desktop
Close and reopen Claude Desktop to load the MCP server.
Advantages of Claude Desktop
- Full control - Manage your own API keys
- Multiple keys - Create different keys for different purposes
- Usage tracking - See when each key was last used
Verify Installation
Start a conversation with Claude:
You: "List my connected social media accounts"
Claude: [Calls boring_list_accounts]
You have 3 connected accounts:
1. Facebook Page: "My Business Page"
2. Instagram: "@myusername"
3. Threads: "@myusername"
If you see this, congratulations! The MCP server is working correctly.
What You Can Do
1. List Connected Accounts
You: "Show me all my social media accounts"
You: "What accounts do I have connected?"
You: "List my Facebook pages"
2. Publish Posts
Single Platform:
You: "Post this image to Instagram with caption 'Beautiful sunset'"
You: "Share this on Facebook: [your content]"
You: "Upload this video to YouTube with title 'Tutorial'"
Multiple Platforms:
You: "Post this to both Instagram and Threads: [content]"
You: "Cross-post this image to all my accounts"
3. Publish Threads
Threads Platform:
You: "Create a thread on Threads:
1. Today I want to share something amazing
2. We just launched a new feature
3. You can now publish via MCP
4. It's super convenient!"
X (Twitter) Platform:
You: "Post a Twitter thread:
1. First tweet
2. Second tweet
3. Third tweet"
4. Schedule Posts (NEW!)
Schedule for later:
You: "Schedule a post for tomorrow at 10am: Good morning everyone!"
You: "Post this to Instagram at 3pm on Friday: [content]"
You: "Schedule a thread on Threads for next Monday: [posts]"
Manage scheduled posts:
You: "Show my scheduled posts"
You: "What posts are waiting to be published?"
You: "Cancel the scheduled post for tomorrow"
5. View Publish History
You: "Show me my recent posts"
You: "What did I publish yesterday?"
You: "List my last 10 Instagram posts"
6. Check Performance
You: "How is my Facebook page performing this week?"
You: "Show me Instagram engagement stats"
You: "Which posts performed best this month?"
Example Conversations
Example 1: Publishing to Instagram
You: "I want to post this image to Instagram:
Image: https://example.com/sunset.jpg
Caption: Beautiful sunset at the beach #sunset #beach #photography"
Claude:
Great! Let me publish this to your Instagram account.
[Calls boring_list_accounts to find Instagram account]
Found your Instagram: @myusername
[Calls boring_publish_post]
Parameters:
- Platform: Instagram
- Caption: "Beautiful sunset at the beach #sunset #beach #photography"
- Image: https://example.com/sunset.jpg
Successfully published to Instagram!
- Post ID: 12345_67890
- Published: 2025-12-15 14:30:00
- View post: https://www.instagram.com/p/abc123/
Example 2: Creating a Thread
You: "Create a thread on Threads about our new MCP integration:
1. Exciting news! We just launched MCP integration
2. Now you can publish to social media directly from Claude
3. No more switching between apps
4. Just chat with Claude and it handles everything
5. Try it out now!"
Claude:
I'll create a 5-post thread on Threads for you.
[Calls boring_publish_thread]
Parameters:
- Platform: Threads
- Posts: 5
- Content: [array of 5 strings]
Thread published successfully!
- Total posts: 5
- First post ID: 17885748657253466
- View thread: https://www.threads.net/@myusername/post/abc123
Example 3: Checking Performance
You: "How did my Facebook page perform this week?"
Claude:
[Calls boring_get_performance]
Parameters:
- Platform: Facebook
- Period: week
Here's your Facebook page performance for the past week:
**Page Metrics**:
- Page Views: 1,247
- Post Engagements: 42
- Total Actions: 15
**Top Performing Posts**:
1. "Check out our new product!" - 1,247 views, 25 reactions
2. "Behind the scenes video" - 856 views, 18 reactions
3. "Customer testimonial" - 623 views, 12 reactions
Overall, your engagement is up 15% compared to last week!
Available MCP Tools
The Boring MCP Server provides 7 tools that Claude can use:
1. boring_list_accounts
Purpose: List all connected social media accounts
Parameters: None
Returns: List of accounts with platform, name, and account ID
Example Usage:
"Show me my accounts"
"What social media accounts are connected?"
2. boring_publish_post
Purpose: Publish a single post to a platform (immediate or scheduled)
Parameters:
account_id(string): Account ID to publish toplatform(string): Platform name (facebook, instagram, threads, youtube, x)text(string): Post content/captionmedia_urls(array, optional): Image/video URLsscheduled_at(string, optional): ISO 8601 datetime for scheduled publishing (e.g., "2025-12-25T10:00:00Z")
Returns: Post ID, published timestamp, platform details (or scheduled post ID if scheduled)
Example Usage:
"Post this image to Instagram: [url]"
"Share this on Facebook: [content]"
"Schedule a post for tomorrow at 10am: [content]"
3. boring_publish_thread
Purpose: Publish multiple connected posts (thread) - immediate or scheduled
Parameters:
account_id(string): Account ID to publish toplatform(string): Platform name (threads or x)texts(array): Array of post contentsmedia_urls(array, optional): Media URLs (only on first post)scheduled_at(string, optional): ISO 8601 datetime for scheduled publishing
Returns: Thread count, all post IDs, platform details (or scheduled post ID if scheduled)
Example Usage:
"Create a thread on Threads: [array of content]"
"Post a Twitter thread: [array of tweets]"
"Schedule a thread for Friday at 9am: [posts]"
4. boring_list_scheduled_posts
Purpose: List scheduled posts waiting to be published
Parameters:
status(string, optional): Filter by status (scheduled, publishing, published, failed, cancelled)platform(string, optional): Filter by platformlimit(number, optional): Maximum posts to return (default: 50)
Returns: List of scheduled posts with content, scheduled time, and status
Example Usage:
"Show my scheduled posts"
"What posts are waiting to be published?"
"List all scheduled Instagram posts"
5. boring_cancel_scheduled_post
Purpose: Cancel a scheduled post before it's published
Parameters:
scheduled_post_id(string): ID of the scheduled post to cancel
Returns: Confirmation of cancellation
Example Usage:
"Cancel the scheduled post with ID abc123"
"Remove the Facebook post scheduled for tomorrow"
6. boring_get_publish_history
Purpose: Retrieve publishing history
Parameters:
limit(number, optional): Number of posts to retrieve (default: 20)platform(string, optional): Filter by platform
Returns: List of published posts with timestamps and status
Example Usage:
"Show my recent posts"
"What did I publish yesterday?"
"List my Instagram posts from this week"
7. boring_get_performance
Purpose: Get performance metrics for accounts
Parameters:
account_id(string): Account ID to queryplatform(string): Platform nameperiod(string, optional): Time period (day, week, month)
Returns: Performance metrics (views, engagement, interactions)
Supported Platforms: Facebook, Instagram, Threads, YouTube
Example Usage:
"How is my Facebook page doing?"
"Show Instagram engagement metrics"
"Which posts performed best?"
Platform Support
| Platform | Text Only | Images | Videos | Carousel | Thread |
|---|---|---|---|---|---|
| Yes | Yes | Yes | Yes (2-10) | No | |
| No | Yes | Yes | Yes (2-10) | No | |
| Threads | Yes | Yes | Yes | Yes (2-20) | Yes |
| YouTube | No | No | Yes | No | No |
| X (Twitter) | Yes | Yes | Yes | No | Yes |
Troubleshooting
Claude Connectors Won't Connect
Symptom: Connection fails or times out
Solution:
- Make sure you copied the complete MCP link from Settings page
- The URL should start with
https://boring.aiagent-me.com/mcp/t/ - Try regenerating your MCP link in Settings
- Check your internet connection
MCP Server Not Loading (Claude Desktop)
Symptom: Claude doesn't recognize boring tools
Solution:
- Check
claude_desktop_config.jsonsyntax is valid JSON - Verify Python path:
which pythonorwhere python - Check API key is set correctly in config
- Restart Claude Desktop completely
- Check Claude Desktop logs:
- macOS:
~/Library/Logs/Claude/mcp*.log - Windows:
%APPDATA%\Claude\logs\mcp*.log
- macOS:
Invalid API Key Error
Symptom: "Invalid API key" error
Solution:
- Verify API key in Boring Dashboard
- Create a new API key if needed
- Update
claude_desktop_config.jsonwith new key - Restart Claude Desktop
Account Not Found Error
Symptom: "Account not found" error
Solution:
- List accounts first: "Show me my accounts"
- Verify account is connected in Boring Dashboard
- Reconnect the account if needed
- Make sure you're using the correct account ID
Publishing Fails
Symptom: Post publishing fails
Solution:
- Check media URLs are publicly accessible (HTTPS)
- Verify platform supports the content type
- Check token hasn't expired (reconnect account)
- Ensure image/video format is supported
- Check file size limits (Instagram: 8MB, YouTube: varies)
Performance Data Not Available
Symptom: "No performance data" error
Solution:
- Performance API only supports: Facebook, Instagram, Threads, YouTube
- Account must have appropriate permissions
- Facebook requires
pages_read_engagementpermission - Instagram requires Business/Creator account
- Data may take 24-48 hours to appear
Security Best Practices
- Keep your MCP link private - It contains your credentials
- Regenerate if compromised - Use Settings page to get a new link
- Don't share API keys - Keep them secure in config files
- Rotate keys regularly - Generate new keys periodically
- Monitor usage - Check activity in Boring Dashboard
Getting Help
- Documentation: boring-doc.aiagent-me.com
- Dashboard: boring.aiagent-me.com
- GitHub Issues: github.com/boring-ai/boring-mcp-server
- MCP Documentation: modelcontextprotocol.io
Next Steps
- Publishing API - Learn about publishing endpoints
- Performance API - Understand performance metrics
- Examples - See more usage examples