AI & MCP Server
XenonFlare provides a Model Context Protocol (MCP) server that allows you to connect XenonFlare's powerful video automation tools directly to AI assistants like Claude Desktop, Cursor, and others.
The MCP Server is available exclusively for users on Plus and Pro plans.
Overview
The XenonFlare MCP Server exposes tools that enable an AI to:
- List Channels: Discover your connected YouTube, Instagram, TikTok, LinkedIn, and Pinterest accounts.
- Upload & Schedule: Upload video files and schedule them for publication across multiple platforms.
- Check Status: Monitor the progress of uploads and get publication links.
- Manage Content: View, update, and delete your uploaded videos and images.
Quick Start
Step 1: Get Your API Key
- Log in to your XenonFlare dashboard
- Navigate to Settings → API Keys
- Click Create New API Key
- Copy your API key (starts with
xf_)
Never share your API key publicly or commit it to version control. Treat it like a password.
Step 2: Choose Your Setup Method
XenonFlare offers two ways to use the MCP server:
Installation Methods
Option A: Local Server (Recommended)
Running the server locally allows the AI to access video files directly from your computer, making it perfect for uploading local files.
1. Download the MCP Script
Download the official XenonFlare MCP script:
Save it to a convenient location, for example:
- Windows:
C:\Users\YourName\xenonflare-mcp.ts - macOS/Linux:
~/xenonflare-mcp.ts
2. Configure Your AI Client
Claude Desktop
-
Locate your Claude Desktop config file:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
- macOS:
-
Add the XenonFlare MCP server configuration:
{
"mcpServers": {
"xenonflare": {
"command": "npx",
"args": ["tsx", "C:/Users/YourName/xenonflare-mcp.ts"],
"env": {
"XENONFLARE_API_KEY": "xf_your_api_key_here"
}
}
}
}
- Restart Claude Desktop
Cursor IDE
-
Open Cursor Settings (Cmd/Ctrl + ,)
-
Navigate to Features → MCP Servers
-
Add a new server with:
- Name: XenonFlare
- Command:
npx - Args:
["tsx", "/path/to/xenonflare-mcp.ts"] - Environment:
XENONFLARE_API_KEY=xf_your_api_key_here
-
Restart Cursor
Windsurf IDE
- Open Windsurf Settings
- Go to AI → MCP Servers
- Click Add Server
- Configure:
{
"command": "npx",
"args": ["tsx", "/path/to/xenonflare-mcp.ts"],
"env": {
"XENONFLARE_API_KEY": "xf_your_api_key_here"
}
}
Option B: Hosted Server
Connect to XenonFlare's hosted MCP endpoint without downloading anything. Perfect for quick setup, but can only upload videos from public URLs.
Hosted Endpoint: https://mcp.xenonflare.com/sse?apiKey=YOUR_API_KEY
Claude Desktop Configuration
Add this to your claude_desktop_config.json:
{
"mcpServers": {
"xenonflare-hosted": {
"url": "https://mcp.xenonflare.com/sse?apiKey=xf_your_api_key_here"
}
}
}
Available Tools
list_channels
Returns a list of all your connected social media accounts with their internal XenonFlare IDs.
Example AI Prompt:
"What social accounts do I have connected to XenonFlare?"
Response includes:
- Platform type (YouTube, Instagram, TikTok, LinkedIn, Pinterest)
- Account name/username
- Internal XenonFlare ID (required for uploads)
- Connection status
upload_video
Uploads a video to your selected platforms with customizable metadata.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
filePath | string | Local only | Absolute path to video file |
videoUrl | string | Remote only | Public URL to video file |
platforms | array | Yes | Array of platforms: youtube, instagram, tiktok, linkedin, pinterest |
title | string | No | Internal title for your records |
description | string | No | Internal description for your records |
scheduledAt | string | No | ISO 8601 timestamp for scheduling |
youtube | object | No | YouTube settings: channels (IDs), title, description, autoPublish |
instagram | object | No | Instagram settings: accounts (IDs), caption, autoPublish |
tiktok | object | No | TikTok settings: accounts (IDs), caption, privacy, autoPublish, disableComment, etc. |
linkedin | object | No | LinkedIn settings: accounts (IDs), comment, autoPublish |
pinterest | object | No | Pinterest settings: accounts (IDs), title, description, autoPublish |
Example AI Prompts:
"Upload the video at C:\Videos\product-demo.mp4 to my YouTube channel with the title 'New Product Launch 2026'"
"Schedule the video at ~/Desktop/tutorial.mp4 to post on Instagram and TikTok tomorrow at 3 PM with the title 'Quick Tutorial'"
get_video_status
Returns the current status and publication links for an uploaded video.
Parameters:
videoId: The internal ID returned byupload_video
Example AI Prompt:
"What's the status of video ID 507f1f77bcf86cd799439011?"
Response includes:
- Upload status (processing, completed, failed)
- Publication status per platform
- Direct links to published content
- Error messages (if any)
upload_image
Uploads an image to your selected platforms.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
filePath | string | Local only | Absolute path to image file |
imageUrl | string | Remote only | Public URL to image file |
platforms | array | Yes | Array of platforms: instagram, tiktok, linkedin, pinterest |
title | string | No | Internal title for your records |
description | string | No | Internal description for your records |
scheduledAt | string | No | ISO 8601 timestamp for scheduling |
instagram | object | No | Instagram settings: accounts (IDs), caption, autoPublish |
tiktok | object | No | TikTok settings: accounts (IDs), caption, privacy, autoPublish |
linkedin | object | No | LinkedIn settings: accounts (IDs), comment, autoPublish |
pinterest | object | No | Pinterest settings: accounts (IDs), title, description, autoPublish |
Example AI Prompt:
"Upload the image at ~/Pictures/announcement.jpg to Instagram and Pinterest with the caption 'Big news coming soon!'"
list_videos
Returns a list of your uploaded videos. Supports pagination and filtering.
Example AI Prompt:
"Show me my last 10 uploaded videos"
list_images
Returns a list of your uploaded images. Supports pagination and filtering.
Example AI Prompt:
"List my uploaded images"
get_image_status
Returns the current status and publication links for an uploaded image.
Parameters:
imageId: The internal ID returned byupload_image
Example AI Prompt:
"What's the status of my latest image upload?"
delete_video
Deletes a video from XenonFlare (does not remove from platforms).
Parameters:
videoId: The video ID to delete
Example AI Prompt:
"Delete video ID 507f1f77bcf86cd799439011"
Practical Examples
Example 1: Daily Content Workflow
You: "List my connected accounts"
AI: [Shows all connected platforms]
You: "Upload today's video at C:\Content\day-5.mp4 to YouTube and TikTok
with title 'Day 5: Advanced Techniques' and schedule it for
tomorrow at 9 AM EST"
AI: [Uploads and schedules the video]
You: "Check the status"
AI: [Shows processing status and estimated completion time]
Example 2: Batch Upload
You: "Upload these three videos to my Instagram:
- C:\Videos\reel1.mp4 titled 'Morning Routine'
- C:\Videos\reel2.mp4 titled 'Workout Tips'
- C:\Videos\reel3.mp4 titled 'Healthy Breakfast'"
AI: [Processes all three uploads sequentially]
Example 3: Cross-Platform Publishing
You: "Upload C:\Marketing\product-launch.mp4 to all my connected platforms
with title 'Introducing Our New Product Line' and description
'Check out our latest innovation. Available now!'"
AI: [Uploads to YouTube, Instagram, TikTok, LinkedIn, and Pinterest]
Troubleshooting
MCP Server Not Showing Up
- Verify API Key: Ensure your API key is valid and starts with
xf_ - Check File Path: Make sure the path to
xenonflare-mcp.tsis correct - Restart Client: Completely quit and restart your AI client
- Check Logs:
- Claude Desktop:
~/Library/Logs/Claude/mcp*.log(macOS) or%APPDATA%\Claude\logs\(Windows) - Look for connection errors or authentication failures
- Claude Desktop:
Upload Failures
- File Format: Ensure your video is in a supported format (MP4, MOV, AVI)
- File Size: Check that your file doesn't exceed platform limits
- API Key Permissions: Verify your API key has upload permissions
- Account Connection: Ensure target platforms are properly connected in your dashboard
"Invalid API Key" Error
- Regenerate your API key in the dashboard
- Update the config file with the new key
- Restart your AI client
Slow Upload Speeds
- Local Server: Uploads depend on your internet connection
- Hosted Server: Try the local server for better performance with large files
Rate Limits
| Plan | API Requests/Hour | Uploads/Hour |
|---|---|---|
| Plus | 1,000 | 50 |
| Pro | 10,000 | 200 |
Security Best Practices
- Never commit API keys to version control
- Use environment variables for API keys in production
- Rotate keys regularly (every 90 days recommended)
- Monitor usage in your dashboard for suspicious activity
- Revoke unused keys immediately
Support
Need help? We're here for you:
- Documentation: docs.xenonflare.com
- Email: [email protected]
- Discord: Join our community server
What's Next?
- Explore the API Documentation for programmatic access
- Learn about Video Upload best practices
- Check out Platform-Specific Settings