# com.yaktool/labels (npm · yaktool-labels-mcp)

Labels: FBA (FNSKU) & GS1 SSCC pallet labels (PDF/ZPL), plus a ZPL-to-PDF renderer. Exact size.

- Trust score: 75/100 (medium)
- Change this week: +4
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-09-20

## Components

- npm · `yaktool-labels-mcp`: 75/100 (this document), [markdown](https://verifymcp.io/servers/com-yaktool-labels/yaktool-labels-mcp.md), [page](https://verifymcp.io/servers/com-yaktool-labels/yaktool-labels-mcp)

## Channel facts

- Registry: `npm`
- Package: `yaktool-labels-mcp`
- Version: `0.3.1`
- Transport: `stdio`

## Trust breakdown

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. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-09-20.

- **Supply Chain Security**: 100/100
  - No malware found by supply-chain analysis.
  - No known CVEs affecting this package version or its production dependencies.
  - No install/post-install scripts declared.
  - No production dependencies, so there is no dependency health to assess.
- **Provenance & Transparency**: 19/100
  - Repository check failed: no source repository is declared.
  - Provenance check failed: no build-provenance attestation is published.
  - Clear OSI-approved license (MIT).
  - Actively maintained (last published 25 days ago).
  - Security-disclosure policy not yet verified: we couldn't inspect the source repository.
- **Schema Quality & AI Usability**: 60/100
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 1332 tokens (~444/item across 3 items; 3 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 87/100
  - Stability observed for 26 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 3 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 3 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### How do I install the com.yaktool/labels MCP server?

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

### Claude

```bash
claude mcp add com-yaktool-labels -- npx -y yaktool-labels-mcp
```

### Cursor

```json
{
  "mcpServers": {
    "com-yaktool-labels": {
      "command": "npx",
      "args": [
        "-y",
        "yaktool-labels-mcp"
      ]
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "com-yaktool-labels": {
      "command": "npx",
      "args": [
        "-y",
        "yaktool-labels-mcp"
      ]
    }
  }
}
```

### Codex

```bash
codex mcp add com-yaktool-labels -- npx -y yaktool-labels-mcp
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-yaktool-labels": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "yaktool-labels-mcp"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add com-yaktool-labels --command npx --arg -y --arg yaktool-labels-mcp
```

### Hermes

```yaml
mcp_servers:
  com-yaktool-labels:
    command: "npx"
    args: ["-y", "yaktool-labels-mcp"]
```

### Netclaw

```json
{
  "McpServers": {
    "com-yaktool-labels": {
      "Transport": "stdio",
      "Command": "npx",
      "Arguments": [
        "-y",
        "yaktool-labels-mcp"
      ]
    }
  }
}
```

### Vellum

```bash
assistant mcp add com-yaktool-labels -t stdio -c npx -a -y yaktool-labels-mcp
```

### Other

```json
{
  "mcpServers": {
    "com-yaktool-labels": {
      "command": "npx",
      "args": [
        "-y",
        "yaktool-labels-mcp"
      ]
    }
  }
}
```

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-09-20 (score 75, +1)

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

### 2026-09-18 (score 74, +1)

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

### 2026-09-16 (score 73, +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.

### 2026-09-14 (score 72, +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.

### 2026-09-11 (score 71, +1)

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

### 2026-09-09 (score 70, +1)

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

### 2026-09-07 (score 69, +1)

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

### 2026-09-05 (score 68, +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.

## MCP tools (3)

### `generate_fnsku_labels` (~509 tokens)

Generate a print-ready Amazon FBA (FNSKU) label PDF

Lay out FNSKU labels as an exact-physical-size PDF for 30-up US Letter (Avery 5160 geometry), A4 24-up, or 2"×1" / 2.25"×1.25" thermal rolls, and write it to `out`. Code 128 bars are aligned to the target printer dot grid (203/300 dpi) — X-dimension is always a whole number of printer dots, which is what makes the printed label scan reliably. EVERY ROW IS VALIDATED FIRST: not 10 characters, lowercase, punctuation → the row is rejected and reported (LBL-F,* findings), never silently printed; a 12–13 digit input is called out as a UPC/EAN pasted into the wrong column. X00 and B0 (FNSKU=ASIN) prefixes are both accepted — the "always X00" rule of thumb is community consensus, not official grammar, and the tool says so. TITLES ARE PRINTED WITH A STANDARD PDF FONT (WinAnsi): characters outside it (CJK, emoji) are replaced or dropped WITH DISCLOSURE (LBL-T01) — relay that disclosure, never present the label as containing text it does not. THE PDF MUST BE PRINTED AT 100% / "Actual size" — fit-to-page scaling breaks bar widths and the label grid (LBL-P01 is attached to every result; tell the user). Pass `calibrationOnly: true` to get a ruler test page (1" must measure 25.4 mm) instead of labels. startCell (0-based) starts printing at a later position on a partly used 30-up/24-up sheet. Returns { summary{requested,printable,rejected,labels,pages}, items[{input,normalized?,valid,findings[]}], findings[], wrote }.

Input parameters:

- `calibrationOnly` (boolean): Write the print-calibration test page for `format` instead of labels.
- `dpi` (number): Target printer density for bar alignment (default 300; 203 for common thermal printers).
- `format` (string, required): Label sheet/roll format.
- `items` (array): Labels to generate. Optional only when calibrationOnly is true.
- `out` (string, required): Absolute path of the PDF to write. Never overwrites an existing file.
- `startCell` (integer): 0-based first cell on page 1, to continue a partly used sheet (sheet formats only).

### `generate_logistic_labels` (~504 tokens)

Generate GS1 logistic (SSCC pallet) labels — PDF or ZPL

Lay out GS1-compliant logistic labels (A6/4"×6" SSCC pallet label, or A5/6"×8" with trade item data) and write them to `out` — as an exact-physical-size PDF, or as ZPL when `out` ends in .zpl (bar-by-bar geometry identical to the PDF; send the file straight to a Zebra-compatible thermal printer). THE LAYOUT AND NUMBERS ARE THE OFFICIAL ONES: three building blocks with the SSCC barcode always lowest, 31.75 mm bars (that is the official bar height — the "32 mm" people remember is a carton placement distance), X-dimension pinned to whole printer dots inside the 0.495–0.940 mm window (4 dots at 203 dpi, 6 at 300 dpi), ≥10X quiet zones, HRI below each symbol with parentheses around AIs. Every rule cites the GS1 General Specifications or the GS1 Logistic Label Guideline (both free official PDFs). VALIDATION IS A GATE, NOT A SUGGESTION: SSCC check digit verified (17 digits auto-complete it, and the result reports the completed SSCC); GTIN (02) and count (37) are only valid together; compact formats print the SSCC only (LGL-010 warning when trade fields are ignored); one symbol carries at most 48 data characters; dates are YYMMDD where day "00" legitimately means end-of-month. Rejected rows are reported with LGL-* findings, never silently printed. X-DIMENSION IS NEVER SHRUNK below the compliant window to squeeze data in — over-long data is an error (LGL-011/012) with a fix suggestion. Returns { summary{requested,printable,rejected,labels}, items[{input,sscc?,valid,findings[]}], findings[], wrote }.

Input parameters:

- `dpi` (number): Printer density (default 300). Zebra "203/300 dpi" = 8/12 dots per mm.
- `format` (string, required): Label size. a6/4x6 = SSCC-only compact; a5/6x8 fit trade item data.
- `items` (array, required): Pallet labels to generate.
- `out` (string, required): Absolute output path — .pdf for print-at-100% PDF, .zpl for raw ZPL. Never overwrites.

### `render_zpl` (~319 tokens)

Render ZPL (Zebra label code) to an exact-size PDF

Parse ZPL II text, render every ^XA…^XZ label block, and write an exact-physical-size PDF to `out` — proof a label file before it costs a strip of label stock. SUPPORTED SUBSET: label framing (^XA ^XZ ^PW ^LL), positioning (^FO), boxes (^GB), text (^A0/^CF/^FD) and Code 128 barcodes (^BC modes N and A with >; / >8 escapes) — bars are drawn by the same encoder as this suite's generators, cross-checked against two independent barcode libraries. HONEST COVERAGE, NEVER GUESSES: commands outside the subset (other symbologies like ^B3/^BQ/^BX, images ^GF, rotated fields, firmware check-digit modes U/D) are SKIPPED AND LISTED in `coverage.ignored` and ZPV-* findings — a wrongly-guessed barcode is worse than a missing one. Relay the coverage report; never present a partial render as complete. Labels without ^PW/^LL get an inferred canvas (disclosed via ZPV-004). Returns { labels, coverage{rendered,ignored}, findings[], wrote }.

Input parameters:

- `dpmm` (number): Printer density the coordinates assume: 8 dots/mm (203 dpi, default) or 12 (300 dpi).
- `out` (string, required): Absolute path of the PDF to write. Never overwrites.
- `zpl` (string, required): The ZPL II text (one or more ^XA…^XZ blocks).

## Diagnostics

Captured diagnostic sections: Provenance, Dependencies. The full working is on the page: https://verifymcp.io/servers/com-yaktool-labels/yaktool-labels-mcp#diagnostics

## Score history

- 2026-09-20: 75
- 2026-09-19: 74
- 2026-09-18: 74
- 2026-09-17: 73
- 2026-09-16: 73
- 2026-09-15: 72
- 2026-09-14: 72
- 2026-09-13: 71
- 2026-09-12: 71
- 2026-09-11: 71
- 2026-09-10: 70
- 2026-09-09: 70
- 2026-09-08: 69
- 2026-09-07: 69
- 2026-09-06: 68
- 2026-09-05: 68
- 2026-09-04: 67
- 2026-09-03: 67
- 2026-09-02: 63
- 2026-09-01: 63
- 2026-08-31: 63
- 2026-08-30: 63
- 2026-08-29: 63
- 2026-08-28: 63
- 2026-08-27: 63
- 2026-08-26: 63
- 2026-08-25: 61

## Common questions

### What is the com.yaktool/labels MCP server?

com.yaktool/labels is an MCP server listed in the public MCP registry as com.yaktool/labels. Labels: FBA (FNSKU) & GS1 SSCC pallet labels (PDF/ZPL), plus a ZPL-to-PDF renderer. Exact size. This page covers its npm package (yaktool-labels-mcp).

### Is the com.yaktool/labels MCP server safe to use?

com.yaktool/labels scores 75 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 20 September 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 com.yaktool/labels MCP server expose?

com.yaktool/labels exposes 3 tools: generate_fnsku_labels, generate_logistic_labels, render_zpl. Their descriptions and schemas cost roughly 1,332 tokens of context every time the server is loaded.

### Is the com.yaktool/labels MCP server still maintained?

com.yaktool/labels is still listed as active in the MCP registry. We last reached this channel on 20 September 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 com.yaktool/labels MCP server under?

com.yaktool/labels declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.

## Links

- npm package: https://www.npmjs.com/package/yaktool-labels-mcp
- Socket report: https://socket.dev/npm/package/yaktool-labels-mcp
- Changelog RSS feed: https://verifymcp.io/servers/com-yaktool-labels/yaktool-labels-mcp.xml
- Changelog JSON feed: https://verifymcp.io/servers/com-yaktool-labels/yaktool-labels-mcp.json
- HTML version of this page: https://verifymcp.io/servers/com-yaktool-labels/yaktool-labels-mcp
