Mac-Camera-MCP
by McpService
README.md
# Mac-Camera-MCP
Mac-Camera-MCP (Model Context Protocol) 服务,提供拍照和录像功能。
## 功能特性
- 📷 **拍照功能** - 使用摄像头拍摄照片并保存为 JPG 格式
- 🎥 **录像功能** - 录制视频并保存为 MP4 格式
## 系统要求
- Node.js >= 18.0.0
- macOS 系统
- 摄像头设备
## 依赖安装
### 安装系统依赖
推荐使用 Homebrew 安装以下工具:
```bash
# 安装 imagesnap(用于快速拍照)
brew install imagesnap
# 安装 ffmpeg(用于拍照和录像)
brew install ffmpeg
```
> **注意**: 至少需要安装其中一个工具才能使用拍照功能。录像功能需要 ffmpeg。
## 使用方法
```json
{
"mcpServers": {
"Mac-Camera-MCP": {
"command": "npx",
"args": [
"-y",
"mac-camera-mcp"
]
}
}
}
```
### 可用工具
#### 1. take_photo - 拍照
```json
{
"name": "take_photo",
"arguments": {
"outputDir": "./output",
"filename": "my-photo.jpg",
"cameraIndex": 0,
"width": 1920,
"height": 1080
}
}
```
**参数说明**:
- `outputDir`: 输出目录路径(可选,默认 ./output)
- `filename`: 输出文件名(可选,默认使用时间戳)
- `cameraIndex`: 摄像头索引(可选,默认 0)
- `width`: 图片宽度(可选,默认 1920)
- `height`: 图片高度(可选,默认 1080)
**返回示例**:
```json
{
"success": true,
"path": "/path/to/output/2024-01-01T12-00-00.jpg",
"filename": "2024-01-01T12-00-00.jpg",
"message": "拍照成功",
"method": "imagesnap"
}
```
#### 2. record_video - 录像
```json
{
"name": "record_video",
"arguments": {
"outputDir": "./output",
"filename": "my-video.mp4",
"cameraIndex": 0,
"duration": 10,
"fps": 30,
"quality": "medium"
}
}
```
**参数说明**:
- `outputDir`: 输出目录路径(可选,默认 ./output)
- `filename`: 输出文件名(可选,默认使用时间戳)
- `cameraIndex`: 摄像头索引(可选,默认 0)
- `duration`: 录制时长(秒),0 表示需要外部控制停止
- `fps`: 帧率(可选,默认 30)
- `quality`: 视频质量预设(ultrafast/fast/medium/slow,默认 medium)
**返回示例**:
```json
{
"success": true,
"path": "/path/to/output/2024-01-01T12-00-00.mp4",
"filename": "2024-01-01T12-00-00.mp4",
"message": "录制 10 秒视频成功",
"duration": 10,
"method": "ffmpeg"
}
```
## 权限说明
在 macOS 上首次使用摄像头时,系统会弹出权限请求对话框。请确保:
1. 允许终端/Node.js 访问摄像头
2. 在「系统设置」>「隐私与安全性」>「相机」中检查权限
## 故障排除
### 问题:找不到摄像头
**解决方案**:
1. 运行 `list_cameras` 工具检查可用摄像头
2. 确保已授予摄像头权限
3. 检查是否有其他应用正在使用摄像头
### 问题:拍照/录像失败
**解决方案**:
1. 运行 `check_dependencies` 检查依赖是否已安装
2. 确保 imagesnap 或 ffmpeg 已正确安装
3. 检查输出目录是否有写入权限
### 问题:录像文件损坏
**解决方案**:
1. 确保录制时长足够长(至少 1 秒)
2. 尝试降低视频质量预设
3. 检查磁盘空间是否充足
## 许可证
MIT License
This server cannot be deployed
Maintenance
ActivityInactive
ResponsivenessNo issues