Mc Modpack

io.github.dcd887由 GitHub 帳號 dcd887 發布v1.3.0更新於 Oct 24, 2026

整合包元数据管理与发布检查(mods、版本、加载器)

概覽

AI 產生的概覽

用於 Minecraft 模組包診斷的本機 MCP 伺服器:檢查執行個體、模組、日誌與崩潰報告,並偵測模組衝突。

可以做什麼
  • 列出並檢查執行個體中的模組,可用正規表達式篩選
  • 讀取執行個體中繼資料:遊戲版本、載入器、Java 需求、JVM 參數
  • 偵測已知模組衝突並提供替換建議
  • 掃描 mods 目錄中的非 JAR 檔案、原始碼包與腳本
  • 依等級、關鍵字與結尾行數讀取 latest.log
  • 尋找並分析崩潰報告,分類錯誤並提出修正建議
適用情境
適合在模組包崩潰、無法啟動或模組組合可疑時排查問題,讓助理讀取日誌、崩潰報告與執行個體中繼資料並提出修正建議。
執行需求
需要 Node.js 18+ 與 npm,從原始碼建置後以 stdio 執行編譯產物。需要 Minecraft 執行個體目錄,macOS 與 Linux 上所有工具都必須明確傳入 mc_dir。Java 版本清單依賴 Windows 上的 PCL 啟動器。選用的 AI 診斷需要 DASHSCOPE_API_KEY 環境變數;Modrinth 查詢需要網路存取。
安裝前請注意
設定 DASHSCOPE_API_KEY 後,AI 診斷會把蒐集到的診斷資料傳送給 DashScope(通義千問)這個位於中國的第三方 API;其餘診斷引擎完全離線。工具會讀取所指定 Minecraft 目錄中的檔案,請謹慎限定 mc_dir 範圍。測試腳本會建立備份並寫入日誌。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Mc Modpack,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

mc-modpack-mcp

[M8ven Verified]

MCP (Model Context Protocol) server for Minecraft modpack diagnostics. Supports Fabric/Forge mod conflict detection, log analysis, crash reports, and AI-powered intelligent diagnosis. Core diagnostic engine is fully offline; optional AI analysis uses China-based DashScope (通义千问) API. get_java_versions requires PCL launcher on Windows; all other tools work cross-platform.

Features

  • Java version detection — reads PCL config to list all available Java runtimes with version recommendations
  • Version info — parses instance JSON to extract Minecraft version, loader, Java requirements, JVM args
  • Conflict detection — finds known problematic mod combinations from an external rules.json (easily extensible)
  • Cleanliness scan — detects non-JAR files, source jars, scripts in mods/ directory
  • Log analysis — reads latest.log with level filtering (INFO/WARN/ERROR) and keyword search
  • Crash report analysis — finds crash reports, classifies errors, and suggests fixes automatically
  • Dependency lookup — queries Modrinth API for mod version and dependency info
  • Human-readable output — all tools return friendly text with emojis and 💡 tips, plus JSON below --- JSON ---
  • CLI mode — run npm run diagnose for an interactive terminal-based diagnosis (no MCP needed)
  • External rules engine — edit src/rules.json to add new conflicts, crash patterns, or Java version ranges without touching code

Tools

ToolDescription
get_java_versionsList all Java runtimes from PCL config
get_version_infoRead instance metadata (version, loader, Java, JVM args, mod count)
list_modsScan mods/ directory, optionally filter by regex
detect_conflictsDetect known mod conflicts with auto-replacement recommendations
scan_cleanlinessFind non-JAR files, source jars, scripts in mods/
read_logRead latest.log with level/keyword/tail filtering
find_crash_reportsList all crash reports in crash-reports/
analyze_crashParse a crash report, extract exception type and summary
check_mod_dependenciesQuery Modrinth API for mod deps and compatibility
get_replacement_recommendationsGet replacement mod suggestions for known conflicts
ai_diagnose🤖 AI-powered full diagnostics report using 通义千问 (requires DASHSCOPE_API_KEY)

Installation

Prerequisites

  • Node.js 18+
  • npm
  • A Minecraft instance (any launcher — macOS/Linux users must pass mc_dir explicitly for all tools)

Note: get_java_versions reads PCL launcher config and works on Windows only. All other tools are cross-platform.

Build

bash
cd mc-modpack-mcpnpm installnpm run build

Run as standalone MCP server

bash
node dist/index.js

The server communicates via stdio (JSON-RPC 2.0). It can be consumed by any MCP-compatible client.

Configuration for MCP clients

Add to your MCP client config (e.g., .mcp.json or equivalent):

json
{  "mcpServers": {    "mc-modpack": {      "command": "node",      "args": ["/absolute/path/to/mc-modpack-mcp/dist/index.js"]    }  }}

Usage Examples

