🪄 ImageSorcery MCP
ComputerVision ベースの🪄 AI アシスタント用画像認識および編集ツールの魔法
❌ ImageSorcery MCPなし
AI アシスタントは画像を扱う際には制限があります。
- ❌ 画像を直接変更または分析することはできません
- ❌ 画像の切り取り、サイズ変更、加工ができない
- ❌ 一部のLLMは画像から物体を検出したりテキストを抽出したりできない
- ❌ 視覚的な操作を行わず、言葉による説明のみに限定
✅ ImageSorcery MCPを使用
🪄 ImageSorcery
、強力な画像処理機能で AI アシスタントを強化します。
- ✅ 画像を正確に切り抜き、サイズ変更、回転します
- ✅ 画像にテキストや図形を描く
- ✅ 最先端のモデルを使用してオブジェクトを検出する
- ✅ OCRを使って画像からテキストを抽出する
- ✅ 詳細な画像メタデータを取得する
- ✅ オブジェクト検出、OCR などに、幅広い事前トレーニング済みモデルを使用できます
AI に画像タスクの支援を依頼するだけです:
「ペットの写真をフォルダーの
photos
からpets
フォルダーにコピーする」
「photo.jpg で猫を見つけ、高さと幅を半分に切り取って、猫が中央にくるようにします」
😉***ヒント:*ファイルへのフルパスを使用してください。
「
foduucom/web-form-ui-field-detection
モデルを使用して、このform.jpg
のフォーム フィールドを数値化し、記述されたフィールドのリストをform.md
に入力します。」😉***ヒント:*モデルと信頼度を指定します。
😉***ヒント:*適切なツールが使用されるように、「use imagesorcery」を追加します。
あなたのツールは、あなたの目標を達成するために、以下にリストされている複数のツールを組み合わせます。
🛠️ 利用可能なツール
道具 | 説明 | 例のプロンプト |
---|---|---|
crop | OpenCVのNumPyスライスアプローチを使用して画像を切り抜きます | 「画像 'input.png' を座標 (10,10) から (200,200) まで切り取り、 'cropped.png' として保存します。」 |
resize | OpenCVを使用して画像のサイズを変更します | 「画像 'photo.jpg' を 800x600 ピクセルにサイズ変更し、 'resized_photo.jpg' として保存します。」 |
rotate | imutils.rotate_bound関数を使用して画像を回転します | 「画像 'photo.jpg' を 45 度回転して 'rotated_photo.jpg' として保存します」 |
draw_texts | OpenCVを使用して画像にテキストを描画する | 「画像「photo.jpg」の(50,50)の位置に「Hello World」というテキストを追加し、右下隅に「Copyright 2023」というテキストを追加します。」 |
draw_rectangles | OpenCVを使用して画像に長方形を描画します | 「画像 'photo.jpg' に (50,50) から (150,100) までの赤い四角形と、(200,150) から (300,250) までの塗りつぶされた青い四角形を描画してください。」 |
get_metainfo | 画像ファイルに関するメタデータ情報を取得します | 「画像 'photo.jpg' のメタデータ情報を取得する」 |
detect | Ultralyticsのモデルを使用して画像内のオブジェクトを検出します | 「信頼度しきい値0.4で画像「photo.jpg」内のオブジェクトを検出します」 |
find | テキストの説明に基づいて画像内のオブジェクトを検索します | 「信頼度閾値 0.4 で、画像 'photo.jpg' 内のすべての犬を見つけてください」 |
get_models | モデルディレクトリ内の利用可能なすべてのモデルを一覧表示します | 「モデルディレクトリ内の利用可能なすべてのモデルを一覧表示する」 |
ocr | EasyOCRを使用して画像に対して光学文字認識(OCR)を実行します | 「OCRを使用して画像「document.jpg」から英語のテキストを抽出します」 |
😉***ヒント:*各ツールの詳細情報と使用方法については、ツールの/src/imagesorcery_mcp/tools/README.md
を参照してください。
🚀 はじめに
要件
Python 3.10
以上Claude.app
、Cline
、または他のMCPクライアント
インストール
- **仮想環境を作成してアクティブ化する (強く推奨):**すべてのコンポーネント、特に
clip
パッケージ (インストール後のスクリプトによってインストールされる) を確実にインストールするには、uv venv
ではなく、Python の組み込みvenv
モジュールを使用することを強くお勧めします。 - アクティブ化された仮想環境にパッケージをインストールします。pip
pip``uv pip
を使用できます。 - **インストール後のスクリプトを実行する:**このステップは非常に重要です。必要なモデルをダウンロードし、GitHubから
clip
Pythonパッケージをアクティブな仮想環境にインストールしようとします。
- 事前トレーニング済みのモデルを保存するための
models
ディレクトリ (通常は仮想環境の site-packages ディレクトリ内、またはグローバルにインストールされている場合はユ���ザー固有の場所) を作成します。 - そこに初期
models/model_descriptions.json
ファイルを生成します。 detect
ツールに必要なデフォルトの YOLO モデル (yoloe-11l-seg-pf.pt
、yoloe-11s-seg-pf.pt
、yoloe-11l-seg.pt
、yoloe-11s-seg.pt
) をこのmodels
ディレクトリにダウンロードします。- UltralyticsのGitHubリポジトリから**
clip
PythonパッケージをアクティブなPython環境に直接インストールしようとします**。これは、find
ツールのテキストプロンプト機能に必要です。 find
ツールに必要な CLIP モデル ファイルをmodels
ディレクトリにダウンロードします。
このプロセスをいつでも実行して、デフォルトのモデルを復元し、 clip
インストールを試行できます。
- **
uv venv
を使用した仮想環境の作成:**テストの結果、uv venv
で作成された仮想環境にはpip
が含まれていない可能性があり、imagesorcery-mcp --post-install
スクリプトがGitHubからclip
パッケージを自動的にインストールできない可能性があります(clip
インストール手順で「No module named pip」エラーが発生する可能性があります)。uv venv
を使用する場合は、次の点に注意してください。uv venv
を作成してアクティブ化します。imagesorcery-mcp
をインストールします:uv pip install imagesorcery-mcp
。- アクティブな
uv venv
にclip
パッケージを手動でインストールします。 imagesorcery-mcp --post-install
を実行してください。モデルはダウンロードされますが、clip
Pythonパッケージのインストールに失敗する可能性があります。post-installスクリプトによるclip
自動インストールをよりスムーズに行うには、仮想環境を作成する際にpython -m venv
(上記の手順1を参照)を使用することをお勧めします。
uvx imagesorcery-mcp --post-install
の使用:uvx
で直接インストール後のスクリプトを実行すると(例:uvx imagesorcery-mcp --post-install
)、clip
Python パッケージのインストールに失敗する可能性があります。これは、uvx``uvx
作成された一時環境では通常、スクリプトが使用できるようなpip
が用意されていないためです。モデルはダウンロードされますが、このコマンドではclip
パッケージはインストールされません。uvx を使用してメインのimagesorcery-mcp
サーバーを実行し、clip
機能が必要な場合は、uvx
が検出できるアクセス可能な Python 環境にclip
パッケージがインストールされていることを確認するか、python -m venv
で作成された永続的な環境にimagesorcery-mcp
をインストールすることを検討する必要があります。
⚙️ MCP クライアントの構成
MCPクライアントに以下の設定を追加してください。インストール後、 imagesorcery-mcp
システムのPATHに含まれている場合は、 imagesorcery-mcp
コマンドとして直接使用できます。そうでない場合は、実行ファイルへのフルパスを指定する必要があります。
📦 追加モデル
一部のツールでは、 models
ディレクトリに特定のモデルが用意されている必要があります。
モデルをダウンロードすると、スクリプトはmodels/model_descriptions.json
ファイルを自動的に更新します。
- Ultralytics モデルの場合: 説明は
src/imagesorcery_mcp/scripts/create_model_descriptions.py
で事前定義されており、各モデルの目的、サイズ、特性に関する詳細情報が含まれています。 - Hugging Faceモデルの場合:説明文はHugging Face Hubのモデルカードから自動的に抽出されます。スクリプトは、モデルインデックスまたは説明文の最初の行からモデル名を取得しようとします。
モデルをダウンロードした後、 models/model_descriptions.json
の説明を確認し、必要に応じて調整して、モデルの機能やユースケースに関するより正確で詳細な情報を提供することをお勧めします。
🤝 貢献する
ディレクトリ構造
このリポジトリは次のように構成されています。
開発セットアップ
- リポジトリをクローンします。
- (推奨) 仮想環境を作成してアクティブ化します。
- 開発依存関係とともに編集可能モードでパッケージをインストールします。
これにより、 imagesorcery-mcp
と[project.dependencies]
および[project.optional-dependencies].dev
からのすべての依存関係 ( build
およびtwine
を含む) がインストールされます。
ルール
これらのルールは、人間と AI を含むすべての貢献者に適用されます。
- プロジェクト内のすべての
README.md
ファイルを読んでください。プロジェクトの構造と目的を理解し、貢献のためのガイドラインを理解してください。それが自分のタスクとどのように関連しているか、そしてそれに応じてどのように変更を加えるべきかをよく考えてください。 pyproject.toml
読んでください。[tool.ruff]
、[tool.ruff.lint]
、[project.optional-dependencies]
、[project]dependencies
の各セクションに注意してください。pyproject.toml で定義されているコードスタイルに厳密に従ってくださいpyproject.toml``pyproject.toml
依存関係で定義されているスタックを厳守し、正当な理由がない限り新しい依存関係を追加しないでください。- 新規ファイルと既存ファイルにコードを記述してください。新しい依存関係が必要な場合は、
pyproject.toml
を更新し、pip install -e .
またはpip install -e ".[dev]"
でインストールしてください。pip install
で直接インストールしないでください。例として、既存のソースコードを確認してください(例:src/imagesorcery_mcp/server.py
、src/imagesorcery_mcp/tools/crop.py
)。既存コードのコードスタイル、命名規則、入出力データ形式、コード構造、アーキテクチャなどに従ってください。 - 関連する
README.md
ファイルに変更を加えて更新してください。既存のREADME.md
ファイルの形式と構造に従ってください。 - コードのテストを記述してください。既存のテスト例(例:
tests/test_server.py
、tests/tools/test_crop.py
)を参考にしてください。既存のテストのコードスタイル、命名規則、入出力データ形式、コード構造、アーキテクチャなどに従ってください。 - テストとリンターを実行して、すべてが機能することを確認します。
失敗した場合は、コードとテストを修正してください。すべての新しいコードはリンタールールに準拠し、すべてのテストに合格することが必須です。
コーディングのヒント
- 適切な場合は型ヒントを使用する
- データの検証とシリアル化にはpydanticを使用する
📝 質問がありますか?
このプロジェクトに関してご質問、問題、ご提案がございましたら、お気軽に下記までお問い合わせください。
バグレポートや機能リクエストについては、リポジトリで問題を開くこともできます。
📜 ライセンス
このプロジェクトはMITライセンスに基づいてライセンスされています。つまり、MITライセンスの条件に従って、ソフトウェアを自由に使用、改変、配布することができます。
This server cannot be installed
local-only server
The server can only run on the client's local machine because it depends on local resources.
🪄 ImageSorcery MCP
Related MCP Servers
- AsecurityAlicenseAqualityEnables AI assistants to download images from URLs and perform basic image optimization tasks.Last updated -24JavaScriptApache 2.0
- -securityAlicense-qualityA Cursor-compatible toolkit that provides intelligent coding assistance through custom AI tools for code architecture planning, screenshot analysis, code review, and file reading capabilities.Last updated -6022TypeScriptMIT License
- JavaScript
- -securityFlicense-qualityEnables searching for AI agents by keywords or categories, allowing users to discover tools like coding agents, GUI agents, or industry-specific assistants across marketplaces.Last updated -23Python