Kokon
NPM · KOKON-MCP
Generate and edit images offline with Qwen-Image 2.1 on your GPU. Needs the Kokon desktop app.
Available components
Last scanned (5 hours ago)
Scores higher than 58% of npm servers
Category Design and Media
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
- No production dependencies, so there is no dependency health to assess. View diagnostics → Pass
Provenance & Transparency48
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
- Clear OSI-approved license (AGPL-3.0-only).Pass
- Actively maintained (last published 0 days ago).Pass
- Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability57
- AI-judged instruction clarity (good).Pass
- Context-footprint check failed: tool/resource definitions use about 2354 tokens (~294/item across 8 items; 8 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 Management73
- Stability observed for 22 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage94
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 82% of tool parameters carry a description.Partial
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 8 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 8 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
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.
- 5 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.
- 4 Nov 26 0
- Tool safety: pass → unverified ▼ security
- Stability: 0.67 → unverified ▼ security
- Capabilities: pass → unverified ▼ functional
- Tool coverage: 100 → unverified ▼ functional
- Package version: 0.11.1 → 0.12.0 functional
- 3 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.
- 1 Nov 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.
- 30 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.
- 28 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.
- 27 Oct 26 +15
- Malware scan: unverified → pass ▲ security
- Package version: 0.9.1 → 0.11.1 functional
- 26 Oct 26 −15
- Malware scan: pass → unverified ▼ security
- Package version: 0.11.0 → 0.11.1 functional
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/kokon-mcp@0.12.0
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 0 packages
| Packages resolved | 0 |
|---|---|
| Tree resolution | Complete |
Background: SBOMs and build attestations, explained →
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 →
edit_image Edit image ~361
Edit an existing image with a natural-language instruction (e.g. 'make the background nighttime, keep the foreground unchanged'). Preserves the input's width, height and aspect ratio by default. The input file is never overwritten.
| Name | Type | Req | Description |
|---|---|---|---|
| image_path | string | yes | Image to edit (absolute, or relative to the project) |
| include_preview | boolean | – | Also return a small JPEG preview in the tool result. Default false: images stay local and are not sent to the model. |
| output_path | string | – | Optional destination (absolute, or relative to the project). Must be inside the project or the app output folder. Existing files are never overwritten; a numbered name is used instead. |
| preserve_dimensions | boolean | – | Keep the input's exact width/height (default true) |
| prompt | string | yes | The edit instruction, written by you in English and used as is (Kokon does not rewrite it): start with the operation (Change, Replace, Remove, Add, Turn...), say exactly what changes, where, and what… |
| quality | string | – | All run Qwen-Image 2.1 Turbo (8 steps): fast = ~1 MP (the default, fastest); balanced = ~1.5K; quality = native 2K (slowest; edits share 2K with their references) |
| seed | integer | – | Seed for reproducible results; omit or -1 for random. Never reuse the seed the source image was generated with: use a different one or omit it |
No output schema declared.
No examples provided.
edit_images Edit with multiple references ~455
Edit image 1 with the help of other images (up to 10 in all) and an instruction, e.g. put the product from image 2 in the hand of the person in image 1. Order matters: refer to them as image 1, image 2, ... in the prompt. The output follows image 1's aspect ratio unless width/height or aspect_ratio are given. For a new scene that only uses the images as references, use generate_image with reference_images.
| Name | Type | Req | Description |
|---|---|---|---|
| aspect_ratio | string | – | Aspect ratio such as 1:1, 4:3, 3:4, 16:9, 9:16, or auto (inferred from the prompt) |
| height | integer | – | – |
| image_paths | array | yes | Reference images in order; refer to them as image 1, image 2, ... in the prompt |
| include_preview | boolean | – | Also return a small JPEG preview in the tool result. Default false: images stay local and are not sent to the model. |
| output_path | string | – | Optional destination (absolute, or relative to the project). Must be inside the project or the app output folder. Existing files are never overwritten; a numbered name is used instead. |
| prompt | string | yes | The edit instruction, written by you in English and used as is (Kokon does not rewrite it): image 1 is the image being changed; start with Place or Combine, say what is taken from each image (image 2… |
| quality | string | – | All run Qwen-Image 2.1 Turbo (8 steps): fast = ~1 MP (the default, fastest); balanced = ~1.5K; quality = native 2K (slowest; edits share 2K with their references) |
| seed | integer | – | Seed for reproducible results; omit or -1 for random. Never reuse the seed the source image was generated with: use a different one or omit it |
| width | integer | – | – |
No output schema declared.
No examples provided.
generate_image Generate image ~569
Generate an image from a text prompt with the local Qwen-Image 2.1 model, optionally using reference images (a person, a product, a style) in a new scene. Write the full, detailed prompt yourself (see the prompt field): it is used as is. Dimensions are chosen automatically (aspect ratio can be inferred from the prompt, e.g. '16:9 hero image') unless width/height or aspect_ratio are given. Returns the absolute path of the saved PNG. Runs fully offline; typically 45 s–4 min.
| Name | Type | Req | Description |
|---|---|---|---|
| aspect_ratio | string | – | Aspect ratio such as 1:1, 4:3, 3:4, 16:9, 9:16, or auto (inferred from the prompt) |
| height | integer | – | Output height in pixels (needs width too). |
| include_preview | boolean | – | Also return a small JPEG preview in the tool result. Default false: images stay local and are not sent to the model. |
| output_path | string | – | Optional destination (absolute, or relative to the project). Must be inside the project or the app output folder. Existing files are never overwritten; a numbered name is used instead. |
| prompt | string | yes | The final prompt, written by you in English and used as is (Kokon does not rewrite it): one paragraph of about 60-200 words describing the finished image: medium and style first, the subject and what… |
| quality | string | – | All run Qwen-Image 2.1 Turbo (8 steps): fast = ~1 MP (the default, fastest); balanced = ~1.5K; quality = native 2K (slowest; edits share 2K with their references) |
| reference_images | array | – | Optional images the new image uses (a person, a product, a place, a style), in order; refer to them as image 1, image 2, ... in the prompt. The output is sized like any new image, not like the refere… |
| seed | integer | – | Seed for reproducible results; omit or -1 for random |
| width | integer | – | Output width in pixels (needs height too). Omit to choose automatically. |
No output schema declared.
No examples provided.
get_generator_status Generator status ~33
Whether the local inference server is running and the model loaded, GPU and VRAM, the active job and the queue.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_image_info Image info ~48
Width, height, aspect ratio, file type and, for images made by Kokon, the generation metadata (prompt, seed, model, steps...).
| Name | Type | Req | Description |
|---|---|---|---|
| image_path | string | yes | – |
No output schema declared.
No examples provided.
inpaint_image Inpaint image ~355
Change only the masked area of an image (mask: white = change, black = keep): edit it, remove what is there, replace it, or add something inside it. The model is shown the area marked on a copy of the image; pixels outside the mask are preserved exactly.
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | – | edit: change the area as the prompt says; remove: erase what is there and fill with background (prompt optional, e.g. 'the bin'); replace: put the prompt's subject in its place; add: add the prompt's… |
| image_path | string | yes | – |
| include_preview | boolean | – | Also return a small JPEG preview in the tool result. Default false: images stay local and are not sent to the model. |
| mask_path | string | yes | Mask image: white = area to change, black = keep (or opaque strokes on a transparent layer) |
| output_path | string | – | Optional destination (absolute, or relative to the project). Must be inside the project or the app output folder. Existing files are never overwritten; a numbered name is used instead. |
| prompt | string | – | The change, or the subject to add/replace with; optional for remove |
| quality | string | – | All run Qwen-Image 2.1 Turbo (8 steps): fast = ~1 MP (the default, fastest); balanced = ~1.5K; quality = native 2K (slowest; edits share 2K with their references) |
| seed | integer | – | Seed for reproducible results; omit or -1 for random. Never reuse the seed the source image was generated with: use a different one or omit it |
No output schema declared.
No examples provided.
outpaint_image Expand image (outpaint) ~298
Extend an image beyond its borders. Give the expansion per side in pixels or percent; the canvas, mask and model-aligned sizes are built automatically and the original pixels are preserved exactly.
| Name | Type | Req | Description |
|---|---|---|---|
| bottom | number | – | – |
| image_path | string | yes | – |
| include_preview | boolean | – | Also return a small JPEG preview in the tool result. Default false: images stay local and are not sent to the model. |
| left | number | – | – |
| output_path | string | – | Optional destination (absolute, or relative to the project). Must be inside the project or the app output folder. Existing files are never overwritten; a numbered name is used instead. |
| prompt | string | yes | What the extended area should contain |
| quality | string | – | All run Qwen-Image 2.1 Turbo (8 steps): fast = ~1 MP (the default, fastest); balanced = ~1.5K; quality = native 2K (slowest; edits share 2K with their references) |
| right | number | – | – |
| seed | integer | – | Seed for reproducible results; omit or -1 for random. Never reuse the seed the source image was generated with: use a different one or omit it |
| top | number | – | – |
| units | string | – | Units for left/right/top/bottom; percent is relative to the image width (left/right) or height (top/bottom) |
No output schema declared.
No examples provided.
upscale_image Upscale image ~235
Enlarge an image (default 2x, or to a width/height up to 8192 px). Runs the upscaler model chosen in Kokon (Superscale-SP by default; seconds on a PC GPU, longer on a Mac; adds no new content). Saves a new file; the input is never overwritten.
| Name | Type | Req | Description |
|---|---|---|---|
| height | integer | – | Target height in pixels; width follows the aspect ratio unless also given |
| image_path | string | yes | Image to upscale (absolute, or relative to the project) |
| include_preview | boolean | – | Also return a small JPEG preview in the tool result. Default false: images stay local and are not sent to the model. |
| output_path | string | – | Optional destination (absolute, or relative to the project). Must be inside the project or the app output folder. Existing files are never overwritten; a numbered name is used instead. |
| scale | number | – | Enlargement factor, e.g. 2 (default 2 when no width/height is given) |
| width | integer | – | Target width in pixels; height follows the aspect ratio unless also given |
No output schema declared.
No examples provided.
How do I install the Kokon MCP server?
Kokon runs locally as an npm package, launched with npx -y kokon-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 · kokon-mcp
claude mcp add gabrielelozupone-kokon -- npx -y kokon-mcp
What is the Kokon MCP server?
Kokon is an MCP server listed in the public MCP registry as io.github.GabrieleLozupone/kokon. Generate and edit images offline with Qwen-Image 2.1 on your GPU. Needs the Kokon desktop app. This page covers its npm package (kokon-mcp).
Is the Kokon MCP server safe to use?
Kokon scores 78 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 Kokon MCP server expose?
Kokon exposes 8 tools: generate_image, edit_image, edit_images, outpaint_image, inpaint_image, and 3 more. Their descriptions and schemas cost roughly 2,354 tokens of context every time the server is loaded.
Is the Kokon MCP server still maintained?
Kokon 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 Kokon MCP server under?
Kokon declares the AGPL-3.0-only licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.