Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

io.github.Brunovncs/texel-mcp

NPM · TEXEL-MCP

Minecraft skins and textures as code: JSON specs compiled to PNG, with a review an agent can act on.

Available components

+3 this week 82 Trust /100

Last scanned (8 hours ago)

Scores higher than 72% of npm servers

Category Design and Media

Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security100
  • No malware found by supply-chain analysis.Pass
  • No known CVEs affecting this package version or its production dependencies.Pass
  • No install/post-install scripts declared.Pass
  • 0 of 3 dependencies flagged as unhealthy. View diagnostics → Pass
Provenance & Transparency45
Schema Quality & AI Usability81
  • 94% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Partial
  • AI-judged instruction clarity (good).Pass
  • Tool/resource definitions use about 3267 tokens (~72/item across 45 items; 16 tools + 29 resources), lean.Pass
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management77
  • Stability observed for 23 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage98
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 93% of tool parameters carry a description.Partial
  • Structured output schemas are declared (88% of tools); any adoption earns full credit.Pass
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • We read all 16 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
  • An AI judge read all 18 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a current MCP spec version (2026-07-28).Pass
  • Supports UI / widget rendering.Pass
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 4 Nov 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 70 to 73. That category is still filling its 30-day observation window: 21 days of observed history at the previous scan, 22 at this one. The score rises as the window fills, whether or not the server changes.

  • 2 Nov 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 63 to 67. That category is still filling its 30-day observation window: 19 days of observed history at the previous scan, 20 at this one. The score rises as the window fills, whether or not the server changes.

  • 31 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 57 to 60. That category is still filling its 30-day observation window: 17 days of observed history at the previous scan, 18 at this one. The score rises as the window fills, whether or not the server changes.

  • 29 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 50 to 53. That category is still filling its 30-day observation window: 15 days of observed history at the previous scan, 16 at this one. The score rises as the window fills, whether or not the server changes.

  • 27 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 43 to 47. That category is still filling its 30-day observation window: 13 days of observed history at the previous scan, 14 at this one. The score rises as the window fills, whether or not the server changes.

  • 24 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 33 to 37. That category is still filling its 30-day observation window: 10 days of observed history at the previous scan, 11 at this one. The score rises as the window fills, whether or not the server changes.

  • 22 Oct 26 +5
    • Stability: unverified → 0.30 ▲ functional
  • 19 Oct 26 0
    • Security disclosure: unverified → fail ▼ functional
Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 5 Nov 2026 · Analysed npm/texel-mcp@0.9.2

Provenance No attestation

The registry publishes no build provenance for this version, so there is nothing to verify.

Result No attestation
Ecosystem npm

Background: How many MCP packages publish verified provenance →

Dependencies 3 packages
Packages resolved 3
Tree resolution Complete

Background: SBOMs and build attestations, explained →

MCP tools · 16 exposed · ~2,464 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
texel_check_pack ~148

Check a resource pack (a folder or a .zip in the workspace, /workdir), not only ones Texel made: pack.mcmeta and the versions its format covers, file and namespace names, PNGs, .mcmeta animations and GUI scaling, entity texture sizes against Texel's layouts, models, block states, item definitions and particles that point at missing files, and unused textures. Each issue has the file, a JSON path and a fix hint.

NameTypeReqDescription
mcVersionstring–Minecraft Java version the pack must work on, e.g. "1.21.4".
pathstringyesThe pack folder or .zip, relative to the workspace.
NameTypeReqDescription
issuesarrayyes–
okbooleanyes–
statsobjectyes–
versionsarrayyes–

No examples provided.

texel_diff ~133

Compare two specs pixel by pixel and report which faces changed. Use it to confirm a patch touched only what you intended. Returns the changed-pixel mask over the texture map (magenta = changed).

