README
🚀 屏幕监控MCP - 革命性的AI视觉服务器
屏幕监控MCP(ScreenMonitorMCP)是一款革命性的MCP(模型上下文协议)服务器,它能让Claude等AI助手具备实时屏幕监控、视觉分析和智能交互能力。本项目让AI以前所未有的方式“看见”、理解并与你的屏幕进行交互,赋予AI实时视觉和屏幕交互能力。
🚀 快速开始
为什么选择屏幕监控MCP?
将你的AI助手从单纯的文本交互升级为视觉交互的强大工具,它可以:
- 实时监控你的屏幕并检测重要变化
- 使用自然语言命令点击UI元素
- 从屏幕的任何部分提取文本
- 使用AI分析截图和视频
- 提供关于屏幕活动的智能见解
✨ 主要特性
智能监控系统
- start_smart_monitoring() - 启用可配置触发条件的智能监控
- get_monitoring_insights() - 基于AI的屏幕活动分析
- get_recent_events() - 检测到的屏幕变化历史
- stop_smart_monitoring() - 停止监控并保留分析见解
自然语言UI交互
- smart_click() - 使用如“保存按钮”这样的描述点击元素
- extract_text_from_screen() - 从屏幕区域进行OCR文本提取
- get_active_application() - 获取当前应用程序上下文
视觉分析工具
- capture_and_analyze() - 截图并进行AI分析
- record_and_analyze() - 录制视频并进行AI分析
- query_vision_about_current_view() - 向AI询问当前屏幕的相关问题
🆕 实时屏幕流
- start_screen_stream() - 启动经过性能优化的实时Base64屏幕流
- get_stream_frame() - 从活动流中获取最新帧
- get_stream_status() - 监控流的健康状况、性能和统计信息
- stop_screen_stream() - 停止流并清理资源
- list_active_streams() - 列出所有活动流及其状态
系统性能
- get_system_metrics() - 全面的系统健康仪表盘
- get_cache_stats() - 缓存性能统计信息
- optimize_image() - 高级图像优化
- simulate_input() - 模拟键盘和鼠标输入
📦 安装指南
选项1:从PyPI安装(推荐)
# 安装包
pip install screenmonitormcp
# 运行服务器
screenmonitormcp
# 或使用短别名
smcp
选项2:从源代码安装
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桌面 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)
可用工具(共26个)
| 工具类别 | 工具数量 | 说明 | | ---- | ---- | ---- | | 智能监控 | 6个 | 具有AI分析的实时屏幕监控 | | UI交互 | 2个 | 自然语言屏幕控制 | | 视觉分析 | 3个 | 基于AI的图像和视频分析 | | 🆕 实时流 | 5个 | 经过性能优化的Base64屏幕流 | | 系统性能 | 7个 | 性能监控和优化 | | 输入模拟 | 2个 | 键盘和鼠标自动化 | | 实用工具 | 1个 | 工具文档和列表 |
🔧 技术细节
- 21项革命性工具 - 全面的AI视觉功能
- 实时监控 - 具有智能触发的自适应FPS
- 多AI支持 - 支持OpenAI、OpenRouter和自定义端点
- 高级OCR - 集成Tesseract和EasyOCR
- 跨平台 - 支持Windows、macOS和Linux
- 智能缓存 - 性能优化
- 注重安全 - API密钥管理
愿景与使命
愿景:使AI助手能够“看见”并与视觉世界进行交互,打破基于文本的AI与现实世界界面之间的障碍。
使命:为AI与人的视觉交互提供基础技术,使AI助手在视觉任务和基于屏幕的工作流程中真正发挥作用。
贡献
我们欢迎对这个革命性项目的贡献:
- 报告错误和提出功能请求
- 代码贡献和改进
- 文档增强
详情请参阅 CONTRIBUTING.md。
📄 许可证
本项目采用MIT许可证。详情请参阅 LICENSE。
准备好让你的AI拥有真正的视觉能力了吗?
屏幕监控MCP将AI助手从单纯的文本交互转变为具有视觉智能的伙伴。
微信扫一扫