farshid-mcp-imageProcessing について
farshid-mcp-imageProcessing は、VS Code Copilot Agent Mode や他の MCP クライアント向けの OpenCV ベースの MCP サーバーです。ウェブカメラ撮影、画像操作、検出、動画処理のツールを提供します。
主な機能
- 01ウェブカメラ撮影と録画
- 02画像変換と幾何変換
- 03色、フィルター、エッジ処理
- 04輪郭検出と特徴点マッチング
- 05顔、目、人体、QR コード検出
- 06動画情報とフレーム抽出
活用シーン
- 01ウェブカメラ画像の撮影とリサイズ
- 02画像へのフィルター適用やエッジ検出
- 03画像から顔や QR コードを検出
- 04動画からフレームを抽出
MCP 対応
OpenCV による画像・動画処理機能をツールとして MCP クライアントに公開します。サーバーは stdio で通信します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
farshid-mcp-imageProcessing
VS Code Copilot Agent Mode(または任意の MCP クライアント)向けの包括的な OpenCV 画像処理 MCP サーバーです。ウェブカメラのキャプチャ、画像の入出力、変換、色処理、フィルタリング、エッジ検出、しきい値処理、モルフォロジー、輪郭/図形、特徴量マッチング、オブジェクト検出(顔/目/人体/QR)、描画、画像演算、テンプレートマッチング、動画処理にわたる約 40 個のツールを提供します。
- PyPI:
farshid-mcp-imageProcessing - MCP Registry:
io.github.pirahansiah/farshid-mcp-imageProcessing - Python: 3.14+
- OS: 最新の Windows 11、最新の macOS、最新の主要な Linux(Ubuntu 24.04+/Fedora 41+)
インストール(PyPI)
pip install farshid-mcp-imageProcessing
farshid-mcp-imageprocessing # runs the stdio MCP server
VS Code への登録
ユーザーまたはワークスペースの mcp.json に次の内容を追加します。
{
"servers": {
"imageProcessing": {
"command": "farshid-mcp-imageprocessing",
"type": "stdio"
}
}
}
または、リポジトリをクローンし、ローカルの .venv を使ってソースから実行する場合は、次のようにします。
git clone https://github.com/pirahansiah/farshid-mcp-imageProcessing
cd farshid-mcp-imageProcessing
# Windows (PowerShell):
py -3.14 -m venv .venv ; .\.venv\Scripts\Activate.ps1
# macOS / Linux:
python3.14 -m venv .venv && source .venv/bin/activate
pip install -U pip
pip install -e .
バンドルされている Haar カスケードと追加アルゴリズムを利用できるように、opencv-contrib-python を使用しています。
クイックスタート:/cv Copilot プロンプト
このリポジトリには、ワークスペースのプロンプトファイル .github/prompts/cv.prompt.md が含まれています。VS Code の Copilot Chat(Agent モード)で、次のように入力します。
/cv take image from webcam and save it as gray scale 240 * 240
エージェントはこのサーバーの webcam_save、image_to_grayscale、image_resize を呼び出し、要求されたファイルを ./.farshid/cv/ に作成します。
ツール一覧
ウェブカメラ/キャプチャ
webcam_capture(camera_index=0)→ PNG 画像を返しますwebcam_save(output_path="", camera_index=0)webcam_preview(camera_index=0, seconds=10)(ローカルのデスクトップウィンドウ)webcam_record(output_path, seconds=5, camera_index=0, fps=20)
画像の入出力と情報
image_show(path)— 画像をチャットに返しますimage_info(path)— 形状、データ型、平均値、ファイルサイズimage_convert(input_path, output_path, quality=95)
幾何変換
image_resize(... width|height|scale, interpolation)image_crop(input_path, output_path, x, y, width, height)image_rotate(input_path, output_path, angle, scale=1, keep_size=False)image_flip(input_path, output_path, direction)image_pad(... top, bottom, left, right, border_type, color)
色処理
image_to_grayscalecolor_convert(target=gray|hsv|hls|lab|ycrcb|rgb|bgr)adjust_brightness_contrasthistogram_equalize(method=clahe|global)histogram_data(bins=32)
フィルタリング
blur_gaussian(ksize, sigma)blur_median(ksize)blur_bilateral(d, sigma_color, sigma_space)sharpen(amount)denoise(strength)
エッジ/勾配
edges_canny(threshold1, threshold2)edges_sobel(ksize)edges_laplacian(ksize)
しきい値処理とモルフォロジー
threshold(method=otsu|binary|binary_inv|adaptive_mean|adaptive_gaussian)morphology(op=erode|dilate|open|close|gradient|tophat|blackhat)
輪郭と図形
find_contours(input_path, output_path?, thresh, min_area)detect_circles(...)— Houghdetect_lines(...)— 確率的 Houghdetect_corners(...)— Shi-Tomasi
特徴量マッチング
feature_match(image1, image2, output_path?)— ORB + BFMatcher
オブジェクト検出(Haar)
detect_facesdetect_eyesdetect_bodiesdetect_qrcode
描画
draw_rectangle、draw_circle、draw_line、draw_text
合成/演算
image_blend(image1, image2, output_path, alpha)image_diff(image1, image2, output_path?)→ 差分の平均/最大値image_concat(images, output_path, direction)template_match(image_path, template_path, output_path?, threshold)
動画
video_info(path)video_extract_frames(video_path, output_dir, every_n, max_frames, ext)video_thumbnail(video_path, output_path, time_seconds)
ビルドと公開
pip install -U build twine mcp-publisher
python -m build
twine upload dist/*
mcp-publisher login github
mcp-publisher publish .mcp/server.json
OS に関する注意事項
- Windows 11(最新): ウェブカメラは標準で動作します。Settings → Privacy & security → Camera → Let desktop apps access your camera が On になっていることを確認してください。
- macOS(最新): 最初にウェブカメラを呼び出すと、システムのカメラ許可ダイアログが表示されます。ターミナルまたは VS Code のプロセスに許可を与えてください。
- Linux(最新): 動作する
/dev/video*デバイスが必要です。ディスプレイのないヘッドレスサーバーではwebcam_previewを使用できません(OpenCV のウィンドウが開きます)。
注意事項
- ツール関数内では
print()を使用しないでください。stdout は MCP プロトコルの通信チャネルです。sys.stderrを使用してください(server.pyの末尾にある_logヘルパー)。 webcam_previewは実際のデスクトップウィンドウを開きます。サーバーにディスプレイがある環境でのみ動作します(通常の SSH 接続経由やヘッドレスコンテナー内では動作しません)。- すべてのパスで
~の展開に対応しています。出力ディレクトリは自動的に作成されます。 - 注釈付き画像を返すツールでは、任意の
output_pathを指定できます。省略した場合は JSON メタデータのみを返します。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。