# org.swapp1990.designforyou/designforyou

> Generate logos, social posts, app screenshots, comic panels & visual-novel assets from prompts.

- name: org.swapp1990.designforyou/designforyou
- version: 1.0.1
- connection class: R0 (autonomous)
- trust: 93/100
- quality: 80/100 (good)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/org.swapp1990.designforyou%2Fdesignforyou
- tools: https://api.protogrid.dev/v1/servers/org.swapp1990.designforyou%2Fdesignforyou/tools

**An agent can connect right now, no human step.** Remote endpoint, no authentication, reachable on the last probe.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "designforyou": {
      "type": "http",
      "url": "https://designforyou.swapp1990.org/mcp/v2/"
    }
  }
}
```


## Trust

- hygiene: 100
- liveness: 100
- freshness: 65
- provenance: 100
- drivers: +repository +namespace-matches-repo +dns-namespace +website +reachable +uptime-99% ~updated-125d-ago
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 80/100 (good)

### protocol: 75 (weight 25)

- warn `protocol.modern`: newest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
- n/a `protocol.stateless`: only applies to 2026-07-28 servers
- pass `protocol.transport`: streamable HTTP
- n/a `protocol.list_ttl`: only applies to 2026-07-28 servers

### authorization: n/a (weight 15)

- n/a `auth.prm`, `auth.as_metadata`, `auth.cimd`: no remote uses OAuth
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: 86 (weight 30)

- pass `tools.descriptions`: every tool has a description
- pass `tools.description_length`: descriptions are concise
- pass `tools.schemas`: every tool has an object input schema
- pass `tools.annotations`: 14 of 14 tools declare readOnlyHint or destructiveHint
- fail `tools.directory_hints`: no tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: vn_generate_sprite_sheet (idempotentHint); comic_design_brief (destructiveHint, idempotentHint); create_template (idempotentHint); …
- pass `tools.token_cost`: about 5,252 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump

### stability: 75 (weight 15)

- warn `stability.changes`: 14 tool changes in 30 days
- pass `stability.rug_pull`: no tool changed its meaning under the same name

### dependencies: n/a (weight 15)

- n/a `deps.known_vulns`, `deps.mcp_sdk_version`, `deps.resolvable`: no npm or PyPI package

- tools: 14, about 5,252 tokens to load them all
- tool set hash: 3b607802afa36f7d219eef490ad16099
- tools last changed: 2026-10-01T07:11:17.297Z
- badge: [![protogrid quality](https://protogrid.dev/badge/org.swapp1990.designforyou/designforyou.svg)](https://protogrid.dev/servers/org.swapp1990.designforyou/designforyou)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

- 2026-10-01 `my_auditions` removed
  - List only the authenticated user's LetMeActForYou audition history, newest first. Free. Supports bounded offset pagination and an optional queued, rendering, ready, or failed status filter.
- 2026-10-01 `revise_audition` removed
  - Create a child take from an existing audition. Inherits actor, story casting, cue, emotion, and line unless overrides are supplied, while preserving parent/root ids and the director note.
- 2026-10-01 `casting_roster` removed
  - List only the public seeded LetMeActForYou casting roster with headshots, type, and bio. This public catalog never includes a user's private actors; authenticated users can retrieve those with my_actors. Call this first, show the user the seed actors, then call audition with the chosen actor_id.
- 2026-10-01 `delete_casting` removed
  - Delete an unused authenticated-user casting. Refuses while active auditions reference it. Destructive and free.
- 2026-10-01 `delete_audition` removed
  - Permanently remove the authenticated user's media and user-authored direction for one ready or refunded-failed audition. Keeps a minimal tombstone for billing, refund, and lineage audit. Destructive and free.
- 2026-10-01 `report_casting_abuse` removed
  - Report a visible LetMeActForYou actor or an audition owned by the authenticated user. Free. Stores bounded triage metadata without copying prompts, media URLs, billing data, or account identity.
- 2026-10-01 `generate_scene_frame` removed
  - Generate one actor-grounded narrative first frame from one to four existing LetMeActForYou actor_ids plus location, wardrobe, pose, and composition. Uses actor headshots as image references and returns a stored image_url. For multi-shot continuity, first generate a wide scene reference, then pass its scene_frame_id as continuity_scene_frame_id while specifying a fresh camera setup in composition and fresh blocking in pose for every shot. Pass only the actor_ids that should be visible in that shot. Pass composition_reference_url to preserve a Blender previs frame's camera and blocking while replacing proxy geometry with actors and the finished set. Defaults to Gemini; pass provider='grok' to use Grok Imagine. Use this before animation when a close-up headshot is not enough.
- 2026-10-01 `cast_character` removed
  - Bind a seeded or private actor to one story character. Returns a casting_id that keeps character identity and story provenance across takes.
- 2026-10-01 `publish_actor` removed
  - Promote an operator-owned actor draft into the shared public LetMeActForYou roster and bind its approved seamless idle-loop video. Only configured public actor publishers and first-party internal services can call this tool. Auditions remain private to the user who generated them.
- 2026-10-01 `create_actor` removed
  - Create a private LetMeActForYou actor draft. Generates a casting headshot, stores it on S3, and returns actor_id for cast_character or audition. Draft actors never appear in the public feed; an authorized operator can call publish_actor with an approved seamless idle-loop URL when the actor is ready. When available, provide a saved full-body standing performance_reference_url; all generated clips prioritize it over the profile headshot. The default casting template produces an original Pixar-quality 3D animated feature-film headshot; pass stable fictional physical identity, not performance direction. Apparent age may be child, teen, adult, or elderly.

Full history: https://api.protogrid.dev/v1/servers/org.swapp1990.designforyou%2Fdesignforyou/changes

## Remotes

- https://designforyou.swapp1990.org/mcp/v2/ (streamable-http, auth none, reachable true, uptime30d 0.9916667)

## Packages

_none_

## Tools (14)

- `browse_templates`: Browse the DesignForYou template catalog. Optionally filter by category (e.g. 'instagram', 'app-store', 'logo', 'living-panels'). Returns template IDs, names, and previews.
- `comic_design_brief`: Return the no-server-LLM Living Panels authoring brief: PanelScript instructions, schema, unit templates, and success criteria. Use this when the MCP client will do the creative direction with its own model, then call comic_submit_design with the authored Story JSON.
- `comic_revision_brief`: Return the current Story JSON, stale-write hash, allowed patch paths, and dirty-node contract for a client-authored Living Panels revision. Use this when the client will decide the edit with its own model, then call comic_submit_revision.
- `comic_status`: Check asset-production progress for a comic created with create_comic: panels, motion clips, and voice lines done vs total, plus ready=true when the whole comic is live at its reader_url. Free to call.
- `comic_submit_design`: Accept a client-authored Living Panels Story JSON and start artifact production without using a server story LLM. The client does direction; DesignForYou validates, saves, generates character sheets, panel/unit art, motion clips, voice-over, and assembles the public reader.
- `comic_submit_revision`: Apply a client-authored Living Panels revision without using a server revision LLM. Targeted changes regenerate only inferred dirty producer nodes such as panel:<id>, motion:<id>, or tts:<bubble_id>.
- `create_comic`: Write and produce a Living Panels interactive comic from a one-paragraph premise. One call writes a complete 5-page comic (panels, dialogue, motion plan, voice casting) and starts generating every asset in the background: character sheet, ~13 panels of art with character consistency, ambient image-to-video motion for the liveliest panels, and per-line voice-over. Returns immediately with the story summary and a public reader_url where the comic can be read, watched live, and heard. Production takes several minutes — poll comic_status until ready, then share the reader_url.
- `create_template`: Create a private reusable DesignForYou template from a structured brief. The returned template_id works immediately with get_text_fields and generate. This stores a user-owned template in the canonical catalog collection; it does not publish it to the anonymous gallery.
- `generate`: Generate one or more finished images from a template (get a template_id from recommend_template or browse_templates) plus a description. Use this after the user has selected or explicitly supplied a template_id; otherwise call `recommend_template` first so the visual gallery can collect the selection. Works for all categories (Instagram, logo, app-store, Visual Novel backgrounds/sprites, CG illustrations). Pass variants for multi-image output (expressions, time-of-day, etc.). Pass session_id to refine a prior result. Pass context_ids to ground a new image on prior designs (character consistency for VN CG scenes). Set model to 'minimax-h3-image-balanced' or 'minimax-h3-image-quality' (or use the 'h3 balanced'/'h3 quality' aliases) to render through the MiniMax H3 image service; context_ids are forwarded as ordered H3 reference images.
- `get_credits`: Return the authenticated user's current credit balance, usage, and Stripe subscription status. Free to call.
- `get_text_fields`: List a template's editable text fields (headline, subhead, CTA, etc.) with their current values. Free. Use right after a template is chosen and BEFORE `generate` when you want to fill the template's fields precisely instead of relying on a freeform description.
- `recommend_template`: Recommend the best matching templates for any use case. Describe what you need and the system auto-detects the category and ranks templates by relevance. Return the recommendations so the user can pick a template from the visual gallery; do not call `generate` in the same turn unless the user explicitly names a template_id or asks you to skip selection.
- `vn_generate_sprite_sheet`: Generate one fixed-grid visual-novel character sprite sheet, crop it into cell assets, remove the chroma-key background, validate transparent sprites, and return a VN Creator-ready manifest. Base cost: 3 credits. Optional quality.hi_res_cells=true adds a reference-grounded per-cell re-render at full native resolution (fixes cells being limited to ~1/N of the sheet resolution) and bills +2 credits per cell re-rendered. quality.hi_res_model optionally routes the hi-res pass to a specific model (e.g. gpt-image-2 for fabric fidelity).
- `widget_diagnostic`: Return a fixed, no-cost DesignForYou widget payload for ChatGPT Apps debugging. Use this only to verify the template gallery/result iframe renders correctly; it does not generate images, use an LLM, or charge credits.
