返回市场
开发工作室

开发工作室

作者:nihitgupta23 星标更新:2025-10-27

项目介绍

<div align="center"> <img src="assets/logo.png" alt="DevStudio MCP Logo" width="400"/>

DevStudio MCP: 生产级屏幕录制服务器

MCP 兼容 Python 3.11+ PyPI Claude Code 插件 生产就绪 6 工具活跃 10 工具在路线图中 AGPL 许可证

生产级MCP服务器用于屏幕录制和演示自动化 - 第一阶段发布,包含6个专业录制工具,支持多显示器、音频视频混合以及无缝集成AI驱动的演示工作流程。

<!-- PyPI 元数据 -->

mcp-name: devstudio

</div>

🚀 快速开始

安装

方法1:uvx(推荐 - 零安装)

# 直接运行无需安装
uvx devstudio-mcp

非常适合AI代理和快速测试 - 无需设置!

方法2:通过PyPI安装

# 从PyPI安装
pip install devstudio-mcp

# 运行服务器
devstudio-mcp
# 或作为模块:python -m devstudio_mcp.server

方法3:开发环境安装

# 克隆仓库
git clone https://github.com/nihitgupta2/devstudio.git
cd devstudio

# 使用uv安装(推荐)
uv sync

# 或使用pip
pip install -e .

# 运行服务器
devstudio-mcp

🎯 Claude Code 插件安装

一键安装(推荐给Claude Code用户):

/plugin marketplace add nihitgupta2/devstudio

这会自动:

  • ✅ 在Claude Code中配置DevStudio MCP
  • ✅ 通过uvx(零安装方法)进行安装
  • ✅ 立即启用所有6个录制工具

手动配置(替代方案):

添加到你的Claude Code MCP设置:

{
  "mcpServers": {
    "devstudio": {
      "command": "uvx",
      "args": ["devstudio-mcp"]
    }
  }
}

注意:FFmpeg已与PyAV捆绑在一起 - 不需要单独安装!该包包含了专业视频编码所需的一切。

🎯 第一阶段功能

📹 专业录制工具(6个活跃工具)

  • 多显示器录制:捕捉多显示器设置中的任何屏幕
  • 音频录制:专业音频录制,实时处理
  • 音频/视频混合:自动组合分离的流为单个MP4文件
  • 截图工具:带有元数据的单次屏幕捕获
  • 会话管理:跟踪并管理多个录制会话
  • 终端监控:命令历史记录和输出捕获

📊 工具概览

工具描述状态
start_recording开始屏幕/音频/终端录制会话✅ 活跃
stop_recording停止录制并获取输出文件✅ 活跃
capture_screen捕获单张屏幕快照✅ 活跃
list_active_sessions列出所有活跃的录制会话✅ 活跃
mux_audio_video将独立的音频和视频文件合并为一个MP4✅ 活跃
get_available_screens获取关于所有显示器的信息✅ 活跃

🛠️ MCP 工具参考

📹 录制工具

start_recording

启动新的录制会话,包括屏幕、音频和/或终端捕获。

{
    "include_screen": true,
    "include_audio": true,
    "include_terminal": false,
    "output_format": "mp4",
    "screen_id": 1,
    "auto_mux": true,
    "cleanup_source_files": false
}
  • 返回:会话ID、状态、输出目录、录制类型
  • 用例:开始捕获屏幕演示、教程或演讲
  • 特性
    • 多显示器支持(通过screen_id选择特定屏幕)
    • 自动混合:自动将音频+视频合并为单个MP4(默认:true)
    • 清理:在混合后删除源文件(默认:false)
    • 音频仅:设置include_screen=false, include_audio=true

stop_recording

停止活动的录制会话并检索输出文件路径。

{
    "session_id": "uuid-of-session"
}
  • 返回:屏幕/音频/终端/组合文件路径,会话时长
  • 用例:结束录制并获取文件位置
  • 注意:当auto_mux=true且同时录制了屏幕+音频时,返回combined.mp4文件

capture_screen

捕获任意显示器的单张屏幕快照

{
    "screen_id": 1
}
  • 返回:屏幕快照文件路径、尺寸、格式、大小
  • 用例:快速捕获以供文档或错误报告使用
  • 特性:通过screen_id参数支持多显示器

list_active_sessions

列出所有活跃的录制会话及其状态。

  • 返回:活跃会话列表,包括ID、开始时间、类型
  • 用例:监控正在进行的录制或管理多个会话

mux_audio_video

将独立的音频和视频文件合并为一个MP4。

