屏幕监控MCP(ScreenMonitorMCP)是一款革命性的MCP(模型上下文协议)服务器,它能让Claude等AI助手具备实时屏幕监控、视觉分析和智能交互能力。本项目让AI以前所未有的方式“看见”、理解并与你的屏幕进行交互,赋予AI实时视觉和屏幕交互能力。
将你的AI助手从单纯的文本交互升级为视觉交互的强大工具,它可以:
# 安装包
pip install screenmonitormcp
# 运行服务器
screenmonitormcp
# 或使用短别名
smcp
git clone https://github.com/inkbytefo/ScreenMonitorMCP.git
cd ScreenMonitorMCP
pip install -e .
在你的工作目录中创建一个 .env 文件:
# 复制示例配置
cp .env.example .env
# 使用你的OpenAI API密钥编辑.env文件
示例 .env 配置:
OPENAI_API_KEY=your_openai_api_key_here
OPENAI_BASE_URL=https://api.openai.com/v1
DEFAULT_OPENAI_MODEL=gpt-4-vision-preview
DEFAULT_MAX_TOKENS=1000
在你的Claude桌面 claude_desktop_config.json 中添加以下内容:
{
"mcpServers": {
"screenMonitorMCP": {
"command": "screenmonitormcp",
"args": []
}
}
}
使用自定义路径的替代方法:
{
"mcpServers": {
"screenMonitorMCP": {
"command": "python",
"args": [
"-m", "screenmonitormcp.main"
]
}
}
}
# 启动智能监控
await start_smart_monitoring(triggers=['significant_change', 'error_detected'])
# 自然语言UI交互
await smart_click('Save button')
await smart_click('Email input field')
# 向AI询问当前屏幕
await query_vision_about_current_view('What errors are visible on this page?')
# 从屏幕提取文本
await extract_text_from_screen()
# 🆕 实时屏幕流
stream_result = await start_screen_stream(
fps=5,
quality=70,
format="jpeg",
scale=0.5,
change_detection=True,
adaptive_quality=True
)
stream_id = stream_result['stream_id']
# 从流中获取最新帧
frame = await get_stream_frame(stream_id)
# frame['frame']['data'] 包含Base64编码的图像
# 监控流性能
status = await get_stream_status(stream_id)
print(f"FPS: {status['stream_info']['stats']['current_fps']}")
# 停止流
await stop_screen_stream(stream_id)
| 工具类别 | 工具数量 | 说明 |
|---|---|---|
| 智能监控 | 6个 | 具有AI分析的实时屏幕监控 |
| UI交互 | 2个 | 自然语言屏幕控制 |
| 视觉分析 | 3个 | 基于AI的图像和视频分析 |
| 🆕 实时流 | 5个 | 经过性能优化的Base64屏幕流 |
| 系统性能 | 7个 | 性能监控和优化 |
| 输入模拟 | 2个 | 键盘和鼠标自动化 |
| 实用工具 | 1个 | 工具文档和列表 |
愿景:使AI助手能够“看见”并与视觉世界进行交互,打破基于文本的AI与现实世界界面之间的障碍。
使命:为AI与人的视觉交互提供基础技术,使AI助手在视觉任务和基于屏幕的工作流程中真正发挥作用。
我们欢迎对这个革命性项目的贡献:
详情请参阅 CONTRIBUTING.md。
本项目采用MIT许可证。详情请参阅 LICENSE。
准备好让你的AI拥有真正的视觉能力了吗?
屏幕监控MCP将AI助手从单纯的文本交互转变为具有视觉智能的伙伴。