Skip to main content

MCP Server for Minecraft datapack development with wiki, Spyglass, Misode, and Mojira integrations

Project description

๐ŸŽฎ MineCode MCP

MCP Server for Minecraft Datapack Development Written for Hackaton about CMP sponsored by dustt, alpic, etc. Please star if you would like to help out. Please write issues for me to fix.

PyPI Python License

MineCode is a Model Context Protocol (MCP) server that gives AI assistants like GitHub Copilot and Claude real-time access to Minecraft data, documentation, and datapack generators.

alt text

โœจ Features

  • ๐Ÿ”ง 27 MCP Tools for Minecraft development
  • ๐Ÿ“š Minecraft Wiki integration (search, pages, categories)
  • ๐Ÿ› Mojira bug tracker search
  • ๐Ÿ” Spyglass API (registries, commands, block states)
  • ๐ŸŽจ Misode Generators (loot tables, recipes, worldgen presets)

๐Ÿš€ Installation

pip install minecode-mcp

โš™๏ธ Configuration

VS Code (GitHub Copilot)

Add to User Settings (Ctrl+Shift+P โ†’ "MCP: Open User Configuration"):

{
	"servers": {
		"minecode": {
			"type": "stdio",
			"command": "py",
			"args": [
				"-m",
				"minecode.server"
			]
		}
	},
	"inputs": []
}

Or create .vscode/mcp.json in your workspace:

{
	"servers": {
		"minecode": {
			"type": "stdio",
			"command": "py",
			"args": [
				"-m",
				"minecode.server"
			]
		}
	},
	"inputs": []
}

Claude Desktop

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "minecode": {
      "command": "minecode"
    }
  }
}
OS Config Path
Windows %APPDATA%\Claude\claude_desktop_config.json
macOS ~/Library/Application Support/Claude/claude_desktop_config.json
Linux ~/.config/Claude/claude_desktop_config.json

โš™๏ธ Development

