# Picorn (remote · picorn.com)

Picorn turns AI briefs into editable social images and videos with layers, timelines, and renders.

- Trust score: 71/100 (medium)
- Change this week: 0
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-09-28

## Components

- remote · `picorn.com`: 71/100 (this document), [markdown](https://verifymcp.io/servers/cueqzapper-picorn/picorn.md), [page](https://verifymcp.io/servers/cueqzapper-picorn/picorn)

## Channel facts

- Endpoint: `https://picorn.com/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `2.2.0`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, 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-28.

- **Endpoint Security**: 57/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - Authorisation check failed: no authorisation is required to call this server, and it exposes a tool marked destructive (picorn_editor_delete_slide).
  - HTTPS is enforced; there's no plaintext access path.
  - HSTS check failed: the Strict-Transport-Security header is absent.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 63/100
  - AI-judged instruction clarity (good).
  - Context-footprint check failed: tool/resource definitions use about 3499 tokens (~109/item across 32 items; 32 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 98/100
  - Stability check failed: schema churn in the 30 days we've observed: 0 tool removals, 1 breaking changes, 0 auth/transport breaks, 2 additions.
- **Tool Coverage**: 70/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 11% of tool parameters carry a description.
- **Tool Safety**: 92/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - 2 of 3 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "picorn_editor_ungroup_layers" implies "remove" and declares no destructiveHint at all, which the MCP spec reads as destructive by default.
  - An AI judge read all 33 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 60/100
  - Spec-recency check failed: implements MCP spec 2025-06-18; the latest is 2026-07-28.

## Install

### How do I install the Picorn MCP server?

Picorn is a hosted endpoint at https://picorn.com/mcp, so there is nothing to install locally. 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 --transport http cueqzapper-picorn 'https://picorn.com/mcp'
```

### Cursor

```json
{
  "mcpServers": {
    "cueqzapper-picorn": {
      "url": "https://picorn.com/mcp"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "cueqzapper-picorn": {
      "type": "http",
      "url": "https://picorn.com/mcp"
    }
  }
}
```

### Codex

```toml
[mcp_servers.cueqzapper-picorn]
url = "https://picorn.com/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "cueqzapper-picorn": {
      "type": "remote",
      "url": "https://picorn.com/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add cueqzapper-picorn --url 'https://picorn.com/mcp' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  cueqzapper-picorn:
    url: "https://picorn.com/mcp"
```

### Netclaw

```json
{
  "McpServers": {
    "cueqzapper-picorn": {
      "Transport": "http",
      "Url": "https://picorn.com/mcp"
    }
  }
}
```

### Vellum

```bash
assistant mcp add cueqzapper-picorn -t streamable-http -u 'https://picorn.com/mcp'
```

### Other

```json
{
  "mcpServers": {
    "cueqzapper-picorn": {
      "type": "http",
      "url": "https://picorn.com/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## 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-28 (score 71, 0)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-09-25 (score 71, 0)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

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

- [security regression] Stability: 0.90 → fail
- [security regression] A breaking change shipped without a version bump: still 2.4.0
- [security] Tool “picorn_design_image” rewrote its description, which is the text the model reads
- [security] Tool “picorn_editor_render_project” rewrote its description, which is the text the model reads
- [functional regression] “picorn_design_image” added a required parameter “svg”, so existing callers break
- [functional regression] “picorn_design_image” dropped the required parameter “text”
- [functional regression] “picorn_design_image” dropped the required parameter “title”
- [cosmetic] “picorn_design_image” added an optional parameter “height”
- [cosmetic] “picorn_design_image” added an optional parameter “width”
- [cosmetic] “picorn_editor_render_project” added an optional parameter “pageHeightMm”
- [cosmetic] “picorn_editor_render_project” added an optional parameter “pageWidthMm”
- [cosmetic] “picorn_design_image” dropped the optional parameter “aspectRatio”
- [cosmetic] “picorn_design_image” dropped the optional parameter “forceGenerate”
- [cosmetic] “picorn_design_image” dropped the optional parameter “layout”
- [cosmetic] Tool “picorn_design_image” changed its title: Picorn: design a finished image → Picorn: render a Codex-authored finished design

### 2026-09-08 (score 70, +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-05 (score 69, +1)

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

### 2026-09-03 (score 68, +1)

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

### 2026-09-02 (score 67, 0)

- [security] The server rewrote its instructions, which are the text every model session reads
- [security] Tool “picorn_editor_create_project” rewrote its description, which is the text the model reads
- [security] Tool “picorn_render_svg” rewrote its description, which is the text the model reads
- [functional regression] Schema quality: pass → fail
- [cosmetic] “picorn_editor_create_project” added an optional parameter “svg”
- [cosmetic] “picorn_search_icons” added an optional parameter “visualStyle”

### 2026-09-01 (score 67, +1)

- [security] The server rewrote its instructions, which are the text every model session reads
- [functional regression] Schema quality: 2862 → 3153
- [functional] Server version: 2.2.0 → 2.4.0
- [functional] New tool “picorn_editor_create_slideshow”

## MCP tools (32)

### `picorn_capabilities` (~30 tokens)

Picorn: capabilities

List live canvas formats, fonts, layouts, image models, GPU reachability and fair-use limits.

### `picorn_projects_create` (~67 tokens)

Picorn Projects: create marketing project

Create a marketing project that can hold many editor files and imported image assets. Keep the returned workspaceProjectId and workspaceProjectKey together; use them when adding every related file.

Input parameters:

- `brandColors` (array)
- `description` (string)
- `name` (string, required)

### `picorn_projects_inspect` (~84 tokens)

Picorn Projects: inspect marketing project

List every editor file, imported asset, and the project brand profile with named colors and saved logos or visual references. File entries include their current thumbnail, status, creation URL and canonical /studio/editor?runId=... editorUrl. Always give the user that editorUrl.

Input parameters:

- `workspaceProjectId` (string, required)
- `workspaceProjectKey` (string, required)

### `picorn_projects_update` (~77 tokens)

Picorn Projects: update project and brand colors

Update the name, description, or named color scheme of a marketing project, then return its complete file, asset, and brand index.

Input parameters:

- `brandColors` (array)
- `description` (string)
- `name` (string)
- `workspaceProjectId` (string, required)
- `workspaceProjectKey` (string, required)

### `picorn_design_image` (~96 tokens)

Picorn: render a Codex-authored finished design

CODEX-ONLY. The calling Codex supplies the complete SVG, including copy and layout. Picorn resolves declared placeholders and renders it through Fabric/SVG. No internal language or design model is called.

Input parameters:

- `height` (integer)
- `preview` (boolean): Return an inline preview. Default true.
- `svg` (string, required): Complete Codex-authored SVG with a viewBox.
- `width` (integer)

### `picorn_generate_image` (~75 tokens)

Picorn: generate an image

Generate a raw image with self-hosted Z-Image Turbo. Returns an inline preview and public creationUrl.

Input parameters:

- `aspectRatio` (string)
- `height` (integer)
- `preview` (boolean)
- `prompt` (string, required)
- `seed` (integer)
- `width` (integer)

### `picorn_generate_vector_assets` (~155 tokens)

Picorn: generate native vector signets or icons

Use Picorn's native editor engine: first generate raster artwork with self-hosted Z-Image Turbo on ComfyUI, remove its background, then convert it through the bundled multi-colour SVG converter. Generates five variants, selects the strongest result and returns the top three. Signets also return one layered editor file that displays the three shortlisted SVGs inside the same native project. Use this tool for every newly generated signet and custom icon.

Input parameters:

- `kind` (string, required)
- `numColors` (integer)
- `palette` (array)
- `projectName` (string)
- `prompt` (string, required)
- `workspaceProjectId` (string)
- `workspaceProjectKey` (string)

### `picorn_edit_image` (~81 tokens)

Picorn: edit an existing image

Transform an existing image with Flux 2 Klein. Returns an inline preview and public creationUrl.

Input parameters:

- `cfg` (number)
- `imageBase64` (string)
- `imageUrl` (string)
- `preview` (boolean)
- `prompt` (string, required)
- `seed` (integer)
- `steps` (integer)

### `picorn_render_svg` (~199 tokens)

Picorn: render an SVG design

Render your SVG through Picorn with real typography and declarative image workers. Put placeholder <rect> elements inside the SVG and choose their backend with data-clipart-engine="svg-converter" (fresh ComfyUI image, background removal, then Picorn PNG→SVG vectorisation), data-clipart-engine="z-image-turbo" (raster photo/cutout), or data-clipart-engine="library" (existing vector only). Include data-clipart-prompt; use data-clipart-num-colors="1..7" for svg-converter, and data-clipart-keep-bg="true" for a full scene. Picorn resolves all placeholders internally; never call the admin converter or return generated base64 yourself. Returns an inline preview and public creationUrl.

Input parameters:

- `height` (integer)
- `preview` (boolean)
- `svg` (string, required)
- `width` (integer)

### `picorn_editor_import_image` (~152 tokens)

Picorn Editor: import image asset

Import image bytes from any external or agent-native image generator into Picorn storage. Pass imageBase64 with or without a data: prefix, then use the returned imageUrl in one or more native image layers. This is the bridge for iterative generator → editor → render workflows.

Input parameters:

- `imageBase64` (string): Image bytes as base64, with or without a data:image/... prefix.
- `imageUrl` (string): An image URL on a Picorn-approved host.
- `name` (string): Asset name shown in the marketing project.
- `preview` (boolean): Return an inline preview. Default true.
- `workspaceProjectId` (string)
- `workspaceProjectKey` (string)

### `picorn_editor_create_project` (~272 tokens)

Picorn Editor: create project

Create a persistent native Picorn editor project. For a finished static layout, pass svg: a complete SVG containing text/shapes plus declarative data-clipart placeholders. Picorn runs the selected engines in the background, stores the generated assets, converts the SVG into editable native layers, and returns a populated project in one call. Omit svg only when you intentionally want an empty slide for incremental layer operations. Returns projectId, slideId, exact canvas dimensions, and the canonical /studio/editor?runId=... editorUrl that must be included in the final answer.

Input parameters:

- `aspectRatio` (string)
- `background` (object): CanvasBackground: color, gradient, texture, or transparent.
- `height` (integer): Required only for custom canvases.
- `svg` (string): Complete SVG layout. Generated visuals are <rect data-clipart="true" data-clipart-engine="svg-converter|z-image-turbo|library" data-clipart-prompt="..." ... /> placeholders resolved internally.
- `title` (string)
- `width` (integer): Required only for custom canvases.
- `workspaceProjectId` (string): Marketing project that will contain this editor file.
- `workspaceProjectKey` (string): Access key returned by picorn_projects_create.

### `picorn_editor_create_slideshow` (~250 tokens)

Picorn Editor: create complete agent slideshow

Create, persist and render a complete 1–20 slide Picorn file in one deterministic call from finished agent-authored SVG and/or native editable layers. The calling agent is the only design model: this path does not call /api/generate-svg, Gemini, OpenRouter, or another LLM. Work is bounded before persistence to 50,000,000 total canvas pixels and 1,000 total layers. Fair-use cost is one unit per four slides, rounded up. Returns every persistent render URL, an inline contact-sheet preview, and the canonical editorUrl. Response provenance is modelProvider="calling-agent" and externalLlmCalls=0.

Input parameters:

- `aspectRatio` (string)
- `background` (object): Default background for slides that omit their own background.
- `caption` (string)
- `format` (string)
- `height` (integer)
- `quality` (number)
- `slides` (array, required)
- `tags` (array)
- `title` (string)
- `transparentBackground` (boolean)
- `width` (integer)
- `workspaceProjectId` (string)
- `workspaceProjectKey` (string)

### `picorn_editor_inspect_project` (~42 tokens)

Picorn Editor: inspect project

Read the complete project, including every slide, layer, property, z-index, and latest rendered image URL.

Input parameters:

- `projectId` (string, required)

### `picorn_video_create_project` (~123 tokens)

Picorn Video: create project

Create a persistent video project with a real 30fps timeline, native layers, keyframes and a canonical /video/editor link.

Input parameters:

- `aspectRatio` (string)
- `background` (object)
- `durationFrames` (integer): Initial timeline duration in frames. Default 150.
- `fps` (integer): Timeline and export FPS. Default 30.
- `height` (integer)
- `title` (string)
- `width` (integer)
- `workspaceProjectId` (string)
- `workspaceProjectKey` (string)

### `picorn_video_import_media` (~102 tokens)

Picorn Video: import media

Upload agent-owned MP4, WebM, MOV, MP3, WAV, AAC, M4A or OGG bytes into Picorn storage for use by video/audio timeline layers. Maximum 15 MB.

Input parameters:

- `contentType` (string): Required when mediaBase64 has no data: prefix.
- `mediaBase64` (string, required): Raw base64 or a data: URL. Maximum decoded size 15 MB.
- `name` (string)

### `picorn_editor_add_slide` (~58 tokens)

Picorn Editor: add slide

Add another slide to an editor project. Projects support up to 20 slides. Returns the new slide as an inline preview.

Input parameters:

- `background` (object)
- `projectId` (string, required)
- `role` (string)

### `picorn_editor_update_slide` (~70 tokens)

Picorn Editor: update slide

Change a slide background, semantic role, or image prompt. Returns the changed slide as an inline preview.

Input parameters:

- `background` (object)
- `imagePrompt` (string)
- `projectId` (string, required)
- `role` (string)
- `slideId` (string, required)

### `picorn_editor_delete_slide` (~43 tokens)

Picorn Editor: delete slide

Delete a slide and its layers. A project always keeps at least one slide.

Input parameters:

- `projectId` (string, required)
- `slideId` (string, required)

### `picorn_editor_add_layer` (~159 tokens)

Picorn Editor: add layer

Add a native editor layer. Supported types: text, image, shape, group, qr, video, audio. SVG uses an image layer with isSvg:true. Position is the layer CENTER in canvas pixels. The layer accepts the same persisted fields as /editor: transforms, opacity, blendMode, text styles/effects/rich text, image filters/customFilters/crop/masks/local effects/perspective, shape gradients/strokes/shadows, QR styling, timeline ranges, trims, volume, and keyframes. Returns the changed slide as an inline preview automatically.

Input parameters:

- `layer` (object, required): Native layer object. At minimum provide type and its content field.
- `projectId` (string, required)
- `slideId` (string, required)

### `picorn_editor_update_layer` (~103 tokens)

Picorn Editor: update layer

Patch any editable property on a layer: content, position, size, transform, style, filters, masks, effects, blend mode, visibility, lock state, SVG overrides, timing, audio, or keyframes. Returns the changed slide as an inline preview automatically.

Input parameters:

- `commitType` (string)
- `objectId` (string, required)
- `patch` (object, required)
- `projectId` (string, required)
- `slideId` (string, required)

### `picorn_video_add_clip` (~172 tokens)

Picorn Video: add media clip

Add a video or audio clip to a Picorn timeline. Source URLs must use an approved public media host. Video positions are center coordinates; timing and trim values are frame-based.

Input parameters:

- `durationFrames` (integer, required)
- `kind` (string, required)
- `name` (string)
- `position` (object)
- `posterUrl` (string)
- `projectId` (string, required)
- `size` (object)
- `slideId` (string, required)
- `sourceDurationFrames` (integer)
- `sourceFps` (number)
- `src` (string, required)
- `startFrame` (integer)
- `transform` (object)
- `trimEndFrame` (integer)
- `trimStartFrame` (integer)
- `volume` (number)

### `picorn_editor_delete_layers` (~46 tokens)

Picorn Editor: delete layers

Delete one or more layers and clean their group references.

Input parameters:

- `objectIds` (array, required)
- `projectId` (string, required)
- `slideId` (string, required)

### `picorn_editor_reorder_layers` (~57 tokens)

Picorn Editor: reorder layers

Set layer order. objectIds are bottom-to-top; omitted existing IDs retain their relative order on top.

Input parameters:

- `objectIds` (array, required)
- `projectId` (string, required)
- `slideId` (string, required)

### `picorn_editor_group_layers` (~62 tokens)

Picorn Editor: group layers

Create the same metadata group used by the visual editor. Grouping preserves world positions and render output.

Input parameters:

- `name` (string)
- `objectIds` (array, required)
- `projectId` (string, required)
- `slideId` (string, required)

### `picorn_editor_ungroup_layers` (~46 tokens)

Picorn Editor: ungroup layers

Remove a group while preserving all child layers.

Input parameters:

- `groupId` (string, required)
- `projectId` (string, required)
- `slideId` (string, required)

### `picorn_editor_align_layers` (~62 tokens)

Picorn Editor: align layers

Align positioned layers to their shared left, center, right, top, middle, or bottom bound.

Input parameters:

- `mode` (string, required)
- `objectIds` (array, required)
- `projectId` (string, required)
- `slideId` (string, required)

### `picorn_editor_distribute_layers` (~55 tokens)

Picorn Editor: distribute layers

Evenly distribute three or more positioned layers horizontally or vertically.

Input parameters:

- `axis` (string, required)
- `objectIds` (array, required)
- `projectId` (string, required)
- `slideId` (string, required)

### `picorn_editor_duplicate_layer` (~71 tokens)

Picorn Editor: duplicate layer

Duplicate a non-group layer, including all style, filter, effect, mask, and animation properties.

Input parameters:

- `objectId` (string, required)
- `offsetX` (number)
- `offsetY` (number)
- `projectId` (string, required)
- `slideId` (string, required)

### `picorn_editor_render_project` (~165 tokens)

Picorn Editor: render project

Render selected or all slides through Picorn's real Fabric editor pipeline. Returns persistent public image URLs, a multi-page PDF, or a page-faithful DOCX download, creationUrl, and the canonical editorUrl that must be given to the user. DOCX preserves the visual layout as page images; edit text and layers in SEEZ Editor. Static renders include text, image/SVG, shape, group and QR layers; video/audio timing remains editable project data for the video editor.

Input parameters:

- `format` (string)
- `pageHeightMm` (number)
- `pageWidthMm` (number)
- `projectId` (string, required)
- `quality` (number)
- `slideIds` (array)
- `transparentBackground` (boolean)

### `picorn_video_render_project` (~100 tokens)

Picorn Video: render project

Render the native timeline to a finished MP4/H.264 or WebM/VP9 file. The render includes multi-slide sequencing, timed layers, video frames, keyframe animation and mixed audio, and returns a public video URL plus /video/editor link.

Input parameters:

- `format` (string)
- `fps` (integer)
- `projectId` (string, required)
- `quality` (string)
- `slideIds` (array)

### `picorn_search_icons` (~51 tokens)

Picorn: search icons

Search Picorn's vector icon library before composing a design.

Input parameters:

- `limit` (integer)
- `query` (string, required)
- `style` (string)
- `visualStyle` (string)

### `picorn_search_areas` (~50 tokens)

Picorn: search decorative areas

Find approved torn, wavy, blob, banner and other decorative shapes for a design.

Input parameters:

- `aspect` (string)
- `limit` (integer)
- `style` (string)

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/cueqzapper-picorn/picorn#diagnostics

## Score history

- 2026-09-28: 71
- 2026-09-27: 71
- 2026-09-26: 71
- 2026-09-25: 71
- 2026-09-24: 71
- 2026-09-23: 71
- 2026-09-22: 71
- 2026-09-21: 71
- 2026-09-20: 71
- 2026-09-19: 71
- 2026-09-18: 71
- 2026-09-17: 71
- 2026-09-16: 71
- 2026-09-15: 71
- 2026-09-14: 71
- 2026-09-13: 71
- 2026-09-12: 71
- 2026-09-11: 71
- 2026-09-10: 71
- 2026-09-09: 70
- 2026-09-08: 70
- 2026-09-07: 69
- 2026-09-06: 69
- 2026-09-05: 69
- 2026-09-04: 68
- 2026-09-03: 68
- 2026-09-02: 67
- 2026-09-01: 67
- 2026-08-31: 66
- 2026-08-30: 66

## Common questions

### What is the Picorn MCP server?

Picorn is an MCP server listed in the public MCP registry as io.github.cueqzapper/picorn. Picorn turns AI briefs into editable social images and videos with layers, timelines, and renders. This page covers its hosted endpoint (https://picorn.com/mcp).

### Is the Picorn MCP server safe to use?

Picorn scores 71 out of 100 on VerifyMCP. 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 Picorn MCP server expose?

Picorn exposes 32 tools: picorn_capabilities, picorn_projects_create, picorn_projects_inspect, picorn_projects_update, picorn_design_image, and 27 more. Their descriptions and schemas cost roughly 3,175 tokens of context every time the server is loaded.

### Does the Picorn MCP server require authentication?

No. We connected to Picorn without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

### Is the Picorn MCP server still maintained?

Picorn is still listed as active in the MCP registry. We last reached this channel on 28 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

## Links

- Remote endpoint: https://picorn.com/mcp
- Website: https://picorn.com/mcp
- Changelog RSS feed: https://verifymcp.io/servers/cueqzapper-picorn/picorn.xml
- Changelog JSON feed: https://verifymcp.io/servers/cueqzapper-picorn/picorn.json
- HTML version of this page: https://verifymcp.io/servers/cueqzapper-picorn/picorn
