API & MCP
Everything a person can do on Nonogram Maker (Picross from a Picture), a program or AI agent can do with the same inputs and get the identical result.
HTTP API
POST https://printshopnonogram.usefulweb.app/api/v1/calculate– run Nonogram Maker (Picross from a Picture)GET https://printshopnonogram.usefulweb.app/api/v1/tool– inputs, output schema, examples- OpenAPI 3.1: /openapi.json · /openapi.yaml
- Errors:
application/problem+json;422includes per-fielderrors.
Nonogram Maker (Picross from a Picture)
Turn a pixel drawing, a built-in picture or a PNG image into a printable nonogram (picross, griddler) with row and column clues. A line solver checks that the puzzle can be solved without guessing; if not, it adds as few given cells as it can until it can. Answer key included.
| Field | Type | Default | Description |
|---|---|---|---|
source | select (picture, grid, image) | "picture" | Picture from |
picture | select (heart, house, cat, tree, fish, rocket) | "cat" | Built-in picture |
grid | textarea | — | Drawing (# = filled, . = empty). One line per row, up to 50 × 50. |
image | file | — | PNG image |
cols | integer | 20 | Columns (image) |
rows | integer | 20 | Rows (image) |
threshold | integer | 128 | Darkness threshold (image, 0–255). Cells darker than this are filled. |
invert | boolean | false | Invert (light cells filled) |
fix | boolean | true | Add givens until it solves line by line |
seed | text | "nonogram-1" | Seed. The same seed and settings always give the same puzzles. Change it for new ones. |
title | text | — | Title on the page (optional) |
answers | boolean | true | Answer-key pages |
header | boolean | true | Name and date line |
paper | select (a3, a4, a5, a6, b5, letter, legal, tabloid, halfletter) | "a4" | Paper size |
orientation | select (portrait, landscape) | "portrait" | Orientation |
Example request
Built-in cat
curl -X POST https://printshopnonogram.usefulweb.app/api/v1/calculate -H 'content-type: application/json' -d '{"source":"picture","picture":"cat"}'
Every result contains
inputs (normalised, defaults applied), summary, result (validated against the published schema), units, assumptions, sources, warnings, computedAt and links.
MCP (Model Context Protocol)
- Streamable HTTP endpoint:
https://printshopnonogram.usefulweb.app/mcp– protocol revisions 2026-07-28 (stateless) and 2025-11-25 / 2025-06-18 / 2025-03-26 (initialize handshake). - Tools:
printshop_nonogram - Local stdio connector:
node src/mcp-stdio.ts --tool=printshop-nonogram
{
"mcpServers": {
"printshop-nonogram": { "type": "http", "url": "https://printshopnonogram.usefulweb.app/mcp" }
}
}