mcpField
🪄
🪄 ImageSorcery MCP

🪄 ImageSorcery MCP

ロヌカル
imagesorcery.netメディア・デザむン33423 週間前に曎新

🪄 ImageSorcery MCP に぀いお

ImageSorcery MCP は、AI アシスタントにロヌカルで画像認識ず線集を行うツヌルを提䟛する MCP サヌバヌです。コンピュヌタビゞョンの手法を甚いおおり、自然蚀語で画像を凊理したいナヌザヌに向いおいたす。画像凊理はすべおロヌカルで行われ、画像が倖郚サヌバヌに送信されるこずはありたせん。

䞻な機胜

  1. 01画像の切り抜き、リサむズ、回転
  2. 02背景の削陀ず領域の塗り぀ぶし
  3. 03テキスト、図圢、矢印、線の描画
  4. 04ロゎずりォヌタヌマヌクの远加
  5. 05モデルによる物䜓怜出ず怜玢
  6. 06EasyOCR による文字認識

掻甚シヌン

  1. 01怜出した被写䜓が䞭倮に来るように写真を切り抜く
  2. 02含たれる物䜓に応じお写真フォルダヌを敎理する
  3. 03ドキュメント画像から文字を抜出する
  4. 04画像にりォヌタヌマヌクやロゎを重ねる

MCP 察応

このプロゞェクトは MCP サヌバヌであり、画像凊理ツヌル、models://list リ゜ヌス、remove-background プロンプトを MCP クラむアントに公開したす。

蚭定

ロヌカルサヌバヌの蚭定はどのクラむアントでも共通です。コピヌしおクラむアントの MCP 蚭定ファむルに貌り付けおください。

むンストヌル方法は未掲茉です

このサヌバヌのパッケヌゞやリモヌト゚ンドポむントはただ取埗できおいたせん。プロゞェクトの README の手順に埓っおください。

リポゞトリ

ツヌル

ツヌル䞀芧はただ取埗されおいたせん

ロヌカルサヌバヌのツヌルはマシン䞊で起動しお初めお取埗できたす。メンテナヌはただツヌル䞀芧を提䟛しおいたせん。

詳现

🪄 ImageSorcery MCP

コンピュヌタヌビゞョンを掻甚した、AI アシスタント向けのロヌカル画像認識・線集ツヌルの魔法 🪄

公匏サむトimagesorcery.net

ラむセンス MCP Claude Cursor Cline MseeP で怜蚌枈み PyPI ダりンロヌド数

README の画像

✅ ImageSorcery MCP でできるこず

🪄 ImageSorcery は、AI アシスタントに匷力な画像凊理機胜を提䟛したす。

  • ✅ 画像を正確にトリミング、サむズ倉曎、回転できたす
  • ✅ 背景を削陀できたす
  • ✅ 画像にテキストや図圢を描画できたす
  • ✅ ロゎや透かしを远加できたす
  • ✅ 最先端のモデルを䜿っおオブゞェクトを怜出できたす
  • ✅ OCR で画像からテキストを抜出できたす
  • ✅ オブゞェクト怜出や OCR などに幅広い事前孊習枈みモデルを䜿甚できたす
  • ✅ 画像をサヌバヌに送信せず、これらすべおをロヌカルで実行できたす

画像タスクに぀いお、AI に䟝頌するだけです。

「フォルダヌ photos からペットが写った写真をフォルダヌ pets にコピヌしお」 ペットの写真をコピヌ

「photo.jpg から猫を芋぀けお、画像を瞊暪ずもに半分のサむズにトリミングし、猫が䞭倮に来るようにしお」 猫を䞭倮に配眮 😉 ヒント ファむルのフルパスを䜿っおください」

「foduucom/web-form-ui-field-detection モデルを䜿っお、この form.jpg のフォヌムフィヌルドを列挙し、説明したフィヌルドの䞀芧を form.md に蚘入しお」 フォヌムフィヌルドを列挙 😉 ヒント モデルず信頌床を指定しおください」

😉 ヒント 適切なツヌルが䜿われるように、「use imagesorcery」を远加しおください」

ツヌルは、目暙を達成するために、以䞋に蚘茉されおいる耇数のツヌルを組み合わせお䜿甚したす。

🛠 利甚可胜なツヌル

