mcpField
P
packwarden

packwarden

ローカル
github.com/packwarden-devゲーム・エンタメ03 日前に更新

packwarden について

PackWardenは、各ゲームコミュニティのThunderstore向けMODパックを構築・管理するMCPサーバーです。MOD検索、依存関係の解決、パックの状態確認に加え、r2modmanやThunderstore Mod Manager用のプロファイル出力に対応します。

主な機能

  1. 01コミュニティや条件でMODを検索
  2. 02推移的なパッケージ依存関係を解決
  3. 03競合や古いMODを監査
  4. 04MOD管理ツール用の.r2zプロファイルを出力
  5. 05パッケージデータをキャッシュしAPIの再試行間隔を調整

活用シーン

  1. 01ThunderstoreのゲームコミュニティでMODを探す
  2. 02パックの依存関係不足や競合を確認
  3. 03削除済みまたは古いバージョンを一覧で点検
  4. 04MOD管理ツールへのインポート用プロファイルを出力

MCP 対応

Thunderstoreのコミュニティ、検索、依存関係、監査、プロファイル出力のツールをMCPクライアントに提供します。stdioまたはステートレスなStreamable HTTPサービスとして動作します。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"packwarden-dev-packwarden": {
"command": "npx",
"args": [
"-y",
"@packwarden-dev/thunderstore-mcp"
]
}
}
}
起動コマンドnpx -y @packwarden-dev/thunderstore-mcp

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

パッケージ
npm@packwarden-dev/thunderstore-mcp0.1.0

ツール

5

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

パラメーター型必須説明
filterstringいいえ

詳細

PackWarden — Thunderstore Mod-Pack MCP Server (v0.1.0)

PackWarden は Thunderstore と提携しておらず、Thunderstore からの推奨も受けていません。 「Thunderstore」は互換性を説明する目的でのみ使用しています。 Mod データは公開されている Thunderstore API(https://thunderstore.io)から取得しています。

AI アシスタントが Thunderstore の Mod パック(Lethal Company、Risk of Rain 2、Valheim、およびその他すべての Thunderstore コミュニティ向け)の作成と管理を行えるよう支援する MCP サーバーです。

ツール

ツール機能
list_communitiesThunderstore のゲームコミュニティ(識別子+名前)を一覧表示します。
search_modsコミュニティを名前/所有者/説明/カテゴリで検索し、関連度、ダウンロード数、評価、更新日時で並べ替えます。
resolve_dependencies1 つ以上のパッケージ/バージョンについて、推移的な依存関係をすべて解決します。最終的なインストール対象、不足している依存関係、複数バージョンの固定、オプションのツリーを確認できます。
check_pack_healthMod リストを監査します。見つからない Mod、削除されたバージョン、非推奨、古いバージョン、不足している依存関係、依存関係のバージョン競合、重複、NSFW を確認します。
export_r2modman_profile.r2z プロファイルを書き出します(r2modman/Thunderstore Mod Manager の「Import profile → From file」)。依存関係と設定ファイルを含めることもできます。アップロードは行われません。

Mod は Owner-Name(最新)または Owner-Name-1.2.3 として指定します。

インストール

Node.js ≥ 18.17 が必要です。

git clone <repo> thunderstore-mcp && cd thunderstore-mcp
npm install && npm run build
Claude Desktop

claude_desktop_config.json を編集します(macOS:~/Library/Application Support/Claude/、Windows:%APPDATA%\Claude\)。

{
  "mcpServers": {
    "thunderstore": {
      "command": "node",
      "args": ["/absolute/path/to/thunderstore-mcp/dist/main.js"],
      "env": { "TSMCP_EXPORT_DIR": "/absolute/path/for/profiles" }
    }
  }
}

Claude Desktop を再起動します。

Cursor

~/.cursor/mcp.json(グローバル)または .cursor/mcp.json(プロジェクト)を使用します。

{
  "mcpServers": {
    "thunderstore": {
      "command": "node",
      "args": ["/absolute/path/to/thunderstore-mcp/dist/main.js"]
    }
  }
}
Streamable HTTP(リモート/セルフホスト可能)
npm run start:http            # http://127.0.0.1:3333/mcp
PORT=8080 HOST=0.0.0.0 node dist/main.js --http

Cursor:{ "mcpServers": { "thunderstore": { "url": "http://127.0.0.1:3333/mcp" } } }。 HTTP モードはステートレス(POST のみ、JSON レスポンス)で、認証機能はありません。外部に公開する前に、TLS と認証を設定したリバースプロキシの背後に配置してください。

設定(環境変数)

変数デフォルト説明
TSMCP_CACHE_DIR~/.cache/thunderstore-mcp軽量なパッケージインデックスのキャッシュ
TSMCP_LIST_TTL_MS3600000 (1h)パッケージ一覧の有効期間
TSMCP_MIN_INTERVAL_MS1000外部リクエスト間の最小間隔
TSMCP_EXPORT_DIR./exports.r2z ファイルの書き出し先
TSMCP_CONTACT[email protected]User-Agent に含める連絡先。独自のコピーを実行する場合は上書きしてください。
TSMCP_BRANDPackWardenサーバー名/User-Agent に含めるブランド
TSMCP_BASE_URLhttps://thunderstore.ioAPI のベース URL

API を適切に利用するために

  • 各コミュニティのパッケージ一覧を TTL ごとに 1 回ダウンロードし、その後は条件付きリクエスト(If-Modified-Since)を使用します。結果は軽量なインデックスとしてディスクにキャッシュされます。
  • 外部リクエストは直列化され(同時実行数 1)、1 秒以上の間隔を空けて送信されます。429/5xx の場合、クライアントはバックオフし、Retry-After に従います。
  • 連絡先アドレスを含む識別可能な User-Agent を使用します。
  • ネットワークに障害が発生した場合も、サーバーは古いキャッシュを提供し続けます。

テスト(ライブ API)

npm test                         # default community: valheim
TEST_COMMUNITY=valheim npm test

ライブ Thunderstore API に対する stdio と Streamable HTTP のエンドツーエンドテストが含まれています。

制限事項

  • 大規模なコミュニティでは負荷が大きくなります。Lethal Company の初回読み込みでは約 330 MB の JSON をダウンロードし、約 14 秒かかり、約 1.4 GB の RAM を使用します。その後、キャッシュからの読み込みには約 3 秒かかります。
  • 依存関係の解決は r2modman の動作に従い、要求されたバージョンのうち最も高いものを優先します。Thunderstore では正確なバージョンが固定されるため、semver の範囲解決は行いません。
  • プロファイルの コード 共有には対応していません。Thunderstore へのアップロードが必要になるためです。ファイルの書き出しのみ対応しています。
  • 検索はローカルでのキーワードスコアリングを使用し、Thunderstore 独自の検索順位は使用しません。

コメント

MCP は初めてですか?

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

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