{
    "video_path": "/path/to/video.mp4",
    "audio_path": "/path/to/audio.wav",
    "output_path": "/path/to/output.mp4"
}
  • 返回:混合文件路径、输入文件、大小
  • 用例:合并分别录制的流或修复同步问题
  • 注意:使用PyAV进行专业H.264/AAC编码

get_available_screens

获取关于所有可用显示器及其属性的信息。

  • 返回:显示器列表,包括ID、分辨率、位置、比例
  • 用例:在多屏设置中选择特定显示器进行录制

🗺️ 路线图 - 开发阶段

✅ 第一阶段:录制基础设施(当前 - v1.0.0)

状态:生产就绪 发布时间:2024年第四季度

  • 6个生产级录制工具
  • ✅ 支持多显示器选择
  • ✅ 音频/视频混合(H.264 + AAC)
  • ✅ 专业屏幕捕获
  • ✅ 会话管理
  • ✅ PyAV集成(捆绑FFmpeg)

🚧 第二阶段:AI驱动处理(正在开发中)

目标:2025年第一季度 Git分支archive/phase-2-3-ai-features

特性

  • 🔜 使用OpenAI Whisper进行音频转录
  • 🔜 多提供商AI(OpenAI、Anthropic、Google)
  • 🔜 内容分析,带主题检测
  • 🔜 从录制中提取代码
  • 🔜 自动章节检测,带时间戳

工具(3个):

  • transcribe_audio - 将音频转换为文本,带时间戳
  • analyze_content - 提取主题、术语和结构
  • extract_code - 识别并分类代码片段

📋 第三阶段:内容生成(计划中)

目标:2025年第二季度

特性

  • 📋 从录制中生成AI博客文章
  • 📋 自动生成文档
  • 📋 课程大纲生成
  • 📋 多格式内容导出(Markdown、HTML、PDF)
  • 📋 带时间戳的YouTube描述

工具(4个):

  • generate_blog_post - 创建技术博客文章
  • create_documentation - 生成API/功能文档
  • generate_summary - 可配置的内容摘要
  • create_course_outline - 教育内容结构

💎 第四阶段:货币化及团队(未来)

目标:2025年第三季度

特性

  • 💎 分层功能访问(免费、专业、团队、企业)
  • 💎 使用跟踪和分析
  • 💎 许可证管理系统
  • 💎 团队协作功能
  • 💎 自定义品牌选项

工具(3个):

  • get_license_info - 检查订阅状态
  • check_feature_access - 验证功能可用性
  • get_usage_stats - 监控使用情况和配额

🔮 愿景:自主演示录制平台

DevStudio MCP正演变成一个结合专业录制基础设施与AI驱动浏览器自动化的全面自主演示录制平台

🌐 未来:AI驱动演示创建

想象一下:一个能够自主创建完整产品演示的AI代理,通过控制浏览器、记录每次交互,并生成文档 - 所有这些都通过MCP协调完成。

🤖 AWS Nova Act 集成

自主浏览器控制以实现端到端演示创建

DevStudio MCP将集成AWS Nova Act代理,以实现完全自动化的演示工作流程:

graph LR
    A[MCP: 开始录制] --> B[Nova Act: 浏览器自动化]
    B --> C[自主操作]
    C --> D[MCP: 停止录制]
    D --> E[完整的演示视频]

示例工作流程:电子商务演示

# 通过MCP开始录制
mcp_client.call_tool("start_recording", {
    "include_screen": True,
    "include_audio": True,
    "auto_mux": True
})

# 启动Nova Act进行浏览器自动化
from nova_act import NovaAct
nova = NovaAct(api_key="key")

# 代理自主执行完整的工作流程
nova.act("访问amazon.com,搜索无线耳机,\
          按价格低于$100筛选,将评分最高的加入购物车,\
          前往结账页面")

# 停止录制
result = mcp_client.call_tool("stop_recording", {
    "session_id": session_id
})

# 结果:专业录制的电子商务演示
print(f"演示录制完成:{result['files']['combined']}")

🎯 使用案例

1. SaaS产品演示

自动记录多步骤用户旅程:

  • 账户创建和引导
  • 功能探索工作流程
  • 集成设置过程
  • 管理面板操作

2. 教程创建

捕获复杂的技工工作流程:

  • 开发环境设置
  • API集成示例
  • 调试会话
  • 代码重构演示

3. 质量保证与测试

录制带有浏览器交互的测试场景:

  • 自动测试执行捕获
  • 错误重现录制
  • 回归测试文档
  • 用户验收测试(UAT)视频

4. 客户入门

