VLC MCP Server

VLC MCP Server

site icon
2025.04.16 1
Python视频播放远程控制娱乐功能
VLC MCP Server 是一个基于 Model Contex Protocol (MCP) 的服务,用于通过 VLC 播放和控制电影。它允许用户通过信号消息远程控制电影播放,并利用 Anthropic API 的 claude-haiku 模型对视频文件夹中的视频进行摘要。
View on GitHub

Overview

基本能力

产品定位

VLC MCP Server 是一个用于远程控制 VLC 播放器的服务,适用于家庭娱乐和多媒体播放场景。

核心功能

  1. 通过 MCP 协议远程控制 VLC 播放器。
  2. 使用 Anthropic API 对视频文件夹中的视频进行摘要。
  3. 支持通过 HTTP 接口控制 VLC。
  4. 可以作为系统服务运行,确保自动启动和故障恢复。

适用场景

  1. 家庭影院系统:通过远程控制播放电影。
  2. 多媒体展示:在演示或展览中远程控制视频播放。
  3. 自动化视频播放:与其他自动化工具集成,实现自动化视频播放。

工具列表

  1. VLC:用于视频播放和控制。
  2. mediainfo:用于获取视频文件信息。
  3. uv:用于构建和运行 Python 项目。
  4. mcp-client-for-testing:用于测试服务器工具。

常见问题解答

  1. 如何设置 VLC HTTP 服务器?
  2. 使用命令 vlc --extraintf=http --http-host=localhost --http-port=8081 --http-password=your_password 启动 VLC HTTP 服务器。
  3. 如何作为系统服务运行?
  4. 参考文档中的 Systemd 服务设置步骤。
  5. 如何测试服务器工具?
  6. 使用 mcp-client-for-testing 工具进行测试。

使用教程

使用依赖

  1. 安装 VLC 和 mediainfo: bash sudo apt-get install vlc mediainfo
  2. 安装 uv: bash curl -LsSf https://astral.sh/uv/install.sh | sh

安装教程

  1. 启动 VLC HTTP 服务器: bash export DISPLAY=:0 vlc --extraintf=http --http-host=localhost --http-port=8081 --http-password=your_password
  2. 将服务器添加到 MCP 客户端配置文件中: json { "name": "vlc-mcp-server", "command": "uvx", "args": [ "vlc-mcp-server" ], "env": { "ANTHROPIC_API_KEY": "your-key", "ROOT_VIDEO_FOLDER": "path/to/your/video/folder", "VLC_HTTP_HOST": "localhost", "VLC_HTTP_PORT": "8081", "VLC_HTTP_PASSWORD": "your_password" } }

调试方式

  1. 测试服务器工具: bash uvx mcp-client-for-testing \ --config ' [ "the json config from above" ] ' \ --tool_call '{"name": "show_video", "arguments": {"video_title": "David Lynch - Dune", "subtitle_language_code": "en"}}'
  2. 检查服务状态和日志: bash systemctl --user status vlc-http.service journalctl --user -u vlc-http.service -f

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。