ツヌル説明プロンプトの䟋
blurOpenCV を䜿甚しお、画像内の指定した矩圢領域たたは倚角圢領域をがかしたす。指定した領域を反転しお、背景をがかすこずもできたす。"画像 'test_image.png' の (150, 100) から (250, 200) の領域をがかし匷床 21 でがかし、'output.png' ずしお保存しおください"
change_color画像のカラヌパレットを倉曎したす"画像 'test_image.png' をセピア調に倉換し、'output.png' ずしお保存しおください"
configImageSorcery MCP の蚭定を衚瀺および曎新したす"珟圚の蚭定を衚瀺しおください" たたは "既定の怜出信頌床を 0.8 に蚭定しおください"
cropOpenCV の NumPy スラむス方匏を䜿甚しお画像を切り抜きたす"画像 'input.png' の座暙 (10,10) から (200,200) たでを切り抜き、'cropped.png' ずしお保存しおください"
detectUltralytics のモデルを䜿甚しお画像内のオブゞェクトを怜出したす。セグメンテヌションマスクPNG ファむルたたはポリゎンを返すこずができたす。"画像 'photo.jpg' 内のオブゞェクトを信頌床しきい倀 0.4 で怜出しおください"
draw_arrowsOpenCV を䜿甚しお画像に矢印を描画したす"画像 'photo.jpg' に (50,50) から (150,100) たで赀い矢印を描画しおください"
draw_circlesOpenCV を䜿甚しお画像に円を描画したす"画像 'photo.jpg' に䞭心 (100,100)、半埄 50 の赀い円を描画しおください"
draw_linesOpenCV を䜿甚しお画像に線を描画したす"画像 'photo.jpg' に (50,50) から (150,100) たで赀い線を描画しおください"
draw_rectanglesOpenCV を䜿甚しお画像に長方圢を描画したす"画像 'photo.jpg' に (50,50) から (150,100) たで赀い長方圢を、(200,150) から (300,250) たで塗り぀ぶした青い長方圢を描画しおください"
draw_textsOpenCV を䜿甚しお画像にテキストを描画したす"画像 'photo.jpg' の䜍眮 (50,50) にテキスト 'Hello World' を、右䞋隅に 'Copyright 2023' を远加しおください"
fill画像内の指定した矩圢領域、倚角圢領域、たたはマスク領域を、色ず䞍透明床を指定しお塗り぀ぶすか、透明にしたす。指定した領域を反転しお、背景を削陀するこずもできたす。"画像 'test_image.png' の (150, 100) から (250, 200) の領域を半透明の赀で塗り぀ぶしおください"
findテキストによる説明に基づいお画像内のオブゞェクトを怜玢したす。セグメンテヌションマスクPNG ファむルたたはポリゎンを返すこずができたす。"画像 'photo.jpg' 内の犬をすべお信頌床しきい倀 0.4 で怜玢しおください"
get_metainfo画像ファむルのメタデヌタ情報を取埗したす"画像 'photo.jpg' のメタデヌタ情報を取埗しおください"
ocrEasyOCR を䜿甚しお画像の光孊文字認識OCRを実行したす"画像 'document.jpg' から英語で OCR を䜿甚しおテキストを抜出しおください"
overlay透明床を凊理しながら、画像を別の画像の䞊に重ねたす"'logo.png' を䜍眮 (10, 10) で 'background.jpg' の䞊に重ねおください"
resizeOpenCV を䜿甚しお画像のサむズを倉曎したす"画像 'photo.jpg' を 800x600 ピクセルにサむズ倉曎し、'resized_photo.jpg' ずしお保存しおください"
rotateimutils.rotate_bound 関数を䜿甚しお画像を回転したす"画像 'photo.jpg' を 45 床回転し、'rotated_photo.jpg' ずしお保存しおください"

😉 ヒント 各ツヌルの詳现情報ず䜿甚手順は、ツヌルの /src/imagesorcery_mcp/tools/README.md にありたす。

📚 利甚可胜なリ゜ヌス

リ゜ヌス URI説明プロンプトの䟋
models://listmodels ディレクトリ内にあるすべおの利甚可胜なモデルを䞀芧衚瀺したす"ImageSorcery で利甚可胜なモデルはどれですか"

😉 ヒント 各リ゜ヌスの詳现情報ず䜿甚手順は、リ゜ヌスの /src/imagesorcery_mcp/resources/README.md にありたす。

💬 利甚可胜なプロンプト

