Sandbox
@MCDxAI/minecraft-dev-mcp

MCP server for Minecraft mod development

Minecraft Dev MCP gives agents direct access to Minecraft source, mappings, and mod JAR analysis. It runs over stdio or HTTP and caches downloaded jars, mappings, decompiled source, and search indexes for reuse across sessions.

38 stars10 forksTypeScriptUpdated 1mo ago
Who it's for

Builders who want their agent to inspect Minecraft code, compare versions, and analyze mods without leaving the workflow.

What it delivers

You can ask your agent to decompile, search, remap, and validate Minecraft code instead of doing that work by hand.

What it does

On-demand decompilation

Downloads, remaps, and decompiles Minecraft versions on first use, then serves cached source later.

Multiple mapping namespaces

Translates names across Yarn, Mojmap, Intermediary, and obfuscated mappings with `find_mapping`.

Mod JAR analysis

Inspects Fabric, Quilt, Forge, and NeoForge mods for metadata, mixins, dependencies, entry points, and source.

Mixin and access file validation

Checks Mixin annotations, Fabric access wideners, and Forge or NeoForge access transformers against real bytecode.

Version diff and search

Compares Minecraft versions and builds full-text search indexes for fast code lookup.

Standalone CLI

Provides `minecraft-dev-cli` for scripts and automation without an MCP client.

How to get it

  1. 1For clients or editors that connect over HTTP instead of stdio, start the server in HTTP…
    minecraft-dev-mcp --http --port 3000
  2. 2A standalone CLI (minecraft-dev-cli) invokes the same tools directly — no MCP client…
    # List every tool with its parameters
    minecraft-dev-cli list-tools
    
    # Invoke a tool with flags
    minecraft-dev-cli get_minecraft_source --version 1.21.10 --className net.minecraft.world.entity.Entity --mapping yarn
    
    # Boolean / numeric / JSON values are coerced automatically
    minecraft-dev-cli analyze_mod_jar --jarPath C:\mods\example.jar --includeAllClasses true
  3. 3Build from source
    git clone https://github.com/MCDxAI/minecraft-dev-mcp.git
    cd minecraft-dev-mcp
    npm install
    npm run build

README

Minecraft Dev MCP

A Model Context Protocol server that gives AI assistants native access to Minecraft mod development tools — decompile, remap, search, and analyze Minecraft source code directly from your AI workflow.

License Node.js MCP SDK Java WSL


Quick Start

Prerequisites

RequirementDetails
Node.js 18+nodejs.org
Java 17+Required for decompilation and remapping • Verify with java -versionAdoptium or Oracle JDK

Installation

MethodCommand
NPM (Recommended)npm install -g @mcdxai/minecraft-dev-mcp
NPX (No Install)Use npx -y @mcdxai/minecraft-dev-mcp directly in config
From SourceSee the Development section

Claude Desktop

Add to your Claude Desktop configuration file:

PlatformConfig Path
Windows%APPDATA%\Claude\claude_desktop_config.json
macOS~/Library/Application Support/Claude/claude_desktop_config.json
Linux~/.config/Claude/claude_desktop_config.json

NPM installation:

{
  "mcpServers": {
    "minecraft-dev": {
      "command": "minecraft-dev-mcp"
    }
  }
}

NPX (no installation required):

{
  "mcpServers": {
    "minecraft-dev": {
      "command": "npx",
      "args": ["-y", "@mcdxai/minecraft-dev-mcp"]
    }
  }
}

Claude Code

Add to .claude/settings.local.json in your project, or to your global Claude Code settings:

{
  "mcpServers": {
    "minecraft-dev": {
      "command": "minecraft-dev-mcp"
    }
  }
}

HTTP Transport

For clients or editors that connect over HTTP instead of stdio, start the server in HTTP mode. It uses the MCP Streamable HTTP transport with per-session isolation.

FlagDescription
--httpStart with the Streamable HTTP transport instead of stdio
--port <number>Port to listen on (default: 3000) — also implies --http
--host <address>Host to bind to (default: 127.0.0.1)
minecraft-dev-mcp --http --port 3000

The MCP endpoint is http://<host>:<port>/mcp (POST to call, GET for the SSE stream, DELETE to end a session). Each client gets its own session, so multiple clients can connect concurrently.

