Moltline Vision Maths
Image header probing, bbox conversion, resize plans and colour maths. 4 of 6 free.
| Endpoint | https://mcp.moltlinestudio.com/vision (streamable-http) |
|---|---|
| Registry version | 1.2.0 |
| Now | 6 tools · grade B (82) · pin ts_7de92dec25f01f34573568964d3d5608 · protocol 2025-06-18 |
| First / last listed | 2026-10-25 06:43 UTC / 2026-10-25 06:43 UTC |
| Grade over time | 2026-10-25: B (82), 6 tools |
Is this your server? Own a server? ToolFit hosted watch re-checks it every 24 h ($0.25 per 30 days) or 6 h ($0.60) and sends you an HMAC-signed webhook when its tools or grade change: POST https://api.youraitools.co/toolfit/v1/watch. To opt out, see About & opt-out.
Tools: image_probe bbox_convert resize_plan colour_check nms detection_metrics
image_probe | Read an image's format and pixel size from its header alone. FREE.
Dimensions live in the first few dozen bytes of PNG, JPEG, GIF, BMP and
WebP, so a base64 prefix is enough - you do not need to send the whole
file, and nothing is decoded. Typical input {"data_base64": "iVBORw0KG..."}
returns {"format": "png", "width": 1920, "height": 1080, "aspect_ratio":
1.7778, "aspect_label": "16:9", "megapix params: data_base64* |
bbox_convert | Convert bounding boxes between COCO, Pascal VOC and YOLO. FREE.
The three formats disagree on everything: COCO is [x, y, width, height],
VOC is [x1, y1, x2, y2], YOLO is [cx, cy, w, h] normalised to the image.
Getting this wrong produces boxes that look plausible and quietly ruin
every metric. Typical input {"boxes": [[10, 20, 100, 50]], "from_format":
"coco", "to_format": "yolo", "image_width": params: boxes*, from_format*, to_format*, image_width, image_height, clip |
resize_plan | Work out the exact scale, padding and crop for a model input size. FREE.
Returns the numbers you need to transform boxes alongside the image, which
is the step that usually gets skipped. Typical input {"width": 1920,
"height": 1080, "target": "yolo_640"} returns {"scale": 0.3333,
"resized": [640, 360], "pad": {"left": 0, "top": 140, "right": 0,
"bottom": 140}, "box_transform": "x_new = x * 0.3333 params: width*, height*, target, target_size, mode |
colour_check | Check a colour pair against the WCAG contrast thresholds. FREE.
Uses the WCAG 2 relative-luminance formula, so the number matches what an
accessibility audit will report. Typical input {"foreground": "#767676",
"background": "#ffffff"} returns {"contrast_ratio": 4.54, "AA": true,
"AAA": false, "required": {"AA": 4.5, "AAA": 7.0}, "verdict": "Passes AA
for normal text, fails AAA."}.
Use when gene params: foreground*, background*, large_text |
nms | Remove duplicate detections of the same object. PREMIUM (license).
Greedy non-maximum suppression: keep the highest-scoring box, drop
everything overlapping it above the threshold, repeat. Ties break on the
earlier index, so the result is deterministic rather than dependent on sort
stability. Typical input {"boxes": [[0,0,10,10],[1,1,11,11],[50,50,60,60]],
"scores": [0.9, 0.8, 0.7]} returns {"kee params: boxes*, scores*, iou_threshold, box_format, image_width, image_height |
detection_metrics | Score detections against ground truth and show the working. PREMIUM (license).
Greedy matching at the IoU threshold, highest-confidence prediction first,
each ground-truth box matched at most once - the standard protocol.
Reports per-class precision, recall and F1, and average precision by the
all-points interpolation used by Pascal VOC 2010 onward. Typical input
{"predictions": [{"box": [0,0,10, params: predictions*, ground_truth*, iou_threshold, box_format, image_width, image_height |
Entries describe changes in tool definitions. They are not statements about a server, its quality or its author. The grade measures how the tool definitions fit model providers (token cost, schema compatibility, confusable names) as scored by the ToolFit engine at the time of the listing. JSON: append .json. Opt-out: how or hello@youraitools.co.