DeepSlate MCP
An MCP server that renders Minecraft structure files (NBT / Sponge schematic / Litematic) into PNG preview images using vanilla Minecraft resources.
README
DeepSlate MCP
An MCP (Model Context Protocol) server that renders Minecraft structure files (NBT / Sponge schematic / Litematic) into PNG preview images using vanilla Minecraft resources.
deepslate-mcp wraps the misode/deepslate
rendering engine (MIT-licensed) inside a small MCP server, so any MCP-aware
agent — including Hermes Agent —
can call a tool and get a PNG back.
Tools
| Tool | Description |
|---|---|
render_structure |
Load a .nbt/.schem/.litematic file from disk and render to PNG |
render_blocks |
Build a structure from a programmatic block list and render to PNG |
inspect_structure |
Read structure metadata (size, palette, block count) without rendering |
render_item |
Render a single Minecraft item/block as an icon |
Each tool supports configurable camera angles (isometric, top, front, side, and custom rotation), background colour, output dimensions, and zoom level.
At a glance
| Language | TypeScript / Node.js ≥ 20 |
| License | MIT (inherits upstream deepslate) |
| Upstream | misode/deepslate v0.26.0 |
| Protocol | MCP 2025-06-18 spec (stdio transport) |
| Renderer | headless WebGL via gl |
| Resources | Vanilla Minecraft assets from Mojang's client.jar |
| Tests | Vitest — 65 unit + integration tests across 9 modules |
Example call (from an MCP client)
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "render_structure",
"arguments": {
"nbt_path": "examples/fixtures/tiny_house.nbt",
"angle": "isometric",
"width": 1024,
"height": 768
}
}
}
Response includes a text summary and an inline base64-encoded PNG image.
Quick start
# Dependencies
npm install
# Build
npm run build
# Run (stdio MCP server)
node bin/deepslate-mcp.js
# Development (hot-reload via tsx)
npm run dev
# Smoke test (starts the server and exercises all tools)
npm run smoke
# Tests
npm test
# Lint (TypeScript strict check)
npm run lint
System dependencies
On Linux, headless-gl requires Mesa libraries:
apt install libgl1-mesa-dev
The server expects an X display or virtual framebuffer (Xvfb :99 -screen 0 1024x768x24).
Architecture
See ARCHITECTURE.md for the full technical design.
M0 — Foundation (scaffold, build, basic MCP server) M1 — Render core (headless WebGL, camera presets, PNG encoding) M2 — Resource pipeline (Mojang client.jar extraction, blockstate/model/texture parsing) M3 — Multi-format loaders (.nbt, .schem, .litematic) M4 — MCP tools (4 tools wrapping the pipeline) M5 — Hermes integration (MCP config, end-to-end tool calls from Hermes Agent) M6 — Hardening (error UX, cache invalidation, progress reporting, unit tests, smoke test, lint, packaging, README polish)
All milestones complete — ready for v0.1.0 publication.
🏗️ Building Design Toolkit
This repository also includes a Minecraft building design toolkit as a
Hermes Agent skill —
minecraft-building-design.
It provides:
- Format specifications for all three major Minecraft structure formats: Vanilla NBT, Create Mod schematic, and Litematica
- Python generators (zero external dependencies) to produce
.nbt,.litematicfiles from code - Design helpers (
fill_cuboid,hollow_cuboid, mirror, rotate, etc.) - Example — a modern villa generated in all three formats
To install:
# Via install script
bash skill/install.sh
# Or manually copy
cp -r skill/minecraft-building-design ~/.hermes/skills/creative/
Then in Hermes:
skill_view(name='minecraft-building-design')
The skill complements deepslate-mcp perfectly:
- deepslate-mcp renders existing
.nbt/.schem/.litematicfiles to PNG - minecraft-building-design builds those files from scratch
See skill/minecraft-building-design/SKILL.md
for full documentation.
Resource caching
Vanilla resources (~3,500 blockstates, ~10,000 models, ~1,500 textures) are extracted from Mojang's client.jar and cached to disk on first build. Subsequent loads take ~0.2s instead of ~7s. Purge the cache with:
rm -rf ~/.cache/deepslate-mcp
Environment variables
| Variable | Purpose |
|---|---|
DEEPSLATE_JAR_PATH |
Point to a pre-downloaded client.jar (skips network) |
DEEPSLATE_CACHE_DIR |
Override the cache directory (default: ~/.cache/deepslate-mcp) |
DISPLAY |
X display for headless-gl (e.g. :99) |
Credits
This project is built on top of
misode/deepslate by Misode,
licensed under MIT. See ATTRIBUTION.md for full
upstream credits and license obligations.
Minecraft content and assets are © Mojang AB; this project never distributes Mojang-owned assets — all resources are fetched at runtime from official sources.
License
MIT — see LICENSE.
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。