NameTypeReqDescription
after–yesA Texel skin spec (version 1) as a JSON object or JSON text. Format: texel://docs/spec, schema: texel://schema/skinspec.v1
before–yesA Texel skin spec (version 1) as a JSON object or JSON text. Format: texel://docs/spec, schema: texel://schema/skinspec.v1
NameTypeReqDescription
changedPixelsnumberyes–
facesarrayyes–

No examples provided.

texel_get_example ~96

Return a complete, working example spec to learn from or fork. Skins: explorer, knight, robot, astronaut, wizard, cozy, winged-pig, miner-zombie, creeper, mud-pig, bronze-armor, banner-cape, ember-blade, zebra, sky-evoker, ash-log, magma-pulse, stone-button, spark. Family: guild.

NameTypeReqDescription
idstringyes–

No output schema declared.

No examples provided.

texel_import_png ~299

Convert an existing PNG in the workspace into an editable spec, one layer per painted face, palette keys c01…cNN. A player skin (64×64 or legacy 64×32) by default; pass layout for a mob, armor, cape, item or block texture. With pixelize, any picture becomes a texture of the layout's size first (concept art or a render on a white background → a 16×16 item; an HD 128×128 skin → 64×64): background removed, colors reduced, specks cleaned. Rename palette keys to material names before editing.

NameTypeReqDescription
colorsinteger–With pixelize: colors to keep (default 16; 0 keeps every averaged color).
layoutstring–Texture layout of the PNG, e.g. "zombie", "humanoid" (armor), "item". Default: player skin.
outlinestring–With pixelize: a 1-pixel outline around the shape, "#rrggbb" or "auto" (items).
pathstringyesPath to a .png file, relative to the workspace.
pixelizeboolean–Scale and clean a picture of any size into the layout's texture size first.
sizearray–With pixelize: the texture size for resizable layouts (gui, painting, HD items), e.g. [32, 32].
NameTypeReqDescription
layoutstringyes–
lossybooleanyes–
modelstringyes–
specobjectyes–

No examples provided.

texel_live ~115

Start (or reuse) a live session and return a studio URL for the user. While it runs, every texel_render result appears in their open browser tab immediately, so they can watch the skin evolve and give feedback mid-way. Call it before the first render and share the URL with the user.

NameTypeReqDescription
openboolean–Also open the URL in the default browser of the machine running this server.
portinteger–Preferred local port (default 4747; the next free one is used if busy).
NameTypeReqDescription
portnumberyes–
studioUrlstringyes–
urlstringyes–
viewersnumberyes–

No examples provided.

texel_pack ~261

