冰铸mcp
  
MCP服务器,用于分析和优化Icecast流媒体服务器配置。
______________________________________________________________________
概述
用于分析Icecast流媒体服务器配置的模型上下文协议(MCP)服务器。为互联网广播电台和流媒体基础设施提供自动安全审计、性能建议和容量规划。
特征:
- 安全审计(身份验证、凭据、访问控制)
- 性能分析(限制、缓冲区、线程)
- 基于听众数量的容量规划
- 针对不同部署规模的最佳实践建议
特性
配置分析
- 解析并验证Icecast XML配置
- 检测安全问题(默认凭据、缺少身份验证)
- 识别性能瓶颈(缓冲区大小、线程池、限制)
- 检查可靠性设置(超时、回退挂载)
- 验证代理配置(X-Forwarded-For、主机名)
最佳实践建议
- 为小型、中型和大型部署提供量身定制的建议
- 基于预期听众数量的容量规划
- 安全加固指南
- 性能调优建议
它检查什么
| 类别 | 检查 |
|---|---|
| 安全 | 身份验证配置、默认凭据、中继密码、管理员安全 |
| 演出 | 客户端限制、缓冲区大小(队列/突发)、线程池、日志冗余度 |
| 容量 | 侦听器计数与限制、资源分配、扩展建议 |
| 可靠性 | 装载点、回退配置、超时设置 |
| 运营 | 主机名设置、代理配置、日志记录、日志轮换 |
安装
来源
git clone https://github.com/splinesreticulating/icecast-mcp.git
cd icecast-mcp
npm install
npm run build使用Docker
docker build -t icecast-mcp .通过npm(即将推出)
npm install -g icecast-mcp用法
使用克劳德桌面
添加到您的Claude Desktop配置文件中:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json 视窗: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"icecast": {
"command": "node",
"args": ["/absolute/path/to/icecast-mcp/build/index.js"]
}
}
}或者使用Docker:
{
"mcpServers": {
"icecast": {
"command": "docker",
"args": ["run", "-i", "--rm", "-v", "/path/to/your/configs:/configs:ro", "icecast-mcp"]
}
}
}与MCP检查员一起
在本地测试服务器:
npm run build
npm run inspector与其他MCP客户端
服务器通过stdio进行通信,并遵循MCP规范。与任何MCP客户端兼容,包括 克劳德桌面版.
工具
analyze_icecast_config
分析Icecast XML配置文件并接收详细建议。
输入架构:
{
"configPath": "/path/to/icecast.xml",
"expectedListeners": 200
}| 参数 | 类型 | 必填 | 默认 | 说明 |
|---|---|---|---|---|
configPath | string | 是 | - | Icecast XML配置的绝对路径 |
expectedListeners | number | 否 | 100 | 预期并发侦听器 |
示例用法:
Ask Claude: "Analyze my Icecast config at /etc/icecast2/icecast.xml for 500 expected listeners"输出格式:
# Icecast Configuration Analysis
Analyzing: /etc/icecast2/icecast.xml
Expected listeners: 500
## CRITICAL ISSUES
### Security: No authentication configured
Configure source-password and admin-password to secure your stream.
## WARNINGS
### Capacity: Client limit is quite low
Client limit is 50. This may cause connection rejections during peak times.
Current: 50
Recommended: 128
## INFORMATION
### Configuration: X-Forwarded-For is enabled
Good! This is correct when running behind a reverse proxy like Caddy.get_icecast_best_practices
获取特定于部署的最佳实践和配置建议。
输入架构:
{
"useCase": "medium"
}| 参数 | 类型 | 必填 | 选项 | 说明 |
|---|---|---|---|---|
useCase | string | 是 | small, medium, large | 部署规模 |
用例定义:
- 小:\<50个并发听众
- 中等:50-500个并发听众
- 大的:500+并发听众
示例用法:
Ask Claude: "What are the best practices for a medium-sized Icecast deployment?"输出:全面的指南,涵盖部署规模的限制、安全性、装载点、性能和可靠性。
码头工人
建筑
docker build -t icecast-mcp .使用卷装载运行
docker run -i --rm \
-v /path/to/your/icecast/config:/config:ro \
icecast-mcpDocker编写示例
version: '3.8'
services:
icecast-mcp:
build: .
volumes:
- ./ops/icecast:/config:ro
stdin_open: true
tty: true发展
# Install dependencies
npm install
# Run in development mode (hot reload)
npm run dev
# Build TypeScript
npm run build
# Test with MCP Inspector
npm run inspector
# Run tests (if available)
npm test示例用法
典型的工作流程:
- 安装和配置icecast mcp
- 问Claude:“分析我的Icecast配置
/etc/icecast2/icecast.xml200名听众” - 获取具体建议:
- 为您的流量优化客户端限制 - 添加中继密码配置 - 配置回退装载点 - 启用日志归档
建筑
┌─────────────────┐
│ MCP Client │ (Claude Desktop, etc.)
│ (AI Assistant) │
└────────┬────────┘
│ stdio
│
┌────────▼────────┐
│ icecast-mcp │
│ MCP Server │
├─────────────────┤
│ • XML Parser │
│ • Analyzer │
│ • Validator │
│ • Recommender │
└────────┬────────┘
│
▼
icecast.xml贡献
欢迎投稿!需要改进的地方:
- 附加分析规则
- 支持更多Icecast功能
- 绩效指标集成
- 实时服务器监控
- 配置生成
许可证
MIT许可证-请参阅 许可证 文件以获取详细信息。
致谢
- 建于 @模型上下文协议/sdk
______________________________________________________________________
