mcpField
I
Image to SVG

Image to SVG

ローカル
botmonster.comメディア・デザイン1116 週間前に更新

Image to SVG について

ラスター画像を拡大縮小可能な SVG に変換する MCP サーバーです。画像データや URL を受け取り、トレース、色処理、出力の細かさを調整できます。

主な機能

  1. 01ラスター画像を SVG に変換
  2. 02Base64 データや画像 URL に対応
  3. 03一般的なラスター形式に対応
  4. 04色やトレース設定の調整
  5. 05ローカルファイルへの任意アクセス

活用シーン

  1. 01ロゴを拡大縮小可能な形式に変換
  2. 02URL 上の画像を SVG に変換
  3. 03色精度を下げて簡略化した画像を作成

MCP 対応

MCP クライアントに画像から SVG への変換ツールを提供します。入力は Base64 画像データまたは URL で、ベクトル化パラメーターを指定できます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"botmonster-image2svg": {
"command": "uvx",
"args": [
"image2svg-mcp"
]
}
}
}
起動コマンドuvx image2svg-mcp

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypiimage2svg-mcp1.0.1

ツール

1

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
modestringいいえトレースモード:'spline'(滑らかな曲線)、'polygon'(直線のエッジ)、または 'none'(ピクセル単位で忠実)
colormodestringいいえカラーモード:'color' はフルカラー、'binary' は白黒の線画
image_urlanyいいえ画像を取得する URL(PNG、JPG、または WEBP)。これか image_base64 のいずれか一方を指定してください。
hierarchicalstringいいえレイヤーの配置:'stacked'(重なりあり)または 'cutout'(重なりなし)
image_base64anyいいえBase64 エンコードされた画像データ(PNG、JPG、または WEBP)。これか image_url のいずれか一方を指定してください。
filter_speckleintegerいいえこのピクセル数以下の斑点を除去します。値を大きくすると画像はきれいになりますが、小さなディテールが失われます。デフォルト:4。
max_iterationsintegerいいえ曲線フィッティングの最大反復回数。値が大きいほど精度は高くなりますが、処理は遅くなります。デフォルトは 10 です。
path_precisionintegerいいえSVG パス座標の小数精度。値が小さいほどファイルサイズは小さくなります。デフォルトは 8 です。
color_precisionintegerいいえ色の量子化に使用する有効ビット数。値が小さいほど色数が減り、SVG が簡素になります。デフォルトは 6 です。
corner_thresholdintegerいいえコーナー検出の角度しきい値(度)。デフォルトは 60 です。
layer_differenceintegerいいえレイヤーを統合する色差のしきい値。値が大きいほどレイヤー数が減り、SVG が簡素になります。デフォルトは 16 です。
length_thresholdnumberいいえパスセグメントの最小長。デフォルトは 4.0 です。
splice_thresholdintegerいいえスプラインをつなぐ角度しきい値。デフォルトは 45 です。

詳細

image2svg-mcp

PyPI Docker License Tests

ラスター画像(PNG、JPG、WEBP)をスケーラブルな SVG ベクターグラフィックに変換する MCP サーバーです。

機能

  • 画像をBase64 エンコードデータまたはURLとして受け付けます
  • PNG、JPG、JPEG、WEBP、TIFF など、一般的なラスター形式に対応しています
  • ベクター化パラメーター(色精度、スペックル除去、トレースモードなど)を細かく制御できます
  • data:image/...;base64, URI プレフィックスを自動的に処理します
  • URL からのダウンロードをストリーミングし、サイズを 5 MB に制限します
  • ローカル画像用の file:// URL に対応しています(--allow-local-files-path でオプトイン)

使い方

実際の動作を確認するには、画像をオンラインで SVG に変換してください。

Claude Code と Claude Desktop

settings.json に追加します。

{
  "mcpServers": {
    "image2svg": {
      "command": "uvx",
      "args": ["image2svg-mcp"]
    }
  }
}

Claude Code では、コマンドラインを使って追加します。

claude mcp add image2svg --scope user -- uvx image2svg-mcp

ローカルファイルへのアクセスを有効にする場合:

