README
🚀 为Claude设计的Shaka Packager MCP服务器
这是一个专门为Claude设计的MCP服务器,其核心功能是控制Shaka Packager执行视频分析和包装任务,能有效解决在视频处理过程中路径转换、命令格式等问题,为用户提供便捷、高效的视频处理体验。
🚀 快速开始
配置环境变量
您可以在以下位置设置环境变量:
- Claude桌面配置文件(推荐用于
SHAKA_PACKAGER_PATH和VIDEO_PATH) - 系统环境变量
- 项目目录中的.env文件
示例.env文件:
SHAKA_PACKER_PATH=/usr/local/bin/packager
VIDEO_PATH=/Users/yourusername/Videos
LOG_LEVEL=DEBUG
使用提示
-
显示视频文件:
Please show me the files in my Videos directory -
导航至特定子目录:
Please show me the files in the Movies subdirectory -
获取目标视频的file:// URI路径
-
使用Shaka Packager工具处理视频:
Please analyze this video: file:///Users/username/Videos/my_video.mp4
✨ 主要特性
- 自动路径转换:智能处理Docker容器与主机环境之间的文件路径转换
- 错误处理与建议:提供有意义的错误消息和修复建议
- 命令格式辅助:帮助正确格式化Shaka Packager命令
- 文档集成:内置交互式帮助和全面的文档资源
- 健壮的路径处理:自动转换Docker容器与主机环境之间的文件路径
- 智能错误处理:提供有意义的错误信息和修复建议
- 命令语法辅助:帮助正确构建Shaka Packager命令
📦 安装指南
使用pip安装
# 克隆仓库
git clone https://github.com/coderjun/shaka-packager-mcp.git
cd shaka-packager-mcp
# 使用pip安装
pip install -e .
# 或使用uv进行安装
uv pip install -e .
💻 使用示例
基础用法
服务器提供了一系列实用工具,以下是部分工具的使用示例:
# 分析视频文件并输出详细流信息
analyze_video('file:///Users/username/Videos/my_video.mp4')
# 执行自定义的Shaka Packager命令
run_shaka_packager('your_custom_command')
# 获取可用命令选项和版本信息
get_shaka_options()
# 提供全面的文档资源
get_shaka_documentation()
高级用法
服务器内置了多种提问模板,可用于不同的视频处理场景,例如MP4转TS格式、VOD包装为HLS和DASH等。以下是使用提问模板进行视频分析的示例:
# 视频分析
# 向服务器发送提问模板请求
# 服务器会根据模板进行相应的视频处理操作
# 这里假设服务器有对应的处理逻辑
# 实际使用中可能需要根据服务器的API进行调用
# 示例代码仅为示意
video_analysis_request = '视频分析'
# 调用服务器接口发送请求
# response = server.send_request(video_analysis_request)
📚 详细文档
工具集
该服务器提供以下工具:
analyze_video:分析视频文件并输出详细流信息run_shaka_packager:执行自定义的Shaka Packager命令get_shaka_options:获取可用命令选项和版本信息get_shaka_documentation:提供全面的文档资源
提问模板
服务器内置以下提示模板:
- MP4转TS格式
- VOD包装为HLS和DASH
- 直播流包装
- 内容加密
- 广告插入准备
- 视频分析
- 命令格式提醒
- 错误解释指导
配置选项
服务器可通过环境变量进行配置:
| 属性 | 详情 |
|------|------|
| SHAKA_PACKER_PATH | 指定Shaka Packager可执行文件路径(推荐在Claude桌面配置) |
| VIDEO_PATH | 指定本地视频目录(用于路径转换) |
| DOCKER_PATH | Docker容器挂载路径(默认为"/projects/video-drop") |
| TEMP_DIR | 自定义临时文件夹 |
| LOG_LEVEL | 日志级别(DEBUG、INFO、WARNING、ERROR、CRITICAL) |
| COMMAND_TIMEOUT | 命令超时时间(秒,默认300) |
🔧 技术细节
Shaka Packager MCP服务器的主要组件包括:
shaka_packager_mcp.py:核心服务实现,包含MCP工具和提示tests/:测试套件,用于验证功能
该服务器设计上与官方的MCP文件系统服务器配合使用。
📄 许可证
本项目采用MIT许可证,详情请参阅LICENSE文件。
项目地址
获取帮助
如有任何问题或疑问:
- 首先查看此README中的故障排除部分
- 查阅Shaka Packager文档
- 使用内置的
get_shaka_documentation工具获取交互式帮助 - 在GitHub上提交问题
Scan to join WeChat group