Packwright MCP (rithwikbabu/packwright-mcp) is an MCP server listed on the M8ven Trust Index. It scores 62 out of 100, grade C. It declares 22 tools. No publisher has claimed this listing.

C
Caution
62/100

Packwright MCP

A local-first MCP server for safely creating, inspecting, validating, testing, and packaging Minecraft Java Edition datapacks with guarded file access and deterministic builds.

Caution. Specific findings reduced this grade. They are listed on the page. Grades reflect the full trust pyramid: code, verification depth, and reputation. New projects cap at C until adoption is earned.

How we verified

⚡ Live Monitored: not connected

Verified is a snapshot. Live keeps it current, and builds your track record.

⚡ Connect GitHub → continuous verification on every pushwhy connect →

Who stands behind it

rithwikbabu

Source: Glama

Is this your MCP?

Claim it to get a verified publisher badge, a free copy of our full audit findings, and direct contact for any high-priority issues we find. Or connect your repo for our deepest verification, Live Monitored: read-only, revoke anytime. What we access →

Install from

The grade above is for the source repository. Registries can serve a different version, so we mark the ones we were not able to read.

// key findings
⚠️
Tool annotations don’t match behaviour
8 read-only tools perform write/delete/exec — datapack_inspect (line 161: /^data\/([^/]+)\/function\/(.+\.mcfunction)$/u.exec(item.path)); resource_read (line 161: /^data\/([^/]+)\/function\/(.+\.mcfunction)$/u.exec(item.path)); datapack_validate (line 161: /^data\/([^/]+)\/function\/(.+\.mcfunction)$/u.exec(item.path))
⚠️
Tool descriptions don’t match what handlers do
4 tools describe read intent but their handlers mutate — datapack_inspect (line 161: /^data\/([^/]+)\/function\/(.+\.mcfunction)$/u.exec(item.path)); resource_read (line 161: /^data\/([^/]+)\/function\/(.+\.mcfunction)$/u.exec(item.path)); minecraft_lookup (line 161: /^data\/([^/]+)\/function\/(.+\.mcfunction)$/u.exec(item.path))
No credential exfiltration, no sensitive file access, no obfuscation
Static analysis found nothing flowing your secrets to unexpected places.
Open source with a license and README
Anyone can audit the code, the license is declared, and the publisher documents what it does.
// tools this server exposes22 tools

These names and descriptions are the publisher's own, read from the source code. We print them as written. Our assessment is the findings above, not this list.

datapack_create

Create a Minecraft Java Edition 26.2 datapack below the configured workspace. The target must not exist. Supports a no-write dry run and optional namespace load/tick functions.

datapack_inspect

Inspect pack metadata, namespaces, resource inventory, hashes, Minecraft 26.2 compatibility, and validator readiness without changing files.

resource_read

Read an allowed text resource by typed Minecraft resource ID or exact pack-relative path. Returns its SHA-256 for guarded follow-up writes.

resource_upsert

Create a typed datapack resource or allowed text file. Existing files require overwrite=true and their current expectedSha256. dryRun returns the proposed diff without writing.

resource_delete

Delete exactly one datapack file. Requires confirm=true and the file's current SHA-256; directories are never recursively deleted.

datapack_validate

Run structural checks plus authoritative Minecraft 26.2 dispatcher, registry, and codec validation for every ordinary .mcfunction command. Requires setup-version and Java 25 unless includeVanilla=false; configured Spyglass diagnostics are also available. Invalid packs return normalized diagnostics a

minecraft_lookup

Search locally cached Minecraft 26.2 commands, registries, resource types, and identifiers. This tool never performs network access.

datapack_test

Validate commands, then load a staged copy of the pack and run selected GameTests in a disposable Minecraft 26.2 universe. The configured timeout is one shared budget capped at five minutes.

datapack_build

Run strict structural and authoritative Minecraft 26.2 command validation, then create a deterministic datapack ZIP with pack.mcmeta at its root. Java 25 and setup-version are required; builds cannot bypass vanilla validation. Existing output files require overwrite=true and their current SHA-256.

visual_capabilities

Report the truthful Minecraft 26.2 capability boundary and the separately labeled current compiler support for each visual target.

visual_project_attach

Associate sibling datapack and resource-pack roots through a guarded project manifest. Can create a new format-88.0 resource pack without moving the datapack.

visual_asset_inspect

Inspect a paired project, its logical item graph, current draft readiness, bindings, textures, renders, and commit state without changing files.

visual_spec_upsert

Validate a semantic custom-item ModelSpec, including its selected review-profile metadata, and create an immutable, content-addressed draft run. Review profiles stage the same compiled item output and never imply new native target support.

texture_import

Strictly decode, bound, normalize, metadata-strip, and content-address a PNG supplied inline or through an exact hash-guarded workspace file.

visual_compile

