diff --git a/README.md b/README.md index a635982..87597fb 100644 --- a/README.md +++ b/README.md @@ -1,23 +1,27 @@
+

Minecraft Dev MCP Server

+

MCP Server for Minecraft Mod Development

+

Access decompiled Minecraft source code through Claude Desktop and other MCP clients

+
-# Minecraft Dev MCP Server - -[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE) -[![Node Version](https://img.shields.io/badge/node-%3E%3D18.0.0-brightgreen)](package.json) -[![MCP](https://img.shields.io/badge/MCP-Compatible-blue)](https://modelcontextprotocol.io) - -**MCP Server for Minecraft Mod Development** - -Access decompiled Minecraft source code through Claude Desktop and other MCP clients - -A comprehensive Model Context Protocol (MCP) server that provides LLMs with the ability to decompile Minecraft JARs, apply mappings (Yarn, Mojmap), and expose deobfuscated source code for AI-assisted Fabric mod development. - +
+ + + + + +
+

A comprehensive Model Context Protocol (MCP) server that provides LLMs with the ability to decompile Minecraft JARs, apply mappings (Yarn, Mojmap), and expose deobfuscated source code for AI-assisted Fabric mod development.

+
-## Core Capabilities +
+

Core Capabilities

+
+
@@ -48,13 +52,13 @@ A comprehensive Model Context Protocol (MCP) server that provides LLMs with the
FeatureUses Vineflower decompiler and tiny-remapper
-
+

Prerequisites

+
-## Prerequisites - +
@@ -69,13 +73,13 @@ A comprehensive Model Context Protocol (MCP) server that provides LLMs with the
RequirementRequired for decompilation tools
Check: java -version
Install: Adoptium or Oracle JDK
-
+

Installation

+
-## Installation - +
@@ -97,25 +101,20 @@ npm run build
Method
-
- -## Quick Start - +

Quick Start

- -### 1. Configure Claude Desktop - +

1. Configure Claude Desktop