Follow these steps to set up a local development environment, run the MCP server, and publish releases.

  • Development environment:

    PowerShell (Windows):

     python -m venv venv
     .\venv\Scripts\Activate.ps1
     python -m pip install --upgrade pip build twine
     python -m pip install -e .
    

    Bash (macOS/Linux):

     python -m venv venv
     source venv/bin/activate
     python -m pip install --upgrade pip build twine
     python -m pip install -e .
    
  • Run the MCP server locally:

    • Using the venv Python:
       .\venv\Scripts\python.exe -m minecode.server
      
    • Or with py on Windows / python on other OSes:
       python -m minecode.server
      
  • Configure VS Code to use the running server (GitHub Copilot MCP): create .vscode/mcp.json in the workspace (example above) so Copilot/other MCP clients can connect to minecode.server.

  • Release workflow (single-script): use the provided scripts/release.ps1 to bump, build and publish.

  • Release (recommended): a single PowerShell script handles bumping, building, tagging, pushing, and publishing.

    Prerequisites:

    • Create and activate a Python virtualenv and install build + twine.
    • Put your PyPI API token in pip_token.txt (single line) or set PYPI_API_TOKEN as an environment/secret.

    Usage examples (PowerShell):

    • Build only: .\scripts\release.ps1
    • Bump patch, tag, push, and publish: .\scripts\release.ps1 -Bump -Publish
    • Publish without bump: .\scripts\release.ps1 -Publish

    The script prefers venv\Scripts\python.exe when present and will fall back to the system python.

    CI: a GitHub Actions workflow (.github/workflows/publish.yml) publishes on tag push; add PYPI_API_TOKEN to repository secrets.

  • Manual build & publish (alternative):

     python -m build
     export TWINE_USERNAME=__token__
     export TWINE_PASSWORD=<PYPI_API_TOKEN>
     python -m twine upload dist/*
    
  • CI: a GitHub Actions workflow (.github/workflows/publish.yml) is included to publish on tag push; add PYPI_API_TOKEN to repository secrets.

๐Ÿ› ๏ธ Available Tools

Minecraft Wiki

Tool Description
search_wiki Search for wiki pages
get_wiki_page Get page content and summary
get_wiki_commands List all Minecraft commands
get_wiki_category Get pages in a category
get_wiki_page_content Get full page content for a wiki page
get_wiki_command_info Get detailed command documentation from the wiki
get_wiki_random Get random wiki pages

Mojira Bug Tracker

Tool Description
search_mojira Search bug reports

Spyglass API

Tool Description
spyglass_get_versions Get all MC versions with pack formats
spyglass_get_registries Get registry entries (items, blocks, entities)
spyglass_get_block_states Get block state properties
spyglass_get_commands Get command syntax trees
spyglass_get_items Get list of items for a version
spyglass_search_registry Search a Spyglass registry for a query
spyglass_get_mcdoc_symbols Get vanilla mcdoc symbols from Spyglass

Misode Generators

Tool Description
misode_get_generators List all datapack generators
misode_get_presets Get vanilla presets for a generator
misode_get_preset_data Get full JSON for a preset
misode_get_loot_tables Get loot tables by category
misode_get_recipes Get recipes with filtering
misode_list_versions List available Misode/Minecraft versions
misode_get_data Get raw Misode data for a version and data type
misode_search_data Search Misode data for a query

Utility

Tool Description
hello_world Test connectivity
get_minecraft_version Get version info
validate_datapack Validate datapack structure
list_commands List commands for a version

๐Ÿ’ก Example Prompts

"Create a custom dimension with floating islands"

"What are the block states for a redstone repeater?"

"Show me the loot table for a desert temple chest"

"Search Mojira for elytra bugs"

"What's the syntax for the /execute command?"


๐Ÿ“ Project Structure

minecode-mcp/
โ”œโ”€โ”€ minecode/
โ”‚   โ”œโ”€โ”€ __init__.py
โ”‚   โ”œโ”€โ”€ server.py          # MCP server with 27 tools
โ”‚   โ””โ”€โ”€ scrappers/
โ”‚       โ”œโ”€โ”€ minecraftwiki.py
โ”‚       โ”œโ”€โ”€ mojira.py
โ”‚       โ”œโ”€โ”€ spyglass.py
โ”‚       โ””โ”€โ”€ misode.py
โ”œโ”€โ”€ example/
โ”‚   โ””โ”€โ”€ crystal_dimension/ # Example datapack
โ”œโ”€โ”€ pyproject.toml
โ”œโ”€โ”€ LICENSE
โ””โ”€โ”€ readme.md

๐ŸŒ Data Sources

Source Description
Minecraft Wiki Game documentation
Mojira Bug tracker
Spyglass MC Registries & commands
Misode Vanilla presets

๐Ÿ Plans

  • Getting logs using prism's api for log sharing https://mclo.gs If impossible, perform a search for where minecraft assets are generally located at

  • Better spyglass tools

  • Better multiversion support

  • Pre-prompts to increase agent accuracy


๐Ÿ“„ License

MIT License - see LICENSE


Made with ๐Ÿ’œ for the Minecraft community

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

minecode_mcp-0.1.9.tar.gz (32.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

minecode_mcp-0.1.9-py3-none-any.whl (30.4 kB view details)

Uploaded Python 3

File details

Details for the file minecode_mcp-0.1.9.tar.gz.

File metadata

  • Download URL: minecode_mcp-0.1.9.tar.gz
  • Upload date:
  • Size: 32.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for minecode_mcp-0.1.9.tar.gz
Algorithm Hash digest
SHA256 1fe68f635e6e55f699206da42b46233f179294d64f7440fc95b96c0e869de3ad
MD5 663bf71e68ef8dcd4655ae4f36661c98
BLAKE2b-256 1a217cefa669f0061392f92f775490241f261bd1b941f5593291135beb74c3d7

See more details on using hashes here.

File details

Details for the file minecode_mcp-0.1.9-py3-none-any.whl.

File metadata

  • Download URL: minecode_mcp-0.1.9-py3-none-any.whl
  • Upload date:
  • Size: 30.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for minecode_mcp-0.1.9-py3-none-any.whl
Algorithm Hash digest
SHA256 11290dd9e3b9c923a3b989f107673f3b16ea11bba39b0b882ff04d04e701fa88
MD5 176267176340a3a5a456d9d3c17e57b1
BLAKE2b-256 d7909bc709efbd4384cb3efbb8cd244f8d81411ece1a6c8af2f14108cefe0dc9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page