Security: the default host 127.0.0.1 enables the SDK's DNS-rebinding protection automatically. Binding to a non-loopback host (e.g. --host 0.0.0.0) disables that protection — only do so on a trusted network, ideally behind a reverse proxy or auth.


CLI

A standalone CLI (minecraft-dev-cli) invokes the same tools directly — no MCP client required — for scripts, skills, and automation. Arguments are flags-only (--key value or --key=value) to avoid the JSON-quoting issues positional JSON arguments cause in PowerShell and other shells.

# List every tool with its parameters
minecraft-dev-cli list-tools

# Invoke a tool with flags
minecraft-dev-cli get_minecraft_source --version 1.21.10 --className net.minecraft.world.entity.Entity --mapping yarn

# Boolean / numeric / JSON values are coerced automatically
minecraft-dev-cli analyze_mod_jar --jarPath C:\mods\example.jar --includeAllClasses true

Output is always JSON: { "success": true, "tool": "...", "result": ... } on success, or { "success": false, "tool": "...", "error": "..." } with exit code 1 on failure. Run minecraft-dev-cli help for full usage.


Features

FeatureDescription
On-demand decompilationDownload, remap, and decompile any Minecraft version (1.14+) on first use — cached for instant access afterward
Multiple mapping namespacesYarn, Mojmap (official), Intermediary, and obfuscated — translate any symbol between them with find_mapping
Decompiled source accessRetrieve Java source for any Minecraft class with optional line-range filtering
Mod JAR analysisAnalyze Fabric, Quilt, Forge, and NeoForge mods — metadata, mixins, dependencies, entry points — and decompile them
Mixin, Access Widener & Access Transformer validationValidate Mixin annotations, Fabric .accesswidener files, and Forge/NeoForge access transformer .cfg files with error reporting and fix suggestions. Access widener/transformer checks run against the game's real bytecode, catching inherited members, record constructors, inner-class reachability, and conflicts across multiple AT files
Version diffClass-level and AST-level diff between any two Minecraft versions — method signatures, field changes, breaking changes
Full-text searchSQLite FTS5 indexes for fast BM25-ranked search across Minecraft and mod source

21 tools across 4 categories — see docs/tools.md for the full reference.


Common Workflows

WorkflowSteps
First-time source accessCall get_minecraft_source — server downloads, remaps, and decompiles (~5 min first run). Subsequent requests for the same version return in ~50 ms from cache.
Analyze a third-party modanalyze_mod_jarremap_mod_jardecompile_mod_jarsearch_mod_code or index_mod + search_mod_indexed
Validate a Fabric mixinanalyze_mixin with your Java source or file path — validates targets, injection points, and method selectors against the decompiled MC version.
Find breaking changes between versionscompare_versions for a high-level overview, then compare_versions_detailed scoped to specific packages for full AST-level diffs.
Fast broad searchindex_minecraft_version once, then search_indexed with FTS5 queries: entity AND damage, "onBlockBreak", tick*, BlockEntity NOT render.
Translate obfuscated namesfind_mapping with sourceMapping: "official" to look up the Yarn or Mojmap equivalent for any class, method, or field.

Version Support

Version RangeYarnMojmapNotes
1.14 – 1.21.11Full supportFull supportObfuscated — two-step remapping required (official → intermediary → named)
26.1+Not availableFull supportDeobfuscated by Mojang — no remapping needed, classes already human-readable

Yarn mappings are discontinued after 1.21.11, which is the last obfuscated Minecraft version. All 26.1+ releases ship with readable class and method names and only require Mojmap.

Tested versions: 1.19.4 · 1.20.1 · 1.21.10 · 1.21.11 · 26.1-snapshot-8 · 26.1-snapshot-9


Configuration

Environment VariableDescription
CACHE_DIROverride the default cache directory location
LOG_LEVELLogging verbosity: DEBUG, INFO, WARN, ERROR
{
  "mcpServers": {
    "minecraft-dev": {
      "command": "minecraft-dev-mcp",
      "env": {
        "CACHE_DIR": "/custom/cache/path",
        "LOG_LEVEL": "DEBUG"
      }
    }
  }
}

Cache Location

Downloaded JARs, mappings, decompiled source, and search databases live in a platform-specific cache directory shared across all workspaces (~400–500 MB per Minecraft version).

