obs-mcp服务器
用于控制的MCP(模型上下文协议)服务器 OBS工作室 通过内置的obs websocket插件。让Claude控制您的场景、录制、流媒体、音频等。
需求
- OBS工作室 28或更高版本(内置obs websocket)
- Node.js 18或更高版本
OBS设置
- 开放式OBS工作室
- 首选 工具→ WebSocket服务器设置
- 检查 启用WebSocket服务器
- 设置密码(推荐)
- 注意端口(默认值:
4455)
安装
创建一个 .env 项目根目录中的文件:
OBS_WS_URL=ws://localhost:4455
OBS_WS_PASSWORD=your_password_here
Claude桌面配置
将以下内容添加到您的 claude_desktop_config.json:
{
"mcpServers": {
"obs": {
"command": "node",
"args": ["C:\\path\\to\\obs-mcp-server\\obs-mcp-server.js"]
}
}
}
或使用 npx (无需克隆):
{
"mcpServers": {
"obs": {
"command": "npx",
"args": ["-y", "obs-mcp-server"],
"env": {
"OBS_WS_PASSWORD": "your_password_here"
}
}
}
}
可用工具
状态和场景
| 工具 |
说明 |
get_status |
当前场景、流媒体状态、录制状态+时间码 |
list_scenes |
列出活动收藏中的所有场景 |
set_scene |
切换到命名场景 |
录制和流媒体
| 工具 |
说明 |
start_recording |
开始录制 |
stop_recording |
停止录制(返回输出文件路径) |
toggle_recording |
打开/关闭录制 |
start_streaming |
开始流媒体播放 |
stop_streaming |
停止流媒体播放 |
来源
| 工具 |
说明 |
list_sources |
列出场景中的所有源 |
set_source_visibility |
显示或隐藏源 |
音频
| 工具 |
说明 |
list_audio_inputs |
列出所有处于静音/音量状态的音频输入 |
set_mute |
将音频输入静音或取消静音 |
toggle_mute |
在音频输入上切换静音 |
set_volume |
设置音频输入的音量(0.0–1.0) |
画布
| 工具 |
说明 |
set_canvas_resolution |
设置基础/输出分辨率和FPS(每次采集的全局) |
场景管理
| 工具 |
说明 |
create_scene |
创建新的空场景 |
remove_scene |
删除场景 |
rename_scene |
重命名场景 |
场景集合
| 工具 |
说明 |
list_scene_collections |
列出所有收藏,显示活动 |
set_scene_collection |
切换到其他收藏 |
create_scene_collection |
创建新的场景集合 |
档案
| 工具 |
说明 |
list_profiles |
列出所有配置文件,显示活动状态 |
set_profile |
切换到其他配置文件 |
create_profile |
创建新配置文件 |
remove_profile |
删除个人资料 |
杂项
| 工具 |
说明 |
save_screenshot |
将当前输出的屏幕截图保存到磁盘 |
备注
- 画布分辨率 是一个全局OBS设置——它适用于当前集合中的所有场景。为不同的宽高比使用单独的场景集合(例如YouTube短片的16:9和9:16)。
- 音频输入类型 默认为Windows(
wasapi_*).在macOS上,更新 list_audio_inputs 要使用的处理程序 coreaudio_input_capture / coreaudio_output_capture.
许可证
麻省理工学院