Mcp Drawthings について
Mcp Drawthings は Draw Things と LLM をつなぎ、MCP クライアントから Mac 上で画像を生成・変換できるようにします。現在のモデルや設定も確認できます。
主な機能
- 01プロンプトから画像を生成
- 02プロンプトで画像を変換
- 03設定とロード済みモデルの確認
- 04Mac 上での画像生成処理
活用シーン
- 01テキスト説明から画像を作成
- 02既存画像のバリエーションを作成
- 03Draw Things の稼働状況とモデルを確認
MCP 対応
MCP サーバーは、稼働状況の確認、設定の取得、テキストからの画像生成、画像変換のツールを公開します。Draw Things とは HTTP で通信します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
4掲載時のツール一覧 · 2 週間前に更新
このツールにパラメーターはありません。
詳細
mcp-drawthings
Draw Things 用の MCP (Model Context Protocol) サーバーです。LLM が Mac 上で Stable Diffusion やその他の AI モデルを使ってローカルに画像を生成できるようにします。
機能
- テキストから画像の生成 - Draw Things に現在読み込まれているモデルを使用して、テキストプロンプトから画像を生成します
- 画像から画像への変換 - テキストプロンプトを使用して既存の画像を変換します
- 設定へのアクセス - 現在の Draw Things 設定と読み込まれているモデルを照会します
- ローカル処理 - すべての画像生成は Apple Silicon (M1/M2/M3/M4) を使用して Mac 上でローカルに実行されます
前提条件
- Apple Silicon (M1/M2/M3/M4) を搭載した macOS
- Draw Things アプリがインストールされていること
- Node.js 18 以降
セットアップ
1. Draw Things の API サーバーを有効にする
- Draw Things を開きます
- 歯車アイコン (⚙️) をクリックして設定を開きます
- API Server / HTTP Server を有効にします
- サーバーはデフォルトでポート 7860 で動作します
サーバーが動作していることを確認します:
curl http://localhost:7860
2. MCP クライアントを設定する
Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json に追加します:
{
"mcpServers": {
"drawthings": {
"command": "npx",
"args": ["-y", "mcp-drawthings"]
}
}
}
Cursor
プロジェクト内またはグローバル設定の .cursor/mcp.json に追加します:
{
"mcpServers": {
"drawthings": {
"command": "npx",
"args": ["-y", "mcp-drawthings"]
}
}
}
3. MCP クライアントを再起動する
Claude Desktop または Cursor を再起動して、新しい MCP サーバーを読み込みます。
利用可能なツール
check_status
Draw Things の API サーバーが動作していてアクセス可能かどうかを確認します。
get_config
読み込まれているモデルと設定を含む、現在の Draw Things 設定を取得します。
generate_image
テキストプロンプトから画像を生成します。
パラメータ:
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
prompt | string | はい | 生成する画像のテキスト記述 |
negative_prompt | string | いいえ | 生成される画像から除外する要素 |
width | number | いいえ | 画像の幅 (ピクセル単位、デフォルト: 512) |
height | number | いいえ | 画像の高さ (ピクセル単位、デフォルト: 512) |
steps | number | いいえ | 推論ステップ数 (デフォルト: 20) |
cfg_scale | number | いいえ | ガイダンススケール (デフォルト: 7.5) |
seed | number | いいえ | 再現性のためのランダムシード (ランダムの場合は -1) |
output_path | string | いいえ | 画像を保存するカスタムファイルパス |
例:
Generate an image of a futuristic city at sunset with flying cars
transform_image
テキストプロンプトを使用して既存の画像を変換します (img2img)。
パラメータ:
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
prompt | string | はい | 希望する変換のテキスト記述 |
image_path | string | いいえ* | ソース画像ファイルへのパス |
image_base64 | string | いいえ* | Base64 エンコードされたソース画像 |
negative_prompt | string | いいえ | 除外する要素 |
denoising_strength | number | いいえ | 変換の強度 0.0~1.0 (デフォルト: 0.75) |
steps | number | いいえ | 推論ステップ数 (デフォルト: 20) |
cfg_scale | number | いいえ | ガイダンススケール (デフォルト: 7.5) |
seed | number | いいえ | ランダムシード (ランダムの場合は -1) |
output_path | string | いいえ | 結果を保存するカスタムファイルパス |
*image_path または image_base64 のいずれかを指定する必要があります。
設定
環境変数
| 変数 | デフォルト | 説明 |
|---|---|---|
DRAWTHINGS_HOST | localhost | Draw Things API のホスト |
DRAWTHINGS_PORT | 7860 | Draw Things API のポート |
DRAWTHINGS_OUTPUT_DIR | ~/Pictures/drawthings-mcp | 生成された画像の保存ディレクトリ |
アーキテクチャ
┌─────────────────┐ stdio ┌──────────────────┐ HTTP ┌─────────────┐
│ MCP Client │◄──────────────►│ mcp-drawthings │◄────────────►│ Draw Things │
│ (Claude/Cursor) │ JSON-RPC │ │ localhost │ App │
└─────────────────┘ └──────────────────┘ :7860 └─────────────┘
│
▼
┌──────────────┐
│ File System │
│ (images) │
└──────────────┘
開発
# Clone the repository
git clone https://github.com/james-see/mcp-drawthings
cd mcp-drawthings
# Install dependencies
npm install
# Build
npm run build
# Run in development mode
npm run dev
トラブルシューティング
「Draw Things API に接続できません」
- Draw Things が動作していることを確認します
- Draw Things の設定で API Server が有効になっていることを確認します
- サーバーにアクセスできることを確認します:
curl http://localhost:7860 - Draw Things で別のポートが設定されていないか確認します
画像が生成されない
- Draw Things にモデルが読み込まれていることを確認します
- Draw Things にエラーメッセージがないか確認します
- まず Draw Things で直接画像を生成してみてください
画像保存時の権限エラー
出力ディレクトリが書き込み可能であることを確認してください。DRAWTHINGS_OUTPUT_DIR 環境変数を使用してカスタムディレクトリを設定できます。
ライセンス
MIT
関連プロジェクト
- Draw Things - Mac/iOS 向けの AI 画像生成アプリ
- Model Context Protocol - プロトコル仕様
- @modelcontextprotocol/sdk - MCP 用の TypeScript SDK
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。