Get Java versions from PCL

json
{  "name": "get_java_versions",  "arguments": {    "mc_dir": "{your_minecraft_directory}"  }}

Detect conflicts in an instance

json
{  "name": "detect_conflicts",  "arguments": {    "mc_dir": "{your_minecraft_directory}",    "instance_id": "rpg"  }}

Read WARN logs (last 50 lines)

json
{  "name": "read_log",  "arguments": {    "mc_dir": "{your_minecraft_directory}",    "instance_id": "rpg",    "level": "WARN",    "tail": 50  }}

Check mod dependencies via Modrinth

json
{  "name": "check_mod_dependencies",  "arguments": {    "project_id": "sodium",    "mc_version": "1.20.1",    "loader": "fabric"  }}

Architecture

mc-modpack-mcp/├── src/│   └── index.ts        # All tool implementations + MCP server setup├── dist/               # Compiled JavaScript (output of tsc)├── skills/│   └── mc-modpack-helper/│       └── SKILL.md    # Trae Work skill for modpack diagnostics├── package.json        # Node.js dependencies (@modelcontextprotocol/sdk, zod)├── tsconfig.json       # TypeScript config (CommonJS output)├── .gitignore├── test.js             # Integration test runner├── test_logs/          # Test output logs (gitignored)└── backups/            # Backup snapshots from tests (gitignored)

The MCP uses the official @modelcontextprotocol/sdk v1.x with McpServer and StdioServerTransport. All tools use server.tool() registration pattern compatible with the MCP SDK specification.

AI Module (src/ai.ts)

ai_diagnose 工具使用独立模块封装通义千问 API,提供:

  • callQwen(prompt) — 调用 Qwen 模型生成报告
  • buildDiagnosePrompt(data) — 构建诊断 prompt,整合所有结构化数据

Skills

This repository also includes a Trae Work skill for modpack diagnostics. After cloning, copy the skill to your Trae Work skills directory:

Windows (PowerShell):

powershell
copy skills\mc-modpack-helper\SKILL.md "$env:USERPROFILE\.trae\skills\mc-modpack-helper\SKILL.md"

macOS / Linux:

bash
mkdir -p ~/.trae/skills/mc-modpack-helpercp skills/mc-modpack-helper/SKILL.md ~/.trae/skills/mc-modpack-helper/SKILL.md

See SKILL.md for the full skill documentation with 8-phase diagnostic workflow.

Testing

bash
npm run buildMC_DIR=/path/to/your/.minecraft node test.js

Or on Windows (PowerShell):

powershell
$env:MC_DIR="C:\path\to\your\.minecraft"; node test.js

Tests create backups before running and log results to test_logs/. See individual test log files for detailed output.

Platform Compatibility

ToolWindowsmacOSLinux
get_java_versions✅ Full⚠️ PCL-only⚠️ PCL-only
get_version_info✅✅✅
list_mods✅✅✅
detect_conflicts✅✅✅
scan_cleanliness✅✅✅
read_log✅✅✅
find_crash_reports✅✅✅
analyze_crash✅✅✅
check_mod_dependencies✅✅✅

All tools accept mc_dir as an explicit path. get_java_versions auto-detects PCL on Windows; on other platforms it returns a clear message when PCL config is absent.

Using the Rules Engine

All conflict rules, Java version mappings, and crash analysis patterns live in src/rules.json. You can customize them without modifying source code:

json
{  "conflicts": [    {      "id": "my-custom-conflict",      "name": "My Custom Conflict",      "patterns": ["mod-a", "mod-b"],      "severity": "error",      "solution": "Install only one of these mods.",      "emoji": "🔴"    }  ],  "javaVersionMap": [    { "mcFrom": "1.20.5", "mcTo": "1.20.6", "minJava": 17, "recommendedJava": 21, "notes": "..." }  ],  "crashAnalysisPatterns": [    { "keywords": ["my-error-pattern"], "category": "custom", "solution": "Do something about it." }  ]}
SectionPurpose
conflictsMod conflict detection rules
javaVersionMapMinecraft → Java version compatibility
crashAnalysisPatternsCrash report classification and fix suggestions

CLI Usage

Run a quick interactive diagnosis without setting up MCP:

bash
npm run diagnose# orMC_DIR=/path/to/.minecraft npm run diagnose

The CLI will:

  1. Auto-detect your Minecraft instance
  2. Check Java runtimes (PCL on Windows)
  3. Scan for mod conflicts
  4. Check directory cleanliness
  5. Review crash reports

License

MIT

來源:README.md,提交 22262c5

工具

0
SourceWeft 曾在隔離沙箱中以無憑證方式啟動該軟體包一次,以列出其工具,但未能完成:伺服器未能啟動。

版本歷史

1
  1. v1.3.0最新Oct 23, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分