GetScreen MCP服务器
一个轻量级的模型上下文协议(MCP)服务器,用于快速捕获所有可用监视器的屏幕截图,并自动压缩。
特性
- 多显示器支持:自动捕获所有连接的显示器
- WSL支持:通过PowerShell集成在Windows WSL中无缝工作
- 快速压缩:利用Sharp实现最佳JPEG压缩
- 简单集成:带可选参数的单个工具
- 轻量级:相关性最小,性能最高
- 交叉平台的:Linux、macOS和Windows(包括WSL)
新功能
增强WSL支持
WSL支持已通过自动检测和PowerShell集成得到改进。无论您使用 wsl 命令方法或更简单的基于节点的直接执行方法。
主要特点:
- 通过以下方式自动检测WSL
/proc/version环境检查 - 无缝集成PowerShell以捕获Windows主机显示
- 支持直接节点执行和WSL命令包装器
- WSL环境检测无需额外配置
工作原理: 在WSL中运行时,该工具会自动检测环境,并利用Windows主机上的PowerShell捕获屏幕截图。这种方法确保从Windows端访问所有显示信息,同时保持与基于WSL的工具的完全兼容性。
安装
git clone https://github.com/Kirchlive/getscreen_mcp.git
cd getscreen_mcp
npm install
npm run build配置
克劳德代码
将以下内容添加到您的Claude配置中:
macOS: ~/Users/USERNAME/.claude.json 视窗: C:\Users\USERNAME\.claude.json Linux/WSL: ~/home/USERNAME/.claude.json
{
"mcpServers": {
"getscreen": {
"command": "node",
"args": ["/ABSOLUT/PATH/TO/getscreen_mcp/build/index.js"]
}
}
}用法
屏幕截图工具
这 screenshot 该工具捕获所有可用的监视器并返回压缩图像。
参数 (全部可选):
quality(数字,1-100):JPEG质量。默认值:80maxWidth(数字):最大宽度(像素)。图像按比例调整大小。
例子:
Take a screenshotTake a screenshot with high quality (quality: 95)Take a screenshot and resize it to max. 1920px width (maxWidth: 1920)技术细节
平台检测
该工具会自动检测环境并选择最佳方法:
- WSL:通过在Windows主机上使用PowerShell
powershell.exe - Linux/macOS:用途
screenshot-desktop用于本地捕获
组件
- WSL捕捉:PowerShell系统。窗户。形式和系统。绘图
- 本地捕获:
screenshot-desktop适用于Linux/macOS - 压缩:
sharp用于快速图像处理和JPEG压缩 - 格式:图像以base64编码的JPEG格式返回
- 演出:并行捕获所有监视器以获得最大速度
WSL实施
在WSL环境中:
- 通过检测
/proc/version(检查“microsoft”或“WSL”) - PowerShell脚本在Windows主机上执行
- 所有监视器均通过以下方式捕获
System.Windows.Forms.Screen::AllScreens - 截图以PNG格式捕获,然后压缩为具有所需质量的JPEG
- Base64编码传输回WSL
许可证
麻省理工学院