创建个性化的演示内容:

  • 产品概述
  • 功能教程
  • 最佳实践指南
  • 故障排除演示

🔗 MCP编排架构

┌─────────────────────────────────────────────┐
│  DevStudio MCP 录制服务器(第一阶段)     │
│  • start_recording                          │
│  • capture_screen                           │
│  • stop_recording                           │
│  • 多显示器支持                            │
└──────────────┬──────────────────────────────┘
               │ 编排
               ↓
┌─────────────────────────────────────────────┐
│  AWS Nova Act 浏览器自动化                  │
│  • 自主导航网站                             │
│  • 使用自然语言填写表单                     │
│  • 智能点击和互动                           │
│  • 多步骤工作流程执行                       │
└──────────────┬──────────────────────────────┘
               │
               ↓
┌─────────────────────────────────────────────┐
│  AI 处理流水线(第二阶段-第三阶段)        │
│  • 转录叙述                                 │
│  • 生成文档                                 │
│  • 创建博客文章                             │
│  • 提取代码片段                             │
└─────────────────────────────────────────────┘
               │
               ↓ 完整演示包

🚀 用户定义环境集成

超越浏览器 - 在任何环境中录制演示:

  • 本地应用程序:桌面软件演示
  • 云平台:AWS控制台、Azure门户、GCP
  • 开发工具:VS Code、IDE、终端
  • 定制系统:内部工具、专有软件

Nova Act代理可以配置为与几乎任何基于Web的界面互动,使DevStudio MCP成为AI驱动演示创建的通用录制基础设施

🌟 为什么这很重要

传统的演示创建:

  • ⏰ 手动录制和编辑数小时
  • 🎬 多次尝试才能正确
  • 📝 手动编写文档
  • 🔄 需要不断更新

AI驱动的DevStudio MCP + Nova Act:

  • 全自动端到端 - 从浏览器到视频
  • 🎯 一致的质量 - 每次完美执行
  • 📚 自动文档 - AI生成内容
  • 🔁 一键更新 - 即刻重新录制整个演示

📖 使用示例

完整录制工作流程

# 1. 检查可用显示器
screens = await get_available_screens()
# 返回:[{"id": 0, "width": 1920, "height": 1080, ...}, ...]

# 2. 在第二个显示器上开始录制教程
session = await start_recording({
    "include_screen": True,
    "include_audio": True,
    "screen_id": 1,  # 第二个显示器
    "output_format": "mp4",
    "auto_mux": True
})
# 返回:{"session_id": "...", "status": "录制中"}

# 3. 录制你的演示...

# 4. 在录制期间快速截屏
screenshot = await capture_screen({"screen_id": 1})
# 返回:{"file_path": "/path/to/screenshot.png", ...}

# 5. 停止录制并获取文件
result = await stop_recording({
    "session_id": session["session_id"]
})
# 返回:{"files": {"combined": "/path/to/combined.mp4"}, "duration": 120.5}

多显示器录制

# 获取所有可用显示器
screens = await get_available_screens()
print(f"找到 {len(screens)} 个显示器")

# 录制特定显示器
session = await start_recording({
    "include_screen": True,
    "screen_id": 2,  # 第三个显示器
    "include_audio": True
})

音频/视频混合

# 分别录制音频和视频
session = await start_recording({
    "include_screen": True,
    "include_audio": True,
    "auto_mux": False  # 不自动组合
})

result = await stop_recording({"session_id": session["session_id"]})

# 后期手动混合,使用自定义设置
muxed = await mux_audio_video({
    "video_path": result["files"]["screen"],
    "audio_path": result["files"]["audio"],
    "output_path": "/custom/path/final_demo.mp4"
})

🔧 配置

环境变量

变量描述是否必需默认值
RECORDING_OUTPUT_DIR录制输出目录~/devstudio/recordings
MAX_RECORDING_DURATION最大录制长度(秒)3600(1小时)
RECORDING_QUALITY质量设置(低、中、高)
RECORDING_FPS每秒帧数30
LOG_LEVEL日志级别(DEBUG、INFO、WARNING、ERROR)INFO

默认录制设置

# 默认配置
recording:
  output_dir: ~/devstudio/recordings
  max_duration: 3600  # 1小时
  quality: 中
  fps: 30
  audio_enabled: True
  auto_mux: True

🧪 测试

# 运行所有测试
uv run pytest

# 运行带覆盖率的测试
uv run pytest --cov=devstudio_mcp

# 特别测试录制工具
uv run pytest tests/test_recording.py -v

🏗️ 架构

devstudio_mcp/
├── server.py              # 主MCP服务器(第一阶段