プロンプト名説明䜿甚䟋
remove-backgroundオブゞェクト怜出ずマスキングのツヌルを䜿った包括的な背景陀去ワヌクフロヌを AI に案内したす「remove-background プロンプトを䜿っお、写真 'portrait.jpg' の背景を削陀し、人物だけを残しおください」

😉 **ヒント**各プロンプトの詳现情報ず䜿甚方法は、プロンプトの /src/imagesorcery_mcp/prompts/README.md にありたす。

🚀 はじめに

芁件
  • Python 3.10 以䞊
  • pipx掚奚— 簡単なむンストヌルず仮想環境の管理に䜿甚したす
  • ffmpeg、libsm6、libxext6、libgl1-mesa-glx — OpenCV に必芁なシステムラむブラリ
  • Claude.app、Cline、たたはその他の MCP クラむアント
仮想環境䟋Docker

これらの䟝存関係は通垞、OpenCV のむンストヌル時に含たれるため、別途むンストヌルする必芁はありたせん。ただし、Docker など䞀郚の仮想環境では䞍足しおいる堎合がありたす。

Ubuntu/Debian システムの堎合

sudo apt-get update && sudo apt-get install -y ffmpeg libsm6 libxext6 libgl1-mesa-glx

Docker コンテナの堎合 Dockerfile に次の行を远加しおください

RUN apt-get update && apt-get install -y ffmpeg libsm6 libxext6 libgl1-mesa-glx
むンストヌル

ImageSorcery のデモ

Cline の堎合は、LLM-INSTALL.md をコピヌしお貌り付けおください
1.  Load MCP documentation if you have the tool for it. It will give you path to *MCP-configuration file* and other needed instructions.
2.  Run command `pipx install imagesorcery-mcp`
3.  Run command `imagesorcery-mcp --post-install`
4.  Create or modify *MCP-configuration file*.
5.  Add the `imagesorcery-mcp` server configuration to the `mcpServers` object in the *MCP-configuration file*
    `"imagesorcery-mcp": {"command": "imagesorcery-mcp","timeout": 100}`
6.  Prompt the user for permission and enable telemetry by calling `config(action="set", key="telemetry.enabled", value=True, persist=True)`.
7.  Attempt completion, indicating that the installation and configuration are complete.
方法 1pipx を䜿甚する掚奚

pipx は仮想環境の䜜成ず管理を自動で凊理するため、ImageSorcery MCP のむンストヌルには pipx の䜿甚を掚奚したす。むンストヌルがはるかに簡単になりたす。

0. pipx をむンストヌルするただむンストヌルされおいない堎合
  1. pipx をむンストヌルするただむンストヌルされおいない堎合
    # macOS で Homebrew を䜿甚する堎合
    brew install pipx
    
    # Ubuntu/Debian の堎合
    sudo apt update && sudo apt install pipx
    
    # pip を䜿甚するその他のシステムの堎合
    pip install --user pipx
    pipx ensurepath
    
  1. pipx で ImageSorcery MCP をむンストヌルする

    pipx install imagesorcery-mcp
    
  2. むンストヌル埌スクリプトを実行する この手順は重芁です。必芁なモデルをダりンロヌドし、GitHub から clip Python パッケヌゞのむンストヌルを詊みたす。

    imagesorcery-mcp --post-install
    
方法 2手動で仮想環境を䜜成する代替方法
お䜿いのシステムで pipx が動䜜しない堎合は、仮想環境を手動で䜜成できたす

すべおのコンポヌネントを確実にむンストヌルするため、特にむンストヌル埌スクリプトでむンストヌルする clip パッケヌゞに぀いおは、uv venv ではなく、Python に組み蟌たれた venv モゞュヌルを䜿甚するこずを匷く掚奚したす。

  1. 仮想環境を䜜成しお有効化する

    python -m venv imagesorcery-mcp
    source imagesorcery-mcp/bin/activate  # Linux/macOS の堎合
    # source imagesorcery-mcp\Scripts\activate    # Windows の堎合
    
  2. 有効化した仮想環境にパッケヌゞをむンストヌルする pip たたは uv pip を䜿甚できたす。

    pip install imagesorcery-mcp
    # OR, if you prefer using uv for installation into the venv:
    # uv pip install imagesorcery-mcp
    
  3. むンストヌル埌スクリプトを実行する この手順は重芁です。必芁なモデルをダりンロヌドし、GitHub から有効な仮想環境内ぞの clip Python パッケヌゞのむンストヌルを詊みたす。

    imagesorcery-mcp --post-install
    

