
Security News
The Hidden Blast Radius of the Axios Compromise
The Axios compromise shows how time-dependent dependency resolution makes exposure harder to detect and contain.
mcmodding-mcp
Advanced tools
MCP server providing AI assistants with up-to-date Minecraft modding documentation for Fabric and NeoForge
Give your AI assistant real-time access to Fabric & NeoForge documentation
📖 Documentation • 🚀 Quick Start • 💡 Features • 🤝 Contributing
MCModding-MCP is a Model Context Protocol (MCP) server that supercharges AI assistants like Claude with real, up-to-date Minecraft modding knowledge. No more hallucinations or outdated API references!
🎯 Key Benefits
|
📊 Live Statistics
|
# Install globally
npm install -g mcmodding-mcp
Add to your MCP client configuration (e.g., Claude Desktop):
{
"mcpServers": {
"mcmodding": {
"command": "mcmodding-mcp"
}
}
}
To get the best results, we recommend adding this to your AI's system prompt or custom instructions:
You are an expert Minecraft Modding Assistant connected to
mcmodding-mcp. DO NOT rely on your internal knowledge for modding APIs (Fabric/NeoForge) as they change frequently. ALWAYS use the available tools:
search_fabric_docsandget_examplefor documentation and code patternssearch_mappingsandget_class_detailsfor Minecraft internals and method signaturessearch_mod_examplesfor battle-tested implementations from popular modsPrioritize working code examples over theoretical explanations. When dealing with Minecraft internals, use the mappings tools to get accurate parameter names and Javadocs. If the user specifies a Minecraft version, ensure all retrieved information matches that version.
That's it! Your AI assistant now has access to comprehensive Minecraft modding resources.
Manage your documentation databases with the built-in CLI:
# Run the database manager
npx mcmodding-mcp manage
The interactive manager allows you to:
| Database | Description | Size |
|---|---|---|
| Documentation Database | Core Fabric & NeoForge documentation (installed by default) | ~520 MB |
| Parchment Mappings ✨ NEW | Minecraft class/method/field mappings with Javadocs | ~180 MB |
| Mod Examples Database | 1000+ high-quality modding examples | ~30 MB |
The manager shows version information and highlights available updates:
◉ 📚 Documentation Database [core]
✔ Installed: v0.2.1 → ↻ Update: v0.2.2 [520.3 MB]
Core Fabric & NeoForge documentation - installed by default
○ 🗺️ Parchment Mappings Database ✨ NEW
⚠ Not installed → Available: v0.1.0 [178.5 MB]
Minecraft class/method/field names with parameter names and Javadocs
○ 🧩 Mod Examples Database
⚠ Not installed → Available: v0.1.0 [28.1 MB]
1000+ high-quality modding examples for Fabric & NeoForge
The MCP server provides powerful tools across three categories:
search_fabric_docsSearch documentation with smart filtering.
// Example: Find information about item registration
{
query: "how to register custom items",
category: "items", // Optional filter
loader: "fabric", // fabric | neoforge
minecraft_version: "1.21.10" // Optional version filter
}
get_exampleGet working code examples for any topic.
// Example: Get block registration code
{
topic: "custom block with block entity",
language: "java",
loader: "fabric"
}
explain_fabric_conceptGet detailed explanations of modding concepts with related resources.
// Example: Understand mixins
{
concept: 'mixins';
}
get_minecraft_versionGet current Minecraft version information.
// Get latest version
{
type: 'latest';
}
// Get all indexed versions
{
type: 'all';
}
Requires Parchment Mappings database - install via npx mcmodding-mcp manage
search_mappingsSearch Minecraft class, method, and field mappings with parameter names and Javadocs.
// Example: Find block-related classes and methods
{
query: "BlockEntity",
type: "class", // class | method | field | all
minecraft_version: "1.21.10",
include_javadoc: true
}
get_class_detailsGet comprehensive information about a Minecraft class including all methods and fields.
// Example: Explore the Block class
{
class_name: "net.minecraft.world.level.block.Block",
include_methods: true,
include_fields: true
}
lookup_obfuscatedLook up deobfuscated names from obfuscated identifiers (useful for crash logs).
// Example: Decode an obfuscated method name
{
obfuscated_name: 'm_46859_';
}
get_method_signatureGet the full signature of a method including all parameter names and types.
// Example: Get method details
{
class_name: "Block",
method_name: "onPlace"
}
browse_packageDiscover classes in a Minecraft package.
// Example: Browse block package
{
package_name: 'net.minecraft.world.level.block';
}
Requires Mod Examples database - install via npx mcmodding-mcp manage
search_mod_examplesSearch battle-tested code from popular mods like Create, Botania, and Applied Energistics 2.
// Example: Find block entity implementations
{
query: "block entity tick",
mod: "Create", // Optional: filter by mod
category: "tile-entities",
complexity: "intermediate"
}
get_mod_exampleGet detailed information about a specific example with full code and explanations.
// Example: Get full details for an example
{
id: 42,
include_related: true
}
list_canonical_modsDiscover all indexed mods and their available examples.
list_mod_categoriesBrowse available example categories (blocks, entities, rendering, etc.).
Combines multiple search strategies for best results:
| Strategy | Purpose |
|---|---|
| FTS5 Full-Text | Fast keyword matching with ranking |
| Semantic Embeddings | Understanding meaning and context |
| Section Search | Finding relevant documentation sections |
| Code Search | Locating specific code patterns |
The database automatically checks for updates on startup:
Currently indexes:
# Clone repository
git clone https://github.com/OGMatrix/mcmodding-mcp.git
cd mcmodding-mcp
# Install dependencies
npm install
# Run in development mode
npm run dev
# Development
npm run dev # Watch mode with hot reload
npm run typecheck # TypeScript type checking
npm run lint # ESLint
npm run test # Run tests
npm run format # Prettier formatting
# Production
npm run build # Build TypeScript
npm run build:prod # Build with fresh documentation index
npm run index-docs # Index documentation with embeddings
# Database Management
npx mcmodding-mcp manage # Interactive database installer/updater
mcmodding-mcp/
├── src/
│ ├── index.ts # MCP server entry point
│ ├── db-versioning.ts # Auto-update system
│ ├── indexer/
│ │ ├── crawler.ts # Documentation crawler
│ │ ├── chunker.ts # Text chunking
│ │ ├── embeddings.ts # Semantic embeddings
│ │ ├── store.ts # SQLite database
│ │ └── sitemap.ts # Sitemap parsing
│ ├── services/
│ │ ├── search-service.ts # Search logic
│ │ └── concept-service.ts # Concept explanations
│ └── tools/
│ ├── searchDocs.ts # search_fabric_docs handler
│ ├── getExample.ts # get_example handler
│ └── explainConcept.ts # explain_fabric_concept handler
├── scripts/
│ └── index-docs.ts # Documentation indexing script
├── data/
│ ├── mcmodding-docs.db # SQLite database
│ └── db-manifest.json # Version manifest
└── dist/ # Compiled JavaScript
-- Documents: Full documentation pages
CREATE TABLE documents (
id INTEGER PRIMARY KEY,
url TEXT UNIQUE NOT NULL,
title TEXT NOT NULL,
content TEXT NOT NULL,
category TEXT NOT NULL,
loader TEXT NOT NULL, -- fabric | neoforge | shared
minecraft_version TEXT,
hash TEXT NOT NULL -- For change detection
);
-- Chunks: Searchable content units
CREATE TABLE chunks (
id TEXT PRIMARY KEY,
document_id INTEGER NOT NULL,
chunk_type TEXT NOT NULL, -- title | section | code | full
content TEXT NOT NULL,
section_heading TEXT,
code_language TEXT,
word_count INTEGER,
has_code BOOLEAN
);
-- Embeddings: Semantic search vectors
CREATE TABLE embeddings (
chunk_id TEXT PRIMARY KEY,
embedding BLOB NOT NULL, -- 384-dim Float32Array
dimension INTEGER NOT NULL,
model TEXT NOT NULL -- Xenova/all-MiniLM-L6-v2
);
-- FTS5 indexes for fast text search
CREATE VIRTUAL TABLE documents_fts USING fts5(...);
CREATE VIRTUAL TABLE chunks_fts USING fts5(...);
This project uses release-please for automated releases.
| Branch | Purpose |
|---|---|
dev | Active development |
prod | Production releases |
dev using conventional commitsdev → prod)devSee RELEASE_WORKFLOW.md for complete details.
| Variable | Description | Default |
|---|---|---|
DB_PATH | Custom database path | ./data/mcmodding-docs.db |
GITHUB_REPO_URL | Custom repo for updates | Auto-detected |
MCP_DEBUG | Enable debug logging | false |
Set DB_PATH to a custom location to manage updates manually:
DB_PATH=/path/to/my/database.db mcmodding-mcp
We're actively developing mcmodding-mcp and want to hear from you!
Using mcmodding-mcp for a cool project? We'd love to hear about it! Share your story in Discussions.
We welcome contributions! See CONTRIBUTING.md for guidelines.
devdevMIT License - see LICENSE for details.
See CHANGELOG.md for a detailed history of changes and releases.
🎮 Built with ❤️ for the Minecraft modding community
If you find this project useful, please consider giving it a ⭐!
FAQs
MCP server providing AI assistants with up-to-date Minecraft modding documentation for Fabric and NeoForge
We found that mcmodding-mcp demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
The Axios compromise shows how time-dependent dependency resolution makes exposure harder to detect and contain.

Research
A supply chain attack on Axios introduced a malicious dependency, plain-crypto-js@4.2.1, published minutes earlier and absent from the project’s GitHub releases.

Research
Malicious versions of the Telnyx Python SDK on PyPI delivered credential-stealing malware via a multi-stage supply chain attack.