Build, debug, port, or inspect Minecraft Java Edition mods for Fabric, NeoForge, and Architectury with the `minecraft-modding` MCP server. Use for Minecraft mod work involving supported loader workspaces, Mixins, access wideners, Yarn/intermediary/Mojang mappings, common-vs-platform module splits, version migration, registry or resource debugging, and mod JAR inspection or remapping.
Support fast, version-aware Minecraft modding. Treat the minecraft-modding
MCP server as the primary source of truth, then turn verified findings into
working code and assets.
minecraft-modding MCP server from @adhisang/minecraft-modding-mcp.projectPath.inspect-minecraft, analyze-symbol, compare-minecraft, validate-project, analyze-mod, and manage-cache.gradle.properties, build.gradle, build.gradle.kts, settings.gradle, fabric.mod.json, neoforge.mods.toml, mixin configs, and nearby registration classes.projectPath to MCP tools.references/fabric.md for Fabric projects.references/neoforge.md for NeoForge projects.references/architectury.md for Architectury multi-module projects.references/bootstrap-from-template.md when the workspace is a sparse template.references/task-checklists.md for the requested feature slice.references/mcp-recipes.md when payload shape, recovery, or sequencing is unclear.inspect-minecraft or analyze-symbol.If no project exists yet, ask only for loader, Minecraft version, modid, and package name. If the task depends on an external generator or template that is not present, say so explicitly instead of fabricating generated files.
inspect-minecraft: versions, artifacts, vanilla classes, source search, raw files.analyze-symbol: existence, mappings, lifecycle, workspace compile-time names.compare-minecraft: migration and registry/class diffs.validate-project: workspace, Mixin, and access widener validation.analyze-mod: mod JAR summary, search, decompile, remap preview/apply.manage-cache: stale cache or index diagnosis.projectPath, preferProjectVersion=true, and preferProjectMapping=true when supported.version to tools that require it, such as validate-mixin, validate-access-widener, and resolve-workspace-symbol.resolve-artifact first, then find-class, search-class-source, get-artifact-file, or list-artifact-files.projectPath, loader, version, and mapping are known.
manage-cache, index-artifact, or remap/mutating flows in parallel with calls that depend on the same cache or JAR.references/mcp-recipes.md before inventing fields or dropping to a lower-level tool.common and loader-specific wiring in platform modules unless the workspace already uses another verified pattern.common by default and move only loader-bound code to fabric or neoforge.@ExpectPlatform, Architectury abstractions, or a plain Java interface/service split only when the code truly needs platform-specific behavior.Run verification as part of the default workflow, not as an optional extra.
./gradlew build after structural code changes../gradlew runDatagenrunClient task or equivalent.GRADLE_USER_HOME before treating home-directory lock or cache failures as project issues.At minimum, aim to leave the project in a state that passes build or has a concrete, localized reason why it cannot.
validate-project, then validate-mixin if you need exact issue detail. Confirm the owner, method name, descriptor, and mapping namespace before patching code.validate-project, then validate-access-widener with an explicit version. Confirm that the header namespace matches the entry names.level.isClientSide() or equivalent boundaries.compare-minecraft, then diff the affected class signatures, then update mappings and loader-specific APIs.When one of these categories matches, read the corresponding section in references/task-checklists.md and the loader-specific Common Pitfalls section before broad rewrites.
references/fabric.mdreferences/neoforge.mdreferences/architectury.mdreferences/bootstrap-from-template.mdreferences/task-checklists.mdreferences/mcp-recipes.md