-Add to your Claude Desktop config file: -
+Add to your Claude Desktop config file: + @@ -137,47 +136,47 @@ Add to your Claude Desktop config file: -
- **NPM Installation:** -
{
+```json
+{
   "mcpServers": {
     "minecraft-dev": {
       "command": "minecraft-dev-mcp"
     }
   }
-}
+} +``` **Source Installation:** -
{
+```json
+{
   "mcpServers": {
     "minecraft-dev": {
       "command": "node",
       "args": ["/path/to/minecraft-dev-mcp/dist/index.js"]
     }
   }
-}
+} +```
- -### 2. Restart Claude Desktop - +

2. Restart Claude Desktop

-Restart Claude Desktop to load the MCP server. -
- -### 3. Start Using - +

Restart Claude Desktop to load the MCP server.

-In Claude Desktop, you can now ask questions like: +
+

3. Start Using

+
+In Claude Desktop, you can now ask questions like: +
Platform
@@ -193,21 +192,17 @@ In Claude Desktop, you can now ask questions like:
- -## Available Tools - +

Available Tools

- -### get_minecraft_source - +

get_minecraft_source

-Get decompiled source code for a specific class. -
+Get decompiled source code for a specific class. +
"Show me the Entity class from Minecraft 1.21.10 using Yarn mappings"
@@ -235,22 +230,22 @@ Get decompiled source code for a specific class. **Example:** -
{
+```json
+{
   "version": "1.21.10",
   "className": "net.minecraft.world.entity.Entity",
   "mapping": "yarn"
-}
+} +```
- -### decompile_minecraft_version - +

decompile_minecraft_version

-Decompile an entire Minecraft version (runs once, then cached). -
+Decompile an entire Minecraft version (runs once, then cached). +
Parameter
@@ -278,37 +273,39 @@ Decompile an entire Minecraft version (runs once, then cached). **Example:** -
{
+```json
+{
   "version": "1.21.10",
   "mapping": "yarn"
-}
+} +```
- -### list_minecraft_versions - +

list_minecraft_versions

-List available and cached Minecraft versions. +
+

List available and cached Minecraft versions.

+
**Returns:** -
{
+```json
+{
   "cached": ["1.21.10"],
   "available": ["1.21.10", "1.21.9", "..."],
   "total_available": 800
-}
+} +```
- -### get_registry_data - +

get_registry_data

-Get Minecraft registry data (blocks, items, entities, etc.). -
+Get Minecraft registry data (blocks, items, entities, etc.). +
Parameter
@@ -331,27 +328,25 @@ Get Minecraft registry data (blocks, items, entities, etc.). **Example:** -
{
+```json
+{
   "version": "1.21.10",
   "registry": "blocks"
-}
+} +```
- -## Architecture - +

Architecture

- -### Cache Structure - +

Cache Structure

-All data is cached in a platform-specific directory: -
+All data is cached in a platform-specific directory: +
Parameter
@@ -373,12 +368,9 @@ All data is cached in a platform-specific directory: -
- **Cache Layout:**
-
Platform
@@ -417,19 +409,17 @@ All data is cached in a platform-specific directory:
DirectoryLog file
-
-
- **Cache Size:** - ~400-500 MB per Minecraft version (JAR + mappings + decompiled source) - Vineflower + tiny-remapper: ~1 MB (one-time download)
+

Technology Stack

+
-### Technology Stack - +
@@ -460,23 +450,17 @@ All data is cached in a platform-specific directory:
Componentbetter-sqlite3 (metadata caching)
-
- -## Configuration - +

Configuration

- -### Environment Variables - +

Environment Variables

- @@ -491,12 +475,12 @@ All data is cached in a platform-specific directory:
VariableSet logging level (DEBUG, INFO, WARN, ERROR)
-
**Example:** -
{
+```json
+{
   "mcpServers": {
     "minecraft-dev": {
       "command": "minecraft-dev-mcp",
@@ -506,24 +490,21 @@ All data is cached in a platform-specific directory:
       }
     }
   }
-}
+} +```
- -## Workflow Examples - +

Workflow Examples

- -### Example 1: First-Time Decompilation - +

Example 1: First-Time Decompilation

-When you request source code for the first time: -
+When you request source code for the first time: + @@ -557,20 +538,18 @@ When you request source code for the first time:
Step
-
- **Total:** ~5 minutes first time -
- -### Example 2: Subsequent Requests (Cached) -
-When you request another class from the same version: +
+

Example 2: Subsequent Requests (Cached)

+
+When you request another class from the same version: + @@ -589,18 +568,15 @@ When you request another class from the same version:
Step
-
- **Total:** ~50ms (instant) -
- -## Troubleshooting -
+

Troubleshooting

+
+
@@ -631,17 +607,13 @@ When you request another class from the same version:
Issue
-
- -## Development - +

Development

- @@ -673,115 +645,21 @@ npm run build
Task npm run dev
-
- -## Performance - +

License

- -### Benchmarks (Minecraft 1.21.10 with Yarn) - +

MIT License - see LICENSE file for details

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
OperationFirst TimeCached
Download JAR~30sInstant
Download Mappings~5sInstant
Remap JAR~2 minInstant
Decompile (8000+ classes)~3 minInstant
Get Class Source~5 min<100ms
- +

Credits

-**Hardware:** Intel i7-12700K, 32GB RAM, SSD -
- -## Contributing - -
- -Contributions welcome! Please see [ARCHITECTURE.md](./ARCHITECTURE.md) for system design details. - -
- - - - - - - - - - - - - - - - - - - - - - - - - - -
StepAction
1Fork the repository
2Create a feature branch
3Make your changes
4Run tests and type check
5Submit a pull request
- -
- -
- -## License - -
- -MIT License - see [LICENSE](./LICENSE) file for details - -
- -## Credits - -
- -
- @@ -804,17 +682,13 @@ MIT License - see [LICENSE](./LICENSE) file for details
ProjectProtocol implementation by Anthropic
-
- -## Support - +

Support

- @@ -833,11 +707,8 @@ MIT License - see [LICENSE](./LICENSE) file for details
ResourceARCHITECTURE.md
-
- -**Built with ❤️ for the Minecraft modding community** - +

Built with ❤️ for the Minecraft modding community