icecast-mcp
MCP server for analyzing and optimizing Icecast streaming server configurations.
Features • Installation • Usage • Tools • Docker
Overview
A Model Context Protocol (MCP) server for analyzing Icecast streaming server configurations. Provides automated security audits, performance recommendations, and capacity planning for internet radio stations and streaming infrastructure.
Features:
Security auditing (authentication, credentials, access control)
Performance analysis (limits, buffers, threading)
Capacity planning based on listener counts
Best practice recommendations for different deployment sizes
Features
Configuration Analysis
Parse and validate Icecast XML configurations
Detect security issues (default credentials, missing authentication)
Identify performance bottlenecks (buffer sizes, thread pools, limits)
Check reliability settings (timeouts, fallback mounts)
Validate proxy configurations (X-Forwarded-For, hostname)
Best Practice Recommendations
Tailored advice for small, medium, and large deployments
Capacity planning based on expected listener counts
Security hardening guidelines
Performance tuning recommendations
What It Checks
Category | Checks |
Security | Authentication config, default credentials, relay passwords, admin security |
Performance | Client limits, buffer sizes (queue/burst), thread pools, log verbosity |
Capacity | Listener count vs. limits, resource allocation, scaling recommendations |
Reliability | Mount points, fallback configuration, timeout settings |
Operations | Hostname setup, proxy config, logging, log rotation |
Installation
From Source
Using Docker
Via npm (coming soon)
Usage
With Claude Desktop
Add to your Claude Desktop configuration file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json
Or using Docker:
With MCP Inspector
Test the server locally:
With Other MCP Clients
The server communicates over stdio and follows the MCP specification. Compatible with any MCP client including Claude Desktop.
Tools
analyze_icecast_config
Analyze an Icecast XML configuration file and receive detailed recommendations.
Input Schema:
Parameter | Type | Required | Default | Description |
| string | Yes | - | Absolute path to Icecast XML config |
| number | No | 100 | Expected concurrent listeners |
Example Usage:
Output Format:
get_icecast_best_practices
Get deployment-specific best practices and configuration recommendations.
Input Schema:
Parameter | Type | Required | Options | Description |
| string | Yes |
,
,
| Deployment size |
Use Case Definitions:
small: < 50 concurrent listeners
medium: 50-500 concurrent listeners
large: 500+ concurrent listeners
Example Usage:
Output: Comprehensive guide covering limits, security, mount points, performance, and reliability for your deployment size.
Docker
Building
Running with Volume Mounts
Docker Compose Example
Development
Example Usage
A typical workflow:
Install and configure icecast-mcp
Ask Claude: "Analyze my Icecast config at
/etc/icecast2/icecast.xmlfor 200 listeners"Get specific recommendations:
Optimize client limits for your traffic
Add relay password configuration
Configure fallback mount points
Enable log archiving
Architecture
Contributing
Contributions welcome! Areas for improvement:
Additional analysis rules
Support for more Icecast features
Performance metrics integration
Live server monitoring
Configuration generation
License
MIT License - see LICENSE file for details.
Acknowledgments
Built with @modelcontextprotocol/sdk
This server cannot be installed