项目简介
OBS MCP Server 是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在通过 MCP 协议为 LLM 客户端提供控制 OBS Studio 的能力。它将 OBS Studio 的多种操作封装成易于调用的工具 (Tools),使得 LLM 应用可以通过标准化的 MCP 接口,安全、可扩展地控制 OBS Studio,实现例如自动化直播导播、虚拟内容制作等高级应用。
主要功能点
- 连接 OBS Studio: 通过 WebSocket 协议连接到正在运行的 OBS Studio 实例。
- 工具化控制: 提供一系列预定义的工具 (Tools),用于控制 OBS Studio 的各项功能,包括:
- 通用操作: 获取版本信息、统计数据、触发热键等。
- 场景管理: 列出、切换、创建、删除场景。
- 来源控制: 管理来源,包括获取截图、管理滤镜等。
- 场景项操作: 控制场景中元素的位置、可见性等。
- 推流和录制: 启动、停止推流和录制,控制回放缓冲区。
- 转场特效: 设置和触发转场效果。
安装步骤
- 安装 Python 包: 确保你的系统已安装 Python 3.10 或更高版本。打开终端,运行以下命令安装 'obs-mcp' 包:
pip install obs-mcp - 配置 OBS WebSocket 服务:
- 启动 OBS Studio。
- 点击菜单栏的 "工具(Tools)" -> "WebSocket 服务设置(WebSocket Server Settings)"。
- 确保 "启用 WebSocket 服务(Enable WebSocket server)" 选项被勾选。
- 设置一个 WebSocket 服务密码,并记下此密码。
- 设置环境变量: 在运行 OBS MCP 服务器之前,需要设置 'OBS_WS_PASSWORD' 环境变量,将其值设置为你在 OBS WebSocket 服务设置中配置的密码。例如,在终端中执行:
将 '"your_websocket_password"' 替换为你实际设置的密码。export OBS_WS_PASSWORD="your_websocket_password"
服务器配置
MCP 客户端需要配置以下信息才能连接到 OBS MCP 服务器。这是一个 JSON 格式的配置示例,你需要将其提供给你的 MCP 客户端:
{ "serverName": "obs-mcp-server", // 服务器名称,可以自定义 "command": "python", // 启动服务器的命令 "args": ["-m", "obs_mcp"] // 启动服务器命令的参数,这里表示运行 obs_mcp 模块 }
配置参数注释:
- 'serverName': MCP 服务器的名称,客户端用以标识连接,可以自定义设置,例如 "obs-mcp-server"。
- 'command': 运行服务器程序的可执行命令,这里使用 'python',假设 python 命令在系统环境变量 PATH 中。
- 'args': 传递给 'command' 的参数列表。 '["-m", "obs_mcp"]' 表示以模块方式运行 'obs_mcp',这是启动服务器的主要方式。
注意: MCP 客户端需要能够执行 'python -m obs_mcp' 命令来启动服务器进程。请确保 Python 环境配置正确,并且 'obs-mcp' 包已成功安装。
基本使用方法
- 启动 OBS Studio 并确保 WebSocket 服务已启用且密码已配置。
- 设置 'OBS_WS_PASSWORD' 环境变量 并设置为你在 OBS 中设置的 WebSocket 密码。
- 启动 OBS MCP 服务器: 在终端中运行以下命令启动服务器:
或直接运行 'main.py' 文件(如果你直接下载了仓库代码):python -m obs_mcppython main.py - 配置并连接 MCP 客户端: 在你的 MCP 客户端中,根据 "服务器配置" 章节的示例,配置服务器连接信息。客户端启动后,应能自动连接到 OBS MCP 服务器。
- 使用 MCP 客户端调用工具: 通过 MCP 客户端,你可以调用服务器提供的各种工具 (Tools) 来控制 OBS Studio。例如,调用 'get_scene_list' 工具可以获取当前 OBS Studio 中的场景列表。具体的工具列表和使用方法,请参考仓库中 'obs_mcp' 目录下各个模块(如 'general.py', 'scenes.py' 等)的代码和文档注释。
信息
分类
桌面与硬件