Build a Minecraft resource pack from spec files, family files and folders of them in the workspace (/workdir): every texture at its "asset" path (or its layout's default: vanilla paths for mobs, item/<name> for items…), with .png.mcmeta, _eyes files, particle definitions, pack.mcmeta for the Minecraft version, and with models: true also the models, block states and item definitions items and blocks need. Writes a .zip or a folder, then checks the result like texel_check_pack.

NameTypeReqDescription
descriptionstring––
filesarrayyesSpec files, family files or folders of .json specs, relative to the workspace.
mcVersionstring–Minecraft Java version, e.g. "1.21.4". Default: the latest Texel knows.
modelsboolean–Also write models, block states and item definitions for item, block and plant textures (new items and blocks need them; replaced vanilla textures don't).
namespacestring–Namespace for textures whose "asset" has none. Default "minecraft" (replaces vanilla textures); a mod uses its id.
outstring–Output .zip, or a folder, relative to the workspace.
NameTypeReqDescription
filesnumberyes–
formatnumberyes–
issuesarrayyes–
okbooleanyes–
outstringyes–
placedarrayyes–
versionstringyes–

No examples provided.

texel_palette ~117

Read a reference PNG in the workspace (concept art, a photo of a figure, another skin) and return its main colors, most common first, each with a role (shadow, midtone, highlight, neutral, accent), as a ready spec "palette" and "legend". Use it to match a reference instead of guessing hex values; derive the other tones with "~" steps.

NameTypeReqDescription
colorsinteger–How many colors to keep.
pathstringyesPath to a .png file, relative to the workspace.
NameTypeReqDescription
entriesarrayyes–
legendobjectyes–
paletteobjectyes–

No examples provided.

texel_patch ~278

Apply a patch to a spec (update, replace, add or remove layers by id; change palette, legend or meta) and render the result like texel_render. Layers without an id first get "<op>-<index>" and keep it, so the next patch can use the same ids. Entries that cannot apply are skipped and reported. With "spec", returns the patched spec, the review and the sheet. With "file", writes the patched spec back to that file and returns only the review and the sheet.

NameTypeReqDescription
filestring–Instead of "spec": a .json spec file in the workspace, e.g. "skins/knight.json". Saves resending the whole spec on every call; texel_patch then edits the file in place.
includearray–Extra outputs. "sheet" is the review image; "ascii" adds a text render for models without vision.
patch–yesA patch ({ patch: [{ do: "update", id, set }, …] }) as a JSON object or JSON text. Format: texel://docs/spec, section "Patches".
spec––A Texel skin spec (version 1) as a JSON object or JSON text. Format: texel://docs/spec, schema: texel://schema/skinspec.v1
NameTypeReqDescription
appliednumberyes–
artobjectyes–
filestring––
issuesarrayyes–
layoutstringyesTexture layout: player, zombie, humanoid (armor), skeleton, item…
modelstringyes–
namestringyes–
nextarrayyes–
okbooleanyes–
scorenumberyes–
sizearrayyesTexture size in pixels: [width, height].
skippedarrayyes–
specobject––
statsobjectyes–

No examples provided.

texel_pull ~75

Load the spec behind a Texel share link (https://www.texel.dev.br/s/<id>, a bare id, or a long studio link with #z= / #spec=) so you can keep developing an existing skin. Returns the spec JSON.

NameTypeReqDescription
linkstringyesA share link or short id.
NameTypeReqDescription
specobjectyes–

No examples provided.

texel_read_docs ~72

Read a documentation page as markdown. Pages: protocol (Skin Agent Protocol), spec (Skin spec reference), art-guide (Skin art guide), families (Skin families), api (Agent interfaces), install (Install as a tool). Read "spec" before writing your first spec.

NameTypeReqDescription
pagestringyes–

No output schema declared.

No examples provided.

texel_render ~262

Compile a skin spec and review it. Returns a review sheet image (front | back | right | left views + raw texture), the review (score, issues with JSON paths and fix hints, art checks, craft advice, suggested next steps) and, on request, the texture (64×64 for a player skin), a text render and a close-up of some parts. Deterministic; never modifies files.

NameTypeReqDescription
filestring–Instead of "spec": a .json spec file in the workspace, e.g. "skins/knight.json". Saves resending the whole spec on every call; texel_patch then edits the file in place.
focusarray–Also return a close-up of these parts or groups alone (e.g. ["head"], ["arms"]) from all six sides, large, on gray: for judging a face, a hood or one garment.
includearray–Extra outputs. "sheet" is the review image; "ascii" adds a text render for models without vision.
spec––A Texel skin spec (version 1) as a JSON object or JSON text. Format: texel://docs/spec, schema: texel://schema/skinspec.v1
NameTypeReqDescription
artobjectyes–
issuesarrayyes–
layoutstringyesTexture layout: player, zombie, humanoid (armor), skeleton, item…
modelstringyes–
namestringyes–
nextarrayyes–
okbooleanyes–
scorenumberyes–
sizearrayyesTexture size in pixels: [width, height].
statsobjectyes–

No examples provided.

texel_render_family ~90

Expand a family (base spec + variants and/or a matrix of axes) and review every member. Returns a lineup image (front and back of each member, in order) and a per-member score table.

NameTypeReqDescription
family–yesA skin family ({ kind: "family", base, variants?, matrix? }) as a JSON object or JSON text. Format: texel://docs/families
NameTypeReqDescription
issuesarrayyes–
membersarrayyes–
namestringyes–
okbooleanyes–

No examples provided.

texel_save ~189

Compile a spec and write <path>.png (the texture), <path>.skin.json (the source) and optionally <path>.sheet.png into the workspace (/workdir). Also writes every other file the texture is in game: a block's <path>_top.png / _side.png…, an animation's strip with <path>.png.mcmeta, a particle's <path>_0.png…, the glowing pixels as <path>_eyes.png. Refuses specs with errors.

NameTypeReqDescription
pathstringyesOutput path without extension, relative to the workspace, e.g. "skins/frost-mage".
sheetboolean–Also write the review sheet.
spec–yesA Texel skin spec (version 1) as a JSON object or JSON text. Format: texel://docs/spec, schema: texel://schema/skinspec.v1
NameTypeReqDescription
filesarrayyes–
scorenumberyes–

No examples provided.

texel_save_family ~110

Expand a family and write <directory>/<member-id>.png and .skin.json for every member, plus <directory>/lineup.png, into the workspace (/workdir). Refuses families with errors.

NameTypeReqDescription
directorystringyesOutput directory relative to the workspace, e.g. "skins/guild".
family–yesA skin family ({ kind: "family", base, variants?, matrix? }) as a JSON object or JSON text. Format: texel://docs/families
NameTypeReqDescription
filesarrayyes–
membersnumberyes–

No examples provided.

texel_share ~99

Store the spec on https://www.texel.dev.br and return a short link (https://www.texel.dev.br/s/<id>) that opens the exact skin in the studio. Falls back to a long self-contained link when offline.

NameTypeReqDescription
spec–yesA Texel skin spec (version 1) as a JSON object or JSON text. Format: texel://docs/spec, schema: texel://schema/skinspec.v1
NameTypeReqDescription
shortbooleanyes–
urlstringyes–

No examples provided.

texel_validate ~120

Check a spec for errors and warnings without rendering images. Cheap; use it after every edit.

NameTypeReqDescription
filestring–Instead of "spec": a .json spec file in the workspace, e.g. "skins/knight.json". Saves resending the whole spec on every call; texel_patch then edits the file in place.
spec––A Texel skin spec (version 1) as a JSON object or JSON text. Format: texel://docs/spec, schema: texel://schema/skinspec.v1
NameTypeReqDescription
issuesarrayyes–
okbooleanyes–
scorenumberyes–

No examples provided.

Install

How do I install the io.github.Brunovncs/texel-mcp server?

io.github.Brunovncs/texel-mcp runs locally as an npm package, launched with npx -y texel-mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

npm · texel-mcp

# add to Claude Code
claude mcp add brunovncs-texel-mcp -- npx -y texel-mcp
Common questions

What is the io.github.Brunovncs/texel-mcp server?

io.github.Brunovncs/texel-mcp is listed in the public MCP registry as io.github.Brunovncs/texel-mcp. Minecraft skins and textures as code: JSON specs compiled to PNG, with a review an agent can act on. This page covers its npm package (texel-mcp).

Is the io.github.Brunovncs/texel-mcp server safe to use?

io.github.Brunovncs/texel-mcp scores 82 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 5 November 2026. It declares no install or post-install scripts. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the io.github.Brunovncs/texel-mcp server expose?

io.github.Brunovncs/texel-mcp exposes 16 tools: texel_render, texel_patch, texel_validate, texel_save, texel_live, and 11 more. Their descriptions and schemas cost roughly 2,464 tokens of context every time the server is loaded.

Is the io.github.Brunovncs/texel-mcp server still maintained?

io.github.Brunovncs/texel-mcp is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

What licence is the io.github.Brunovncs/texel-mcp server under?

io.github.Brunovncs/texel-mcp declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.