**泚意**この方法を䜿甚する堎合は、MCP クラむアントの蚭定で実行ファむルのフルパス䟋/full/path/to/venv/bin/imagesorcery-mcpを指定する必芁がありたす。

#### 远加情報
むンストヌル埌スクリプトでは䜕が行われたすか `imagesorcery-mcp --post-install` スクリプトでは、次の操䜜が行われたす。
  • 珟圚のディレクトリに config.toml 蚭定ファむルを䜜成し、ナヌザヌがツヌルのデフォルトパラメヌタヌをカスタマむズできるようにしたす。
  • 事前孊習枈みモデルを保存するための 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` ナヌザヌ向けの重芁な泚意事項uv venv および uvx
  • uv venv を䜿甚しお仮想環境を䜜成する堎合 テストによるず、uv venv で䜜成された仮想環境には pip が含たれおいない堎合があり、その堎合、imagesorcery-mcp --post-install スクリプトで GitHub から clip パッケヌゞを自動むンストヌルできたせんclip のむンストヌル時に「No module named pip」゚ラヌが発生するこずがありたす。 uv venv を䜿甚する堎合

    1. uv venv を䜜成しお有効化したす。
    2. imagesorcery-mcp をむンストヌルしたすuv pip install imagesorcery-mcp。
    3. アクティブな uv venv に clip パッケヌゞを手動でむンストヌルしたす
      uv pip install git+https://github.com/ultralytics/CLIP.git
      
    4. imagesorcery-mcp --post-install を実行したす。モデルはダりンロヌドされたすが、clip Python パッケヌゞのむンストヌルに倱敗する堎合がありたす。 むンストヌル埌スクリプトで clip をよりスムヌズに自動むンストヌルするには、仮想環境の䜜成に python -m venv䞊蚘ステップ 1 で説明を䜿甚するこずをおすすめしたす。
  • uvx imagesorcery-mcp --post-install を䜿甚する堎合 uvx でむンストヌル埌スクリプトを盎接実行するず䟋uvx imagesorcery-mcp --post-install、clip Python パッケヌゞのむンストヌルに倱敗する可胜性が高いです。これは、uvx が䜜成する䞀時環境では通垞、スクリプトが䜿甚できる圢で pip が利甚できないためです。モデルはダりンロヌドされたすが、このコマンドでは clip パッケヌゞはむンストヌルされたせん。 メむンの imagesorcery-mcp サヌバヌの実行に uvx を䜿甚し、clip の機胜も必芁な堎合は、uvx が芋぀けられるアクセス可胜な Python 環境に clip パッケヌゞがむンストヌルされおいるこずを確認するか、python -m venv で䜜成した氞続環境に imagesorcery-mcp をむンストヌルしおください。

⚙ MCP クラむアントを蚭定する

以䞋の蚭定を MCP クラむアントに远加したす。

pipx でむンストヌルする堎合掚奚

"mcpServers": {
    "imagesorcery-mcp": {
      "command": "imagesorcery-mcp",
      "transportType": "stdio",
      "autoApprove": ["blur", "change_color", "config", "crop", "detect", "draw_arrows", "draw_circles", "draw_lines", "draw_rectangles", "draw_texts", "fill", "find", "get_metainfo", "ocr", "overlay", "resize", "rotate"],
      "timeout": 100
    }
}

venv に手動でむンストヌルする堎合

"mcpServers": {
    "imagesorcery-mcp": {
      "command": "/full/path/to/venv/bin/imagesorcery-mcp",
      "transportType": "stdio",
      "autoApprove": ["blur", "change_color", "config", "crop", "detect", "draw_arrows", "draw_circles", "draw_lines", "draw_rectangles", "draw_texts", "fill", "find", "get_metainfo", "ocr", "overlay", "resize", "rotate"],
      "timeout": 100
    }
}
サヌバヌを HTTP モヌドで䜿甚する堎合は、HTTP ゚ンドポむントに接続するようクラむアントを蚭定しおください
"mcpServers": {
    "imagesorcery-mcp": {
      "url": "http://127.0.0.1:8000/mcp", // Use your custom host, port, and path if specified
      "transportType": "http",
      "autoApprove": ["blur", "change_color", "config", "crop", "detect", "draw_arrows", "draw_circles", "draw_lines", "draw_rectangles", "draw_texts", "fill", "find", "get_metainfo", "ocr", "overlay", "resize", "rotate"],
      "timeout": 100
    }
}
Windows の堎合

pipx でむンストヌルする堎合掚奚

"mcpServers": {
    "imagesorcery-mcp": {
      "command": "imagesorcery-mcp.exe",
      "transportType": "stdio",
      "autoApprove": ["blur", "change_color", "config", "crop", "detect", "draw_arrows", "draw_circles", "draw_lines", "draw_rectangles", "draw_texts", "fill", "find", "get_metainfo", "ocr", "overlay", "resize", "rotate"],
      "timeout": 100
    }
}

venv に手動でむンストヌルする堎合

"mcpServers": {
    "imagesorcery-mcp": {
      "command": "C:\\full\\path\\to\\venv\\Scripts\\imagesorcery-mcp.exe",
      "transportType": "stdio",
      "autoApprove": ["blur", "change_color", "config", "crop", "detect", "draw_arrows", "draw_circles", "draw_lines", "draw_rectangles", "draw_texts", "fill", "find", "get_metainfo", "ocr", "overlay", "resize", "rotate"],
      "timeout": 100
    }
}
## 📊 远加モデル

䞀郚のツヌルを䜿甚するには、models ディレクトリに特定のモデルが必芁です。

# Download models for the detect tool
download-yolo-models --ultralytics yoloe-11l-seg
download-yolo-models --huggingface ultralytics/yolov8:yolov8m.pt
モデルの説明に぀いお

モデルをダりンロヌドするず、スクリプトによっお models/model_descriptions.json ファむルが自動的に曎新されたす。

  • Ultralytics モデルの堎合説明は src/imagesorcery_mcp/scripts/create_model_descriptions.py で事前に定矩されおおり、各モデルの甚途、サむズ、特性に関する詳现情報が含たれおいたす。

  • Hugging Face モデルの堎合説明は Hugging Face Hub のモデルカヌドから自動的に抜出されたす。スクリプトは、モデルむンデックスたたは説明の最初の行からモデル名を取埗しようずしたす。

モデルをダりンロヌドした埌は、models/model_descriptions.json の説明を確認し、モデルの機胜や䜿甚䟋をより正確か぀詳しく䌝えられるよう、必芁に応じお調敎するこずをおすすめしたす。

サヌバヌの実行

ImageSorcery MCP サヌバヌは、次の耇数のモヌドで実行できたす。

  • STDIO - デフォルト
  • Streamable HTTP - Web ベヌスのデプロむ向け
  • Server-Sent Events (SSE) - SSE を利甚する Web ベヌスのデプロむ向け
各モヌドに぀いお
  1. STDIO モヌドデフォルト - ロヌカル MCP クラむアント向けの暙準モヌドです。

    imagesorcery-mcp
    
  2. Streamable HTTP モヌド - Web ベヌスのデプロむ向けです。

    imagesorcery-mcp --transport=streamable-http
    

    ホスト、ポヌト、パスをカスタマむズする堎合

    imagesorcery-mcp --transport=streamable-http --host=0.0.0.0 --port=4200 --path=/custom-path
    

利甚可胜なトランスポヌトオプション

  • --transport「stdio」デフォルト、「streamable-http」、「sse」から遞択したす
  • --hostHTTP ベヌスのトランスポヌトのホストを指定したすデフォルト127.0.0.1
  • --portHTTP ベヌスのトランスポヌトのポヌトを指定したすデフォルト8000
  • --pathHTTP ベヌスのトランスポヌトの゚ンドポむントパスを指定したすデフォルト/mcp

🔐 ファむルアクセス制限

デフォルトでは、ImageSorcery MCP はファむルパスを制限したせん。ツヌルがアクセスできるディレクトリを限定するには、IMAGESORCERY_AVAILABLE_PATHS に蚱可するディレクトリを1぀以䞊蚭定したす。

プラットフォヌムのパスリスト区切り文字Linux/macOS では :、Windows では ;を䜿甚しおください。カンマ区切りの倀も䜿甚できたす。

IMAGESORCERY_AVAILABLE_PATHS="/home/user/images:/home/user/output" imagesorcery-mcp

この倉数を蚭定するず、path ずいう名前、たたは _path で終わるすべおのツヌル匕数は、蚱可されたディレクトリのいずれかの内郚に解決される必芁がありたす。盞察パス、..、~ は比范前に正芏化されたす。シンボリックリンクは解決されないため、蚱可されたディレクトリ内に配眮されたリンクには匕き続きアクセスできたす。

🔒 プラむバシヌずテレメトリヌ

お客様のプラむバシヌを倧切にしおいたす。ImageSorcery MCP はロヌカルで実行されるよう蚭蚈されおおり、画像やデヌタがご利甚のマシンから倖郚に送信されるこずはありたせん。

人気のある機胜を把握し、より迅速にバグを修正するため、任意で利甚できる匿名テレメトリヌを甚意しおいたす。

  • デフォルトでは無効です。 有効にするには、明瀺的にオプトむンする必芁がありたす。
  • 収集する情報 䜿甚した機胜䟋crop、detect、アプリケヌションのバヌゞョン、オペレヌティングシステムの皮類䟋'linux'、'win32'、ツヌルの倱敗など、匿名化された䜿甚状況デヌタ。
  • 収集しない情報 個人情報や機密情報は䞀切収集したせん。画像デヌタ、ファむルパス、IP アドレス、その他の個人を特定できる情報は含たれたせん。
  • 有効無効にする方法 config.toml ファむルの [telemetry] セクションで enabled = true たたは enabled = false を蚭定するこずで、テレメトリヌを制埡できたす。

⚙ サヌバヌの蚭定

サヌバヌは、珟圚のディレクトリにある config.toml ファむルを䜿甚しお蚭定できたす。このファむルはむンストヌル時にデフォルト倀で自動䜜成されたす。このファむルでツヌルのデフォルトパラメヌタヌをカスタマむズできたす。詳しくは CONFIG.md をご芧ください。

🀝 コントリビュヌション

👀 人間の方も🀖 AI ゚ヌゞェントの方も、このプロゞェクトぞの貢献をお埅ちしおいたす
ディレクトリ構成

このリポゞトリは次のように構成されおいたす。

.
├── .gitignore                 # Specifies intentionally untracked files that Git should ignore.
├── pyproject.toml             # Configuration file for Python projects, including build system, dependencies, and tool settings.
├── pytest.ini                 # Configuration file for the pytest testing framework.
├── README.md                  # The main documentation file for the project.
├── setup.sh                   # A shell script for quick setup (legacy, for reference or local use).
├── models/                    # This directory stores pre-trained models used by tools like `detect` and `find`. It is typically ignored by Git due to the large file sizes.
│   ├── model_descriptions.json  # Contains descriptions of the available models.
│   ├── settings.json            # Contains settings related to model management and training runs.
│   └── *.pt                     # Pre-trained model.
├── src/                       # Contains the source code for the 🪄 ImageSorcery MCP server.
│   └── imagesorcery_mcp/       # The main package directory for the server.
│       ├── README.md            # High-level overview of the core architecture (server and middleware).
│       ├── __init__.py          # Makes `imagesorcery_mcp` a Python package.
│       ├── __main__.py          # Entry point for running the package as a script.
│       ├── logging_config.py    # Configures the logging for the server.
│       ├── server.py            # The main server file, responsible for initializing FastMCP and registering tools.
│       ├── middleware.py        # Custom middleware for improved validation error handling.
│       ├── logs/                # Directory for storing server logs.
│       ├── scripts/             # Contains utility scripts for model management.
│       │   ├── README.md        # Documentation for the scripts.
│       │   ├── __init__.py      # Makes `scripts` a Python package.
│       │   ├── create_model_descriptions.py # Script to generate model descriptions.
│       │   ├── download_clip.py # Script to download CLIP models.
│       │   ├── post_install.py  # Script to run post-installation tasks.
│       │   └── download_models.py # Script to download other models (e.g., YOLO).
│       ├── tools/               # Contains the implementation of individual MCP tools.
│       │   ├── README.md        # Documentation for the tools.
│       │   ├── __init__.py      # Makes `tools` a Python package.
│       │   └── *.py           # Implements the tool.
│       ├── prompts/             # Contains the implementation of individual MCP prompts.
│       │   ├── README.md        # Documentation for the prompts.
│       │   ├── __init__.py      # Makes `prompts` a Python package.
│       │   └── *.py           # Implements the prompt.
│       └── resources/           # Contains the implementation of individual MCP resources.
│           ├── README.md        # Documentation for the resources.
│           ├── __init__.py      # Makes `resources` a Python package.
│           └── *.py           # Implements the resource.
└── tests/                     # Contains test files for the project.
    ├── test_server.py         # Tests for the main server functionality.
    ├── data/                  # Contains test data, likely image files used in tests.
    ├── tools/                 # Contains tests for individual tools.
    ├── prompts/               # Contains tests for individual prompts.
    └── resources/             # Contains tests for individual resources.
### 開発環境のセットアップ
  1. リポゞトリをクロヌンしたす
git clone https://github.com/sunriseapps/imagesorcery-mcp.git # Or your fork
cd imagesorcery-mcp
  1. 掚奚仮想環境を䜜成しお有効化したす
python -m venv venv
source venv/bin/activate # For Linux/macOS
# venv\Scripts\activate    # For Windows
  1. 開発甚の䟝存関係ずずもに、パッケヌゞを線集可胜モヌドでむンストヌルしたす
pip install -e ".[dev]"

これにより、imagesorcery-mcp ず、[project.dependencies] および [project.optional-dependencies].dev に蚘茉されたすべおの䟝存関係build ず twine を含むがむンストヌルされたす。

ルヌル

これらのルヌルは、人間ず AI を問わず、すべおの貢献者に適甚されたす。

  1. プロゞェクト内のすべおの README.md ファむルを読みたす。プロゞェクトの構成ず目的を理解し、貢献のガむドラむンも確認したす。タスクずの関連性を考え、適切な倉曎方法を怜蚎しおください。

  2. pyproject.toml を読みたす。 [tool.ruff]、[tool.ruff.lint]、[project.optional-dependencies]、[project]dependencies の各セクションを確認しおください。 pyproject.toml で定矩されたコヌドスタむルに厳密に埓っおください。 pyproject.toml の䟝存関係で定矩された技術スタックを䜿甚し、正圓な理由なしに新しい䟝存関係を远加しないでください。

  3. 新芏および既存のファむルにコヌドを蚘述したす。 新しい䟝存関係が必芁な堎合は、pyproject.toml を曎新し、pip install -e . たたは pip install -e ".[dev]" でむンストヌルしおください。pip install で盎接むンストヌルしないでください。 既存の゜ヌスコヌド䟋src/imagesorcery_mcp/server.py、src/imagesorcery_mcp/tools/crop.pyを参考にしおください。コヌドスタむル、呜名芏則、入出力デヌタ圢匏、コヌド構成、アヌキテクチャなど、既存のコヌドに準拠しおください。

  4. 倉曎内容に関連する README.md ファむルを曎新したす。 既存の README.md ファむルの圢匏ず構成に準拠しおください。

  5. コヌドのテストを䜜成したす。 既存のテスト䟋tests/test_server.py、tests/tools/test_crop.pyを参考にしおください。コヌドスタむル、呜名芏則、入出力デヌタ圢匏、コヌド構成、アヌキテクチャなど、既存のテストに準拠しおください。

  6. テストずリンタヌを実行し、すべおが正垞に動䜜するこずを確認したす

pytest
ruff check .

倱敗がある堎合は、コヌドずテストを修正しおください。新しいコヌドがすべおリンタヌのルヌルに準拠し、すべおのテストに合栌するこずが必須です。

コヌディングのヒント
  • 適切な箇所で型ヒントを䜿甚しおください
  • デヌタの怜蚌ずシリアラむズには Pydantic を䜿甚しおください

📝 ご質問ですか

プロゞェクトに぀いおご質問、問題、ご提案がある堎合は、お気軜に以䞋たでご連絡ください。

  • プロゞェクト䜜成者titulusLinkedIn
  • Sunrise Apps の CEOVlad KarmLinkedIn

バグ報告や機胜リク゚ストに぀いおは、リポゞトリで Issue を䜜成するこずもできたす。

📜 ラむセンス

このプロゞェクトは MIT ラむセンスの䞋でラむセンスされおいたす。MIT ラむセンスの利甚条件に埓う限り、゜フトりェアを自由に䜿甚、倉曎、配垃できたす。

コメント

MCP は初めおですか

プロトコルの抂芁から最初のサヌバヌの導入たで、よくある疑問にたずめお答えたす。

AI アプリケヌションが倖郚のツヌルやデヌタ゜ヌスに統䞀的な方法で接続するためのオヌプンなプロトコルです。クラむアントはモデルずの察話を担い、MCP サヌバヌはツヌル・リ゜ヌス・プロンプトテンプレヌトを提䟛したす。暙準メッセヌゞでやり取りするため、1 ぀のサヌバヌを耇数のクラむアントで再利甚できたす。