mcpField
M
mc-mod-config

mc-mod-config

Local
github.com/dcd887Games & Entertainment0Updated 5d ago

About mc-mod-config

mc-mod-config is an MCP server for users who manage Minecraft modpack configuration files. It handles `.cfg`, `.toml`, and `.json` files, with offline validation, comparison, and orphan detection.

Key features

  1. 01Parse `.cfg`, `.toml`, and `.json` configs
  2. 02Scan and list configuration files
  3. 03Check empty values, invalid numbers, and parse errors
  4. 04Compare configs before and after updates
  5. 05Find configs without a matching installed mod
  6. 06Provide defaults for selected popular mods

Use cases

  1. 01Find common issues in modpack configs
  2. 02Review config changes after an update
  3. 03Clean up configs left by removed mods

MCP support

The server exposes tools for reading, scanning, validating, comparing, and finding orphaned configs, as well as retrieving defaults. Processing can run offline.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"dcd887-mc-mod-config": {
"command": "npx",
"args": [
"-y",
"mc-mod-config-mcp"
]
}
}
}
Run commandnpx -y mc-mod-config-mcp

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npmmc-mod-config-mcp1.0.0

Tools

6

Saved tool list · updated 5d ago

ParameterTypeRequiredDescription
configPathstringYesPath to the config file (.cfg, .toml, or .json)

Details

From the project README

mc-mod-config-mcp

M8ven Verified

MCP server for Minecraft mod configuration file management. Reads, validates, compares, and cleans up .cfg, .toml, and .json config files from modpacks.

Tools

ToolDescription
read_mod_configParse a single config file (.cfg, .toml, .json) and return structured data with any issues
list_mod_configsRecursively scan a config directory and list all configs with mod ID, format, and size
validate_mod_configsValidate all configs for common issues: empty values, invalid numbers, parse errors, oversized strings
compare_mod_configsDiff two config directories (before/after modpack update) and report added/removed/changed files
find_orphaned_configsFind config files whose mod JAR is no longer present in the mods/ directory
get_mod_default_configReturn known default/baseline config for popular mods (Sodium, OptiFine, Phosphor, Lithium, Fabric API)

Supported Config Formats

FormatExtensionLoader
Forge INI-style.cfgForge
Fabric TOML.tomlFabric
JSON.jsonAny

Features

  • Multi-format parsing — handles Forge .cfg, Fabric .toml, and .json configs natively
  • Validation engine — detects empty values, invalid numbers, parse errors, and oversized strings
  • Config comparison — key-level diff for tracking changes across modpack updates
  • Orphan detection — matches config files against installed mod JARs plus a built-in known-mods database
  • Default configs — bundled known-good defaults for popular performance mods
  • Fully offline — no network calls; all data is local or built-in

Installation

Prerequisites
  • Node.js 18+
  • npm
Build
cd mc-mod-config-mcp
npm install
npm run build
Run as standalone MCP server
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:

{
  "mcpServers": {
    "mc-mod-config": {
      "command": "node",
      "args": ["${MC_MOD_CONFIG_ROOT}/dist/index.js"]
    }
  }
}

Path note: Replace ${MC_MOD_CONFIG_ROOT} with the absolute path to this project's root directory. On Windows, use forward slashes: ["C:/path/to/mc-mod-config-mcp/dist/index.js"](把 C:/path/to/ 替换成你的实际路径)。 Alternatively, set an environment variable MC_MOD_CONFIG_ROOT pointing to the project root and use the variable in the config.

Configuration

本工具零配置即可用(内置默认值,任何环境开箱即用)。以下项目可通过环境变量或项目根目录 .env 文件覆盖(复制 .env.example 为 .env):

变量默认值说明
MOD_CONFIG_EXTENSIONScfg,toml,json支持扫描/解析的配置文件扩展名(逗号分隔,可扩展自定义扩展名)
MOD_CONFIG_MAX_FILE_MB50单个配置文件大小上限(MB),超过则跳过
MOD_CONFIG_MAX_STRING_LEN500校验时字符串值长度告警阈值

扩展已知模组默认配置库:编辑 src/mod-defaults.json(构建后为 dist/mod-defaults.json),在 defaults 下新增/覆盖模组即可,无需改代码。例如新增 "iris": { "name": "Iris", "fallbackConfig": { "enableShaders": true } }。

优先级:环境变量 > .env 文件 > 内置默认值。改动后重启 MCP server 生效。

Usage Examples

Read a config file
{
  "name": "read_mod_config",
  "arguments": {
    "configPath": "/path/to/mods/sodium/sodium.toml"
  }
}
List all configs in a modpack
{
  "name": "list_mod_configs",
  "arguments": {
    "configDir": "/path/to/modpack/config"
  }
}
Validate configs for issues
{
  "name": "validate_mod_configs",
  "arguments": {
    "configDir": "/path/to/modpack/config"
  }
}
Compare configs before and after an update
{
  "name": "compare_mod_configs",
  "arguments": {
    "oldConfigDir": "/path/to/old-modpack/config",
    "newConfigDir": "/path/to/new-modpack/config"
  }
}
Find orphaned configs
{
  "name": "find_orphaned_configs",
  "arguments": {
    "modsDir": "/path/to/modpack/mods",
    "configDir": "/path/to/modpack/config"
  }
}
Get default config for a mod
{
  "name": "get_mod_default_config",
  "arguments": {
    "modId": "sodium"
  }
}

Architecture

mc-mod-config-mcp/
├── src/
│   └── index.ts        # MCP server + all tool implementations
├── dist/               # Compiled JavaScript (output of tsc)
├── skills/
│   └── mc-mod-config-helper.md  # Trae Work skill for config management
├── __tests__/
│   └── unit.test.ts    # Unit tests (fully offline)
├── package.json        # Node.js dependencies (@modelcontextprotocol/sdk, zod)
├── tsconfig.json       # TypeScript config (CommonJS output)
└── .gitignore

The MCP uses the official @modelcontextprotocol/sdk v1.x with McpServer and StdioServerTransport.

Testing

npm run build
npm test

All unit tests are fully offline and do not require a Minecraft installation.

Platform Compatibility

ToolWindowsmacOSLinux
read_mod_config✅✅✅
list_mod_configs✅✅✅
validate_mod_configs✅✅✅
compare_mod_configs✅✅✅
find_orphaned_configs✅✅✅
get_mod_default_config✅✅✅

All tools use cross-platform Node.js fs and path APIs. All paths are resolved as absolute paths before processing. The Forge .cfg parser handles sections, type detection, and quoted values; the Fabric .toml parser handles nested tables and arrays.

License

MIT

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.