thesammykins/FlixBridge
If you are the rightful owner of FlixBridge and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
FlixBridge is a Model Context Protocol (MCP) server designed to connect AI assistants with media management services, providing a unified interface for monitoring downloads, managing libraries, and automating media workflows.
FlixBridge
Media Management MCP Server
Connect your AI assistant to TV shows and movie management services
FlixBridge is a Model Context Protocol (MCP) server that bridges AI assistants with media management services. It provides a unified interface for monitoring downloads, managing libraries, and automating media workflows.
โจ Key Features
- ๐ฌ Multi-Service Support - TV shows, movies, and download clients
- ๐ Real-Time Monitoring - Queue status, system health, and diagnostics
- ๐ค Smart Automation - Auto-fix stuck downloads and optimize workflows
- ๐ข Multi-Instance Ready - Quality tiers, content types, environments
- ๐ Intelligent Search - Find and add new content with smart quality profiles
- ๐ Unified Dashboard - Single view across all your services
- ๐ Advanced Debugging - Comprehensive logging and diagnostics
- โก High Performance - Efficient, lightweight, TypeScript-first
๐ฆ Installation
From npm (Recommended)
# Install globally
npm install -g @thesammykins/flixbridge
# Or install locally in your project
npm install @thesammykins/flixbridge
๐ฆ View on npm
From Source
# Clone the repository
git clone https://github.com/thesammykins/FlixBridge.git
cd FlixBridge
# Install dependencies and build
npm install && npm run build
๐ Quick Start
# 1. Configure your services via environment variables
export SONARR_URL="http://localhost:8989"
export SONARR_API_KEY="your-sonarr-api-key"
export RADARR_URL="http://localhost:7878"
export RADARR_API_KEY="your-radarr-api-key"
# Optional downloader
export SABNZBD_URL="http://localhost:8080"
export SABNZBD_API_KEY="your-sabnzbd-api-key"
# 2. Build and run
npm run build
npm start
Or with slug-based configuration for multiple instances:
# Multiple Sonarr instances
export SONARR_HD_URL="http://localhost:8989"
export SONARR_HD_API_KEY="your-hd-sonarr-key"
export SONARR_4K_URL="http://localhost:8990"
export SONARR_4K_API_KEY="your-4k-sonarr-key"
# Multiple Radarr instances
export RADARR_MAIN_URL="http://localhost:7878"
export RADARR_MAIN_API_KEY="your-main-radarr-key"
export RADARR_UHD_URL="http://localhost:7879"
export RADARR_UHD_API_KEY="your-uhd-radarr-key"
npm start
โ๏ธ Configuration
FlixBridge v0.3.x uses environment-only configuration with slug-based discovery. No config files and no JSON-in-env mapping required.
Slug-based multiple instances
- Sonarr:
SONARR_<SLUG>_URL
,SONARR_<SLUG>_API_KEY
, optionalSONARR_<SLUG>_NAME
- Radarr:
RADARR_<SLUG>_URL
,RADARR_<SLUG>_API_KEY
, optionalRADARR_<SLUG>_NAME
- SABnzbd:
SABNZBD_<SLUG>_URL
,SABNZBD_<SLUG>_API_KEY
, optionalSABNZBD_<SLUG>_NAME
Multi-Instance Example
# Sonarr
export SONARR_MAIN_URL="http://sonarr-main:8989"
export SONARR_MAIN_API_KEY="{{SONARR_MAIN_KEY}}"
export SONARR_4K_URL="http://sonarr-4k:8989"
export SONARR_4K_API_KEY="{{SONARR_4K_KEY}}"
# Radarr
export RADARR_MAIN_URL="http://radarr-main:7878"
export RADARR_MAIN_API_KEY="{{RADARR_MAIN_KEY}}"
export RADARR_UHD_URL="http://radarr-uhd:7878"
export RADARR_UHD_API_KEY="{{RADARR_UHD_KEY}}"
# SABnzbd (optional)
export SABNZBD_MAIN_URL="http://sab-main:8080"
export SABNZBD_MAIN_API_KEY="{{SAB_MAIN_KEY}}"
Notes:
- Service names default to
sonarr-<slug>
/radarr-<slug>
(slug lowercased,_
โ-
). - If you set
<KIND>_<SLUG>_NAME
, that overrides the final name (ensure it contains "sonarr"/"radarr" to pass current detection). - Single-instance fallback (SONARR_URL/RADARR_URL/SABNZBD_URL) still works for simple setups.
๐ ๏ธ Available Tools
โ ๏ธ Important: Always call
list_services
first to discover available services before using any other tools.
Service Discovery
- list_services - Discover all configured services and downloaders
Core Operations
- system_status - Health and version information
- queue_list - Download queue with progress tracking
- queue_grab - Force retry/grab specific downloads
- queue_diagnostics - Auto-detect and fix stuck items
- root_folders - Storage locations and free space
Media Management
- search - Find new series/movies to add
- add_new - Add media with intelligent quality profiles
- quality_profiles - List available quality configurations
- history_detail - Download and import history
- import_issues - Detect stuck downloads and import problems
Multi-Service Tools
- all_services_diagnostics - Run diagnostics across all instances
- download_status - Unified status across services and downloaders
๐ง MCP Client Setup
Claude Desktop
Add to claude_desktop_config.json
:
{
"mcpServers": {
"flixbridge": {
"command": "npx",
"args": ["@thesammykins/flixbridge"],
"env": {
"SONARR_URL": "http://localhost:8989",
"SONARR_API_KEY": "your-sonarr-api-key",
"RADARR_URL": "http://localhost:7878",
"RADARR_API_KEY": "your-radarr-api-key"
}
}
}
}
Alternative: Global Installation
# Install globally for easier usage
npm install -g @thesammykins/flixbridge
Then use with Claude Desktop by providing environment variables (standard or via mapping):
{
"mcpServers": {
"flixbridge": {
"command": "flixbridge",
"env": {
"SONARR_URL": "http://localhost:8989",
"SONARR_API_KEY": "your-sonarr-api-key",
"RADARR_URL": "http://localhost:7878",
"RADARR_API_KEY": "your-radarr-api-key",
"SABNZBD_URL": "http://localhost:8080",
"SABNZBD_API_KEY": "your-sabnzbd-api-key"
}
}
}
}
Single Instance Setup (Alternative)
export SONARR_URL="http://localhost:8989"
export SONARR_API_KEY="your-sonarr-api-key"
export RADARR_URL="http://localhost:7878"
export RADARR_API_KEY="your-radarr-api-key"
export SABNZBD_URL="http://localhost:8080"
export SABNZBD_API_KEY="your-sabnzbd-api-key"
๐ Debugging
Enable comprehensive debug logging:
FLIX_BRIDGE_DEBUG=1 npm run dev
๐งช Testing
# Basic functionality test
npm run smoke
# Test with debug output
FLIX_BRIDGE_DEBUG=1 npm run smoke
๐ Documentation
- - Requirements and installation
- - All configuration methods
- - MCP client setup and workflows
- - Complete tool documentation
- - Advanced multi-instance patterns
- - Common issues and solutions
- - Technical architecture for developers
๐ค Contributing
- Read the
- Follow engineering principles in
AGENTS.md
- Maintain TypeScript strict mode
- Add tests for new features
- Run
npm run smoke
before submitting
๐ License
MIT - see file for details
๐ Need Help?
- Check the
- Run diagnostics:
npm run smoke
- Enable debug mode:
FLIX_BRIDGE_DEBUG=1
- Review logs from your media management services
Made with โค๏ธ for the home media automation community