🚀 Civitai MCP Server
このサーバーは、Model Context Protocol (MCP) を利用して、AIアシスタントがCivitaiの豊富なAIモデル、クリエイター、生成コンテンツにアクセスできるようにします。MCP対応のAIアシスタントを通じて、AIモデルをシームレスに閲覧、検索、発見できます。

✨ 主な機能
🔍 モデルの発見
- 高度な検索: タイプ、クリエイター、タグなどを使った柔軟なフィルタリングでAIモデルを見つけることができます。
- カテゴリー別閲覧: タイプ(チェックポイント、LoRA、ControlNetなど)別にモデルを探索できます。
- 人気とトレンド: 最もダウンロードされたり、高評価を受けたモデルを発見できます。
- 最新モデル: 新しくアップロードされたモデルを最新情報を追跡できます。
- ハッシュ検索: ファイルハッシュでモデルを検索し、検証することができます。
👨💻 クリエイターとコミュニティ
- クリエイタープロフィール: モデルのクリエイターを閲覧および検索できます。
- クリエイターコレクション: 特定のクリエイターのすべてのモデルを表示できます。
- タグシステム: Civitaiの包括的なタグシステムを通じてモデルを探索できます。
🖼️ 生成コンテンツ
- 画像ギャラリー: 詳細なメタデータ付きのAI生成画像を閲覧できます。
- 生成パラメータ: プロンプト、設定、モデル情報にアクセスできます。
- コミュニティショーケース: コミュニティからの刺激的な作品を発見できます。
📊 モデルの知見
- 詳細なモデル情報: 完全なモデル仕様、バージョン、ファイルを提供します。
- バージョン履歴: モデルの更新と改善を追跡できます。
- ダウンロードURL: 認証をサポートしたモデルダウンロードへの直接アクセスができます。
- コンテンツセーフティ: ピクルスキャンとウイルスセーフティの結果にアクセスできます。
📦 インストール
前提条件
- Node.js 18以上
- npmまたはyarn
- Civitai APIキー(オプションですが、高いレート制限を得るために推奨)
クイックスタート
- リポジトリをクローンします:
git clone https://github.com/Cicatriiz/civitai-mcp-server.git
cd civitai-mcp-server
- 依存関係をインストールします:
npm install
- サーバーをビルドします:
npm run build
- APIキーを設定します(オプション):
export CIVITAI_API_KEY="your_api_key_here"
- サーバーを起動します:
npm start
Civitai APIキーの取得方法
- Civitai API Keysにアクセスします。
- Civitaiアカウントにログインします。
- 新しいAPIキーを生成します。
- キーをコピーし、環境変数として設定します。
📚 ドキュメント
MCPクライアントの設定
サーバーをMCPクライアントの設定に追加します。
Claude Desktop
claude_desktop_config.json
に以下を追加します。
{
"mcpServers": {
"civitai": {
"command": "node",
"args": ["/path/to/civitai-mcp-server/dist/index.js"],
"env": {
"CIVITAI_API_KEY": "your_api_key_here"
}
}
}
}
その他のMCPクライアント
クライアントのドキュメントに従って設定します。
- コマンド:
node /path/to/civitai-mcp-server/dist/index.js
- トランスポート: stdio
- 環境変数:
CIVITAI_API_KEY=your_key
💻 使用例
基本的なモデル検索
アニメに関連するSDXL LoRAモデルを検索します。
- ツール: search_models
- クエリ: "anime"
- タイプ: ["LORA"]
- ベースモデル: ["SDXL 1.0"]
人気モデルの検索
今週最もダウンロードされたモデルを取得します。
- ツール: get_popular_models
- 期間: "Week"
- 制限: 10
モデルの詳細情報取得
特定のモデルの詳細情報を取得します。
- ツール: get_model
- モデルID: 12345
生成画像の閲覧
最近のAI生成画像を閲覧します。
- ツール: browse_images
- ソート: "Newest"
- 制限: 50
- NSFW: "None"
利用可能なツール
ツール |
説明 |
主要パラメータ |
search_models |
フィルターを使ってモデルを検索します |
query , types , sort , baseModels |
get_model |
モデルの詳細情報を取得します |
modelId |
get_model_version |
モデルのバージョン詳細を取得します |
modelVersionId |
get_model_version_by_hash |
ファイルハッシュでモデルを検索します |
hash |
browse_images |
生成された画像を閲覧します |
sort , period , modelId |
get_creators |
クリエイターを検索します |
query , limit |
get_tags |
モデルのタグを閲覧します |
query , limit |
get_popular_models |
最も人気のあるモデルを取得します |
period , limit |
get_latest_models |
最新のモデルを取得します |
limit |
get_top_rated_models |
最も評価の高いモデルを取得します |
period , limit |
search_models_by_tag |
特定のタグが付いたモデルを検索します |
tag , sort |
search_models_by_creator |
クリエイターのモデルを検索します |
username , sort |
get_models_by_type |
モデルのタイプでフィルタリングします |
type , sort |
get_download_url |
モデルのダウンロードURLを取得します |
modelVersionId |
🔧 技術詳細
モデルタイプ
Checkpoint
- 完全なStable Diffusionモデル
LORA
- 低ランク適応モデル
TextualInversion
- テキスト埋め込みモデル
Hypernetwork
- ハイパーネットワークモデル
ControlNet
- ControlNetモデル
AestheticGradient
- 審美勾配モデル
Poses
- ポーズモデル
ソートオプション
Highest Rated
- コミュニティからの最高評価
Most Downloaded
- 最もダウンロードされた
Newest
- 最近アップロードされた
期間
AllTime
- 時間制限なし
Year
- 過去12か月
Month
- 過去30日
Week
- 過去7日
Day
- 過去24時間
APIのカバレッジ
このMCPサーバーは、Civitai API v1の主要なエンドポイントをすべて実装しています。
- ✅
/api/v1/models
- モデルの一覧表示と検索
- ✅
/api/v1/models/:id
- 特定のモデルの取得
- ✅
/api/v1/model-versions/:id
- モデルのバージョン取得
- ✅
/api/v1/model-versions/by-hash/:hash
- ハッシュでバージョンを取得
- ✅
/api/v1/images
- 画像の閲覧
- ✅
/api/v1/creators
- クリエイターの一覧表示
- ✅
/api/v1/tags
- モデルタグの一覧表示
- ✅ 認証をサポートしたダウンロードURL
サポートされるモデルタイプ
- Checkpoint: 完全なStable Diffusionモデル
- LORA: 低ランク適応モデル
- TextualInversion: テキスト埋め込みモデル
- Hypernetwork: ハイパーネットワークモデル
- AestheticGradient: 審美勾配モデル
- Controlnet: ControlNetモデル
- Poses: ポーズモデル
コンテンツフィルタリング
サーバーはCivitaiのコンテンツフィルタリングシステムをサポートしています。
- NSFWコンテンツレベル(None, Soft, Mature, X)
- 商用利用許可
- モデルのライセンスオプション
エラーハンドリング
サーバーは以下のエラーを包括的にハンドリングします。
- APIのレート制限
- ネットワーク接続問題
- 無効なパラメータ
- 認証エラー
- データ検証エラー
開発
プロジェクト構造
civitai-mcp-server/
├── src/
│ ├── index.ts # メインサーバー実装
│ ├── civitai-client.ts # Civitai APIクライアント
│ └── types.ts # TypeScriptの型定義
├── dist/ # コンパイルされたJavaScript出力
├── tests/ # テストファイル
└── docs/ # 追加のドキュメント
ソースからのビルド
npm install
npm run build
npm test
npm run dev
テスト
npm test
node test.js
node comprehensive-test.js
コントリビューション
コントリビューションを歓迎します!詳細はContributing Guideを参照してください。
開発環境のセットアップ
- リポジトリをフォークします。
- 機能ブランチを作成します。
- 変更を加えます。
- 新機能に対するテストを追加します。
- プルリクエストを送信します。
制限事項
- レート制限: Civitai APIにはレート制限があります。高い制限を得るにはAPIキーを使用してください。
- NSFWコンテンツ: 一部のコンテンツはアカウント設定に基づいてフィルタリングされる場合があります。
- モデルの可用性: 一部のモデルは一時的に利用できない場合や、認証が必要な場合があります。
トラブルシューティング
一般的な問題
サーバーが起動しない場合:
- Node.js 18以上がインストールされていることを確認してください。
- すべての依存関係がインストールされていることを確認してください (
npm install
)。
- ビルドが正常に完了したことを確認してください (
npm run build
)。
APIのレート制限に達した場合:
- Civitai APIキーを取得し、
CIVITAI_API_KEY
環境変数を設定してください。
- 制限に達した場合は、リクエスト頻度を減らしてください。
モデルが見つからない場合:
- モデルIDの正確性を確認してください。
- モデルが削除されたり、非公開になっていないことを確認してください。
- 検索クエリのスペルが正しいことを確認してください。
📄 ライセンス
MITライセンス - 詳細はLICENSEファイルを参照してください。
関連プロジェクト
サポート