Compile a semantic custom-item ModelSpec into exact Minecraft 26.2 item-definition, model, UV, and texture draft assets without changing the paired packs.

visual_connect

Create a guarded multi-file proposal connecting a client item definition to a vanilla carrier through minecraft:item_model, with optional give helper and recipe.

visual_render

Render the selected model-specific scene-review profile with Packwright’s deterministic CPU renderer. All profiles produce bounded original-reference scenes, advisory measurements, an immutable report, individual image resources, and a contact sheet returned as image content.

visual_capture

Launch the pinned official Minecraft 26.2 client in a disposable deterministic studio and return protocol-v3, representation-bound framebuffer evidence for supported item, block, headwear, entity, or placeable fixtures. Required world/gameplay views are authoritative only for the recorded OpenGL env

visual_revision_create

Create an immutable child revision by changing only named parts, materials, display transforms, or selected review-profile metadata against the reviewed spec hash.

visual_commit

After explicit acceptance, atomically install every proposed datapack and resource-pack file. Official-client evidence can authorize commit only when its proposalBindingStatus is implemented; capture_only block, headwear, entity, and placeable evidence is QA-only until the compiler implements that e

visual_validate

Combine paired-pack, model, graph, CPU preview, binding, vanilla-command, and optional GameTest validation. Existing official-client evidence is authoritative by default for supported profiles; set requireClientCapture false only for an explicit fast advisory pass.

project_build

Validate and build separate deterministic datapack and resource-pack ZIPs for an attached project. Existing artifacts require both current SHA-256 values.

// environment variables
To run this server yourself, you supply these values. They go in your own MCP client configuration and stay on your machine. The secret label means the value is sensitive, not that the server mishandles it.
configPACKWRIGHT_CACHE_DIR
configPACKWRIGHT_JAVA
configPACKWRIGHT_SPYGLASS_COMMAND
configPACKWRIGHT_WORKSPACE"": "/absolute/path/to/datapacks"
// quality suggestions

Tool annotations match behaviour

8 read-only tools perform write/delete/exec — datapack_inspect (line 161: /^data\/([^/]+)\/function\/(.+\.mcfunction)$/u.exec(item.path)); resource_read (line 161: /^data\/([^/]+)\/function\/(.+\.mcfunction)$/u.exec(item.path)); datapack_validate (line 161: /^data\/([^/]+)\/function\/(.+\.mcfunction)$/u.exec(item.path))

Either remove the readOnlyHint:true annotation, or remove the write/delete call from the tool handler.

Descriptions match behaviour

4 tools describe read intent but their handlers mutate — datapack_inspect (line 161: /^data\/([^/]+)\/function\/(.+\.mcfunction)$/u.exec(item.path)); resource_read (line 161: /^data\/([^/]+)\/function\/(.+\.mcfunction)$/u.exec(item.path)); minecraft_lookup (line 161: /^data\/([^/]+)\/function\/(.+\.mcfunction)$/u.exec(item.path))

Rename the tool, rewrite the description, or move the side-effect into a separate clearly-named tool.

Tool description accuracy

resource_read: description implies read-only but handler writes/deletes/executes; minecraft_lookup: description implies read-only but handler writes/deletes/executes

Update tool descriptions to accurately reflect all capabilities — especially write, delete, or execute operations.

Claim the listing to review these findings one by one and send us a correction where you disagree, straight to the team. Claiming also means we tell you when the grade moves, and reach you first if we find anything urgent.

// full audit trail
The findings above are the summary. The full trail, every check we ran, each deduction, the network hosts observed and the dependency advisories, goes to verified publishers, along with an alert whenever a new one lands. Verified publishers can also review each finding and dispute it in one click. Publisher corrections have sharpened several of our checks this month, because the maintainer knows the codebase better than any scanner.
// improvement guidance — verified publishers only
We have 3 concrete improvements we can share with the publisher of this MCP. Each comes with specific guidance to raise the trust score.
// embed badge in your README
[![M8ven Verified](https://m8ven.ai/badge/mcp/rithwikbabu/packwright-mcp?variant=verified)](https://m8ven.ai/mcp/rithwikbabu/packwright-mcp)
Shows verification status without the grade. Want the grade badge instead? Remove ?variant=verified from the URL.
commit: a3ad6194964feff22dccb4dcdaec4053e25d513d
code hash: 73f984b1f2721000681985f26ec6b2dbd3d10f0f3304a9ad30fb4da070e8cd91
view raw JSON →
Check MCPs from inside your assistant
Tool Check · MCP

Vetting this one by hand? Tool Check is an MCP that scores other MCPs. Add it once and ask Claude, ChatGPT, or any MCP client to grade a server, surface CVEs, check the publisher, and suggest safer alternatives — before you install.

https://m8ven.ai/api/mcp/tool-check
check_toolsearch_toolscompare_toolsrecommend_alternativescheck_publisherreport_concern
How to add it →Free · no account needed · works in any MCP client