claude mcp add image2svg --scope user -- uvx image2svg-mcp --allow-local-files-path /home/user/images
Docker

HTTP サーバーとして実行します。

docker run -p 8000:8000 ghcr.io/botmonster/image2svg-mcp

ローカルファイルへのアクセスを有効にする場合:

docker run -p 8000:8000 -v /home/user/images:/images ghcr.io/botmonster/image2svg-mcp --allow-local-files-path /images
claude mcp add image2svg --transport http --scope user http://localhost:8000/mcp

これにより、次のようなプロンプトを使用できます。

このローカルファイルを SVG に変換してください:file://logo.png

指定したディレクトリ(およびそのサブディレクトリ)内のファイルにのみアクセスできます。ディレクトリートラバーサルを防ぐため、パスは正規化されます。このフラグを指定しない場合、file:// URL は拒否されます。

プロンプトの例

このツールを使って LLM に依頼できることの例を紹介します。

1. シンプルな画像から SVG への変換

山々の向こうに沈む夕日の画像を生成してから、SVG に変換してください。

LLM はラスター画像を生成し、その後、デフォルト設定で convert_image_to_svg ツールを使って、きれいなベクター画像を作成します。

2. 特定のパラメーターを指定した細かな変換

青い円の中に白い星があるロゴを作成してください。次に、輪郭がくっきりするようにバイナリの colormode を使って SVG に変換し、ノイズを除去するために filter_speckle を 10 に設定してください。

これは、白黒の線画風の出力に colormode: "binary" を使用します。ロゴやアイコンに最適です。filter_speckle の値を大きくすると、小さなアーティファクトが除去されます。

3. ミニマルなスタイルで URL から変換

ミニマルなポスター風にするため、色精度を低くして、この画像をシンプルな SVG に変換してください:https://example.com/photo.png

color_precision: 3 を使用すると色数が大幅に減り、アーティスティックなポスタライズ風のベクター効果が得られます。スタイリッシュなイラストに最適です。

4. Base64 画像を直接変換

この Base64 画像を SVG に変換してください:iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAO0lEQVR4nGP8z8Dwn4EIwESMIqwKGRn+MzBisYQJXRE2NopCbKYgi5Huxv8MjBiSyGJMuCTQNTJSPRwBCjYOD5JU5rIAAAAASUVORK5CYII=

中央に青い円がある 10x10 の赤い正方形です。URL が不要なため、インライン画像データを使ったツールのテストに便利です。

ツールのパラメーター

パラメーター型デフォルト範囲説明
image_base64文字列--Base64 でエンコードされた画像データです。image_url またはこちらのいずれかを指定してください。
image_url文字列--画像を取得する URL です(有効化されている場合は http://、https://、または file://)。image_base64 またはこちらのいずれかを指定してください。
colormode文字列"color"color、binaryフルカラーまたは白黒の線画です。
mode文字列"spline"spline、polygon、noneトレースモードです。滑らかな曲線、直線のエッジ、またはピクセル単位で忠実な出力を選択します。
filter_speckle整数40-128N ピクセル以下の斑点を除去します。
color_precision整数61-12色の量子化ビット数です。値を小さくすると色数が減り、SVG がシンプルになります。
layer_difference整数160-128レイヤーを結合する際の色差です。
corner_threshold整数600-180角を検出する角度のしきい値(度)です。
length_threshold浮動小数点数4.03.5-10.0パスセグメントの最小長です。
splice_threshold整数450-180スプラインを接続する角度のしきい値です。
path_precision整数81-12SVG 座標の小数点以下の桁数です。
hierarchical文字列"stacked"stacked、cutoutレイヤーの配置モードです。
max_iterations整数101-100曲線フィッティングの最大反復回数です。

開発

インストール
git clone https://github.com/botmonster/image2svg-mcp.git
cd image2svg-mcp
uv sync
テストの実行
uv run pytest tests/ -v
MCP Inspector の実行
uv run fastmcp dev inspector src/image2svg_mcp/server.py:mcp

ライセンス

Apache 2.0 - LICENSE を参照してください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。