PlatformCache Path
Windows%APPDATA%\minecraft-dev-mcp
macOS~/Library/Application Support/minecraft-dev-mcp
Linux / WSL~/.config/minecraft-dev-mcp

Delete the directory to clear the cache — the server re-downloads anything missing on next use. To relocate the cache anywhere on disk, set the CACHE_DIR environment variable (see Configuration).

Cache Contents

PathContents
jars/Client and server JARs
mappings/Yarn, Mojmap, and Intermediary mapping files
remapped/Remapped JARs
decompiled/<version>/<mapping>/Decompiled Minecraft source
decompiled-mods/<modId>/<modVersion>/<mapping>/Decompiled third-party mod source
registry/<version>/Extracted registry data (blocks, items, entities)
resources/Java tool JARs (VineFlower, tiny-remapper)
cache.dbSQLite metadata database
search_index.dbSQLite FTS5 full-text search index
minecraft-dev-mcp.logServer log file

Development

TaskCommand
Install dependenciesnpm install
Buildnpm run build
Dev mode (hot reload)npm run dev
Testsnpm test

Build from source:

git clone https://github.com/MCDxAI/minecraft-dev-mcp.git
cd minecraft-dev-mcp
npm install
npm run build

Troubleshooting

IssueSolution
Java not foundJava 17+ is required but not foundInstall Java 17+ from Adoptium • Verify with java -version • Ensure java is on your PATH
Decompilation failsCheck available disk space (~500 MB per version) • Review %APPDATA%\minecraft-dev-mcp\minecraft-dev-mcp.log • Force re-decompile by passing "force": true
Yarn not availableYarn mappings not available for version XYarn is only supported for 1.14–1.21.11 • Use mojmap for 26.1+ versions
Class not foundUse the fully qualified class name (e.g., net.minecraft.world.entity.Entity) • Verify the version is decompiled
Registry returns no dataRegistry names use singular form: block, item, entity — not blocks, items, entities
WSL path errorBoth /mnt/c/path/to/file and C:\path\to\file are accepted for all JAR path parameters

Credits

ProjectDetails
VineFlowerModern Java decompiler by the Vineflower Team
tiny-remapperJAR remapping tool by FabricMC
Yarn MappingsCommunity-maintained mappings by FabricMC
MCP SDKProtocol implementation by Anthropic

Files in the repo

Repository payload23 top-level entries
  • __tests__
  • .claude
  • .github
  • ai_reference
  • docs
  • skills
  • src
  • tools
  • .gitattributes
  • .gitignore
  • .mcp.json
  • AGENTS.md
  • biome.json
  • CHANGELOG.md
  • CLAUDE.md
  • LICENSE
  • package-lock.json
  • package.json
  • README.md
  • tsconfig.json
  • vitest.config.ts
  • vitest.manual.config.ts
  • vitest.mojmap.config.ts

Discussion (0)

Ask about usage, or say what you built with it

Sign in to join the discussion.

No comments yet. Be the first to say what this is good for.

More connectors

Real-time global intelligence dashboard. AI-powered news aggregation, geopolitical monitoring, and infrastructure tracking in a unified situational awareness interface

86k

High-performance code intelligence MCP server. Indexes codebases into a persistent knowledge graph — average repo in milliseconds. 158 languages, sub-ms queries, 99% fewer tokens. Single static binary, zero dependencies.

43k

Universal provider proxy for OpenAI Codex & Claude Code — use any LLM (Claude, Gemini, Grok, DeepSeek, Ollama…) with Codex CLI, App, SDK, and Claude Code

14k
okf-memory/
okf-agent-memory

Git-native persistent memory for AI coding agents. Implements Google OKF v0.2 with sub-300µs in-memory BM25 search, embedded MCP server, and progressive disclosure. Slashes token bloat by 80% with zero external databases or dependencies. Built in pure Go.

547
tirth8205/
code-review-graph

Local-first code intelligence graph for MCP and CLI. Builds a persistent map of your codebase so AI coding tools read only what matters, with benchmarked context reductions on reviews and large-repo workflows.

31k
2akouwu/
reverify

Stop your AI from making things up — it proposes, deterministic tools decide, every claim checked against ground truth with evidence. Grounded facts and context survive resets. Reverse engineering is the proving ground. MCP server + CLI.

1.1k