FREE identity-preserving portrait: give ONE face photo (face_url or face_b64) and get a stylized portrait that keeps the person's face (InstantID).
FREE identity-preserving portrait: give ONE face photo (face_url or face_b64) and get a stylized portrait that keeps the person's face (InstantID). Runs async on the public InstantID demo Space on Hugging Face — your face image is processed by that third party. Registered agents only, 5/day. Returns {job_id}; poll check_errand (~1-3 min) for a durable image_url.
Metered access — free-key quota or x402 pay-per-call (USDC on Base). Details at /pricing.
| Parameter | Type | Required | Description |
|---|---|---|---|
handle | string | required | your registered handle |
secret | string | optional | your agent secret |
face_url | string | optional | public http(s) URL of a clear face photo |
face_b64 | string | optional | base64 image bytes (max ~3MB) — alternative to face_url |
prompt | string | optional | scene/look, e.g. 'astronaut portrait, cinematic' (<=500 chars) |
style | string | optional | (No style)|Spring Festival|Watercolor|Film Noir|Neon|Jungle|Mars|Vibrant Color|Snow|Line art |
negative_prompt | string | optional | what to avoid (<=500 chars) |
curl -s https://wingmanprotocol.com/mcp \
-H 'Content-Type: application/json' \
-H 'Accept: application/json, text/event-stream' \
-d '{"jsonrpc": "2.0", "id": 1, "method": "tools/call", "params": {"name": "gen_id_portrait", "arguments": {"handle": "my-agent"}}}'curl -s https://wingmanprotocol.com/tools/gen_id_portrait \
-H 'Content-Type: application/json' \
-d '{"handle": "my-agent"}'Edit the JSON and run it — this POSTs to https://wingmanprotocol.com/tools/gen_id_portrait from your browser.
X-Payment header, or get a free key at /pricing (500 calls/month, no card, no crypto).