MCP Web Cam Server について
MCP Web Cam Server は、MCP クライアントからウェブカメラを操作し、写真撮影や動画録画、設定変更を行うサーバーです。ライブプレビュー付きのカメラ選択機能と、カメラ・撮影画像・録画のリソースも備えています。
主な機能
- 01設定可能な写真撮影
- 02動画の録画と停止
- 03カメラの一覧表示と選択
- 04カメラ設定の取得と変更
- 05基本的な画像処理
活用シーン
- 01指定したサイズや形式で画像を撮影
- 02形式とコーデックを選んで動画を録画
- 03カメラのパラメーターを確認・調整
- 04利用可能なカメラと保存済みデータを確認
MCP 対応
写真撮影、録画、カメラ選択、設定管理などのウェブカメラ操作を MCP ツールとして提供します。カメラ、撮影画像、録画を一覧表示するリソースも備えています。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
MCP Web Cam Server
ウェブカメラを制御する Model Context Protocol(MCP)サーバーです。このサーバーを使用すると、LLM は MCP プロトコルを通じて写真の撮影、動画の録画、カメラ設定の管理を行えます。
MCP サーバーとしてのインストール
Claude Desktop App の場合
方法 1:npx を使用(推奨)
Claude Desktop の設定に追加します。
macOS の場合: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows の場合: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"webcam": {
"command": "npx",
"args": [
"-y",
"@kmizu/mcp-web-cam"
]
}
}
}
その後、Claude Desktop を再起動します。
方法 2:手動インストール
- 依存関係をインストールしてビルドします。
git clone https://github.com/mizushima/mcp-web-cam.git
cd mcp-web-cam
npm install
npm run build
- Claude Desktop の設定に追加します。
macOS の場合: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows の場合: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"webcam": {
"command": "node",
"args": ["/absolute/path/to/mcp-web-cam/dist/index.js"]
}
}
}
- Claude Desktop を再起動します。
その他の MCP クライアントの場合
サーバーは stdio 経由で通信するため、次のコマンドで実行できます。
node /path/to/mcp-web-cam/dist/index.js
機能
- 写真撮影:設定をカスタマイズして高画質の写真を撮影
- 動画録画:さまざまな形式やコーデックで動画を録画
- カメラ管理:利用可能なカメラの一覧表示と設定の調整
- 画像処理:基本的な画像編集機能
- クロスプラットフォーム:Linux、Windows、macOS に対応
インストール
グローバルインストール(MCP の外部で使用する場合)
npm install -g @kmizu/mcp-web-cam
ローカル開発
npm install
npm run build
使い方
MCP サーバーとして
このサーバーは、MCP に対応するすべてのクライアントで使用できます。
npm start
開発
npm run dev # Watch mode for development
npm run build # Build TypeScript
npm run typecheck # Type checking only
利用可能なツール
select_camera
ライブプレビューを見ながら、利用可能なカメラから選択するための最新のウェブ UI を開きます。
機能:
- 接続済みのすべてのカメラをライブプレビュー
- 利用可能な場合は WebRTC ベースのプレビュー
- 互換性のため、利用できない場合はスナップショットモードにフォールバック
- カメラの選択を保持
get_current_camera
現在選択されているカメラデバイスを取得します。
capture_photo
ウェブカメラで写真を撮影します。
パラメーター:
width(任意):画像の幅(ピクセル、320~3840)height(任意):画像の高さ(ピクセル、240~2160)quality(任意):画質(1~100)format(任意):画像形式('jpeg'、'png'、'bmp')return_type(任意):データの返却方法('location'、'buffer'、'base64')device(任意):カメラデバイス ID
start_recording
ウェブカメラからの動画録画を開始します。
パラメーター:
duration(任意):録画時間(秒、1~3600)fps(任意):フレームレート(1~60)format(任意):動画形式('mp4'、'avi'、'mkv')codec(任意):動画コーデック(例:'libx264'、'libx265')
stop_recording
現在の動画録画を停止します。
list_cameras
利用可能なカメラデバイスをすべて一覧表示します。
get_camera_settings
現在のカメラ設定を取得します。
パラメーター:
device(任意):カメラデバイス ID
set_camera_settings
明るさやコントラストなどのカメラ設定を調整します。
パラメーター:
device(任意):カメラデバイス IDbrightness(任意):明るさ(0~100)contrast(任意):コントラスト(0~100)saturation(任意):彩度(0~100)hue(任意):色相の調整(-180~180)gamma(任意):ガンマ補正(1~500)sharpness(任意):シャープネス(0~100)whiteBalance(任意):ホワイトバランス(ケルビン、2000~10000)exposure(任意):露出補正(-10~10)gain(任意):ゲイン(0~100)focus(任意):フォーカス(0~100、0=自動)
リソース
サーバーは次のリソースを提供します。
webcam://cameras:利用可能なカメラデバイスの一覧webcam://captures:撮影した写真の一覧webcam://recordings:録画した動画の一覧
依存関係
必須のシステム依存関係
Linux
# Ubuntu/Debian
sudo apt-get install v4l-utils ffmpeg
# CentOS/RHEL
sudo yum install v4l-utils ffmpeg
Windows
- FFmpeg(https://ffmpeg.org/ からダウンロード)
- Windows Media Foundation
macOS
brew install ffmpeg
ファイル構成
mcp-web-cam/
├── src/
│ ├── index.ts # Main MCP server
│ ├── webcam/
│ │ ├── controller.ts # Camera control logic
│ │ └── types.ts # TypeScript type definitions
│ ├── tools/ # MCP tool implementations
│ │ ├── capture.ts # Photo capture tool
│ │ ├── recording.ts # Video recording tools
│ │ └── camera.ts # Camera management tools
│ └── types/
│ └── node-webcam.d.ts # Type declarations
├── captures/ # Captured photos (auto-created)
├── recordings/ # Video recordings (auto-created)
└── dist/ # Compiled JavaScript
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。