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.shunyagatha/vecline

NPM · VECLINE · SCANNED AUG 19

Local-first image, vector and document toolkit that measures its own output. Nothing uploaded.

Available components

68 Trust /100
Trust breakdown (6 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 →

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 49 dependencies flagged as unhealthy. View diagnostics → Pass
Provenance & Transparency45
Schema Quality & AI Usability78
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 1831 tokens (~114/item across 16 items; 16 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management13
  • Stability observed for 4 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
Capabilities20
  • Spec-recency check failed: implements MCP spec 2024-11-05; the latest is 2026-07-28. See how to fix → Fail
Install

Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.

npm · vecline

# add to Claude Code
claude mcp add shunyagatha-vecline -- npx -y vecline
# add to Codex CLI
codex mcp add shunyagatha-vecline -- npx -y vecline
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "shunyagatha-vecline": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "vecline"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add shunyagatha-vecline --command npx --arg -y --arg vecline
# ~/.hermes/config.yaml
mcp_servers:
  shunyagatha-vecline:
    command: "npx"
    args: ["-y", "vecline"]
// mcp.json
{
  "mcpServers": {
    "shunyagatha-vecline": {
      "command": "npx",
      "args": [
        "-y",
        "vecline"
      ]
    }
  }
}
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.

  • 19 Aug 26 +16
    • Malware scan: unverified → pass security
  • 18 Aug 26 −15
    • Malware scan: pass → unverified security
    • Schema quality: 1368 → 1831 functional
    • Package version: 2.0.0 → 2.1.1 functional
    • Package version: 2.0.0 → 2.1.0 functional
  • 17 Aug 26 +12
    • Known CVEs: unverified → pass security
    • Dependency health: unverified → 1.00 functional
  • 16 Aug 26 +6
    • GHSA-f88m-g3jw-g9cj affects this package: high security
    • Known CVEs: unverified → fail security
    • Known CVEs: unverified → pass security
    • Stability: Stability not yet verified: we do not have a sandbox capture of the MCP schema this version of the package serves yet. security
    • Capabilities: fail → unverified functional
    • Tool coverage: 100 → unverified functional
    • Schema quality: pass → fail functional
    • Tool coverage: 19% → 100% functional
    • Stability: unverified → 0.03 functional
    • Dependency health: unverified → 1.00 functional
    • First check of Schema quality: unverified functional
    • Schema quality: good → excellent functional
    • Package version: 1.44.1 → 2.0.0 functional
    • Package version: 1.44.1 → 1.48.0 functional
    • Package version: 1.44.1 → 1.47.0 functional
    • Package version: 1.44.1 → 1.46.0 functional
    • Package version: 1.44.1 → 1.45.0 functional
  • 15 Aug 26 49

    First indexed and scored.

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 19 Aug 2026 · Analysed npm/vecline@2.1.1

Provenance No attestation

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

Result No attestation
Ecosystem npm
Dependencies 49 packages
Packages resolved 49
Tree resolution Complete
MCP tools · 16 exposed · ~1,831 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.

Tool Tokens
centerline ~109

Trace line art to single-stroke centreline SVG (for plotters, lasers, CNC). Optionally emit G-code with tool=laser|pen.

NameTypeReqDescription
gcodebooleanEmit G-code toolpaths instead of an SVG. Changes the output format.
inputstringyesPath to the line-art image
outputstringOptional output path; extension should match the format produced
toolstringG-code dialect; only used when gcode is true

No output schema declared.

No examples provided.

component ~132

Turn an SVG into a React, Vue, Svelte or Solid component, ready to import. Emits typed TSX for React and Solid and an SFC for Vue and Svelte, and refuses rather than writing source that will not parse.

NameTypeReqDescription
currentColorbooleanReplace solid fills with currentColor so CSS `color` drives it
frameworkstringTarget framework (default react)
inputstringyesPath to the SVG
namestringComponent name, PascalCase (default Icon)
outputstringDestination path; defaults beside the input with the framework extension

No output schema declared.

No examples provided.

convert ~91

Convert between formats by extension. Supports raster↔SVG plus vector export to .dxf/.eps/.pdf (CAD/CNC/print).

NameTypeReqDescription
cmykbooleanEmit CMYK colour in EPS/PDF output, for print workflows
inputstringyesPath to the source file (raster or SVG)
outputstringyesDestination path; its extension chooses the target format

No output schema declared.

No examples provided.

crop ~145

Content-aware crop to an aspect ratio, keeping the salient subject (edges + saturation) rather than the centre. aspect like "1:1", "16:9", "4:5".

NameTypeReqDescription
aspectstringTarget ratio as "W:H", e.g. "1:1", "16:9", "4:5". Default "1:1"
heightnumberExplicit target height in pixels; an alternative to aspect
inputstringyesPath to the image to crop
outputstringyesDestination path; its extension chooses the encoder
widthnumberExplicit target width in pixels; an alternative to aspect

No output schema declared.

No examples provided.

diff ~138

Perceptual visual-regression diff. Paints a CIEDE2000 heatmap of what changed between two images (raster or SVG) and reports changed-pixel count/fraction, max & mean ΔE, and SSIM. Give an output path to save the heatmap.

NameTypeReqDescription
candidatestringyesPath to the image being compared; must match the reference size
outputstringOptional .png heatmap path
referencestringyesPath to the baseline image (raster or SVG)
thresholdnumberCIEDE2000 above which a pixel counts as changed (default 2)

No output schema declared.

No examples provided.

doc_to_images ~178

Render a document (PDF, SVG, or Office docx/xlsx/pptx) to one image per page. PDF needs the optional mupdf package; Office needs local LibreOffice. [LIMITED on this machine: SVG input works; PDF needs the optional `mupdf` package (npm i mupdf) and Office needs LibreOffice.]

NameTypeReqDescription
dpinumberRender resolution; higher is sharper and slower (default 144)
formatstringpng (default), jpeg, webp, avif
inputstringyesPath to the PDF, SVG or Office document
outDirstringyesDirectory to write page images into; created if absent
pagesstring1-based page spec, e.g. "1,3-5" (PDF/Office)

No output schema declared.

No examples provided.

extract ~105

Recover the original bitmap from an SVG written by embed/lossless mode, and verify it byte for byte. This is the proof behind the round-trip claim: the recovered file is hashed and checked against the digest recorded when the SVG was written, so an agent can demonstrate exactness rather than assert it.

NameTypeReqDescription
inputstringyesPath to an SVG carrying an embedded bitmap
outputstringWhere to write the recovered file; defaults beside the input with its own extension

No output schema declared.

No examples provided.

image_info ~74

Inspect an image without converting it: dimensions, format, colour space, alpha, distinct colour count and run density — and which vectorize mode suits it, including whether bit-exact output is achievable. Call this first when choosing between `pixel` and `trace`.

NameTypeReqDescription
inputstringyesPath to the image to inspect

No output schema declared.

No examples provided.

images_to_pdf ~71

Combine images into one multi-page PDF (one image per page).

NameTypeReqDescription
dpinumberAssumed image resolution, which sets the physical page size (default 72)
inputsarrayyesImage paths, in the page order you want
outputstringyesDestination .pdf path

No output schema declared.

No examples provided.

measure ~76

Measure how close two images (raster or SVG) are: PSNR, SSIM, mean CIEDE2000, and whether they are pixel-identical.

NameTypeReqDescription
candidatestringyesPath to the image being scored against the reference
referencestringyesPath to the original / expected image (raster or SVG)

No output schema declared.

No examples provided.

office_convert ~89

Convert an Office document ⇄ PDF (and between Office formats) via local LibreOffice. Target format is the output file extension. [UNAVAILABLE on this machine: needs LibreOffice (install from libreoffice.org, or set VECLINE_SOFFICE).]

NameTypeReqDescription
inputstringyesPath to the source document
outputstringyesDestination path; its extension chooses the target format

No output schema declared.

No examples provided.

optimize ~91

Minify an SVG without changing what it draws: round coordinates, drop default attributes, strip the prolog. Render-preserving by construction, so it is safe on any SVG, not only ours.

NameTypeReqDescription
inputstringyesPath to the SVG
outputstringDestination path; overwrites the input when omitted
precisionnumberDecimal places kept in path coordinates (0–8)

No output schema declared.

No examples provided.

palette ~54

Extract a perceptual dominant-colour palette (hex + weight) from an image.

NameTypeReqDescription
colorsnumberHow many dominant colours to return (default 6)
inputstringyesPath to the image to sample

No output schema declared.

No examples provided.

placeholder ~34

Generate a BlurHash string for lazy-loading a raster image.

NameTypeReqDescription
inputstringyesPath to the raster image to summarise

No output schema declared.

No examples provided.

rasterize ~135

Render an SVG to a raster image (PNG/JPEG/WebP/AVIF/TIFF). The inverse of vectorize, and the way to see what an SVG actually draws — an agent that has produced or received SVG can turn it into pixels it is able to inspect.

NameTypeReqDescription
backgroundstringPaint onto this colour, e.g. "#ffffff". SVGs render on transparent by default.
inputstringyesPath to the SVG
outputstringDestination path; its extension chooses the encoder (default .png)
widthnumberRender width in pixels; height follows the aspect ratio

No output schema declared.

No examples provided.

vectorize ~309

Convert a raster image (PNG/JPEG/WebP/…) to SVG, locally and deterministically. BEST FOR flat art — logos, icons, UI, screenshots, pixel art — where `lossless` mode returns vector geometry that rasterises back BIT-EXACT (verified, not asserted). For photographs it produces a measured approximation; a neural cloud vectoriser will often look better, so prefer this when determinism, privacy or provable exactness matter. Auto-picks pixel/trace/embed, or force a mode. Writes to `output` if given, else returns the SVG. Pass `verify: true` to render the SVG back and return SSIM/PSNR/ΔE and whether it is pixel-identical — the proof, in the same call.

NameTypeReqDescription
colorsnumberPalette size for trace mode (2–256)
inputstringyesPath to the source raster image
modestringauto (default) picks per image; pixel/lossless are bit-exact on flat art; trace approximates with paths; embed wraps the original raster losslessly
outputstringOptional .svg output path
presetstringTuning for the trace path; ignored by pixel and embed modes
verifybooleanRasterise the result back and measure it. Returns JSON with ssim, psnr, meanDeltaE, pixelIdentical and svgBytes instead of the SVG text. Costs one extra render.

No output schema declared.

No examples provided.