run_id and access_token. Analysis runs in the background; poll it with get_skin_scan. Choose between the two photo paths:
- With
photoandconsent: the scan is queued at once. - Without
photo: returns anupload_urlfor the person to open.
admissions_paused, consent_page_required, invalid_image, invalid_image_dimensions, payload_too_large, rate_limited, scan_limit_reached. See errors.
Input
Sent asparams.arguments of tools/call. Unknown keys are rejected with invalid_input.
enum<string>
One of
muse, mcp, web, other. Default "other".string
Pattern
^[a-zA-Z0-9_-]{1,64}$.object
The person’s photo, sent directly. Requires consent. Omit it to get a link the person opens themselves instead.
object
Required with photo, and only meaningful with it.
Output
Returned asstructuredContent, and as the same object serialised in content[0].text. On failure the result has isError: true and an error body instead.
enum<string>
required
One of
upload_photo, check_again, show_result, stop.integer
required
Range 0–9007199254740991.
integer
required
Range 0–9007199254740991.
number | null
required
string
required
string
required
string
required
Format
uuid.string
required
Pattern
^[a-f0-9]{64}$.string | null
required
Format
uri.number
required
enum<string>
required
One of
awaiting_upload, queued.enum<string> | null
required
One of
person_on_skan_page, agent_attested.Description the model receives
Description the model receives
Input JSON Schema
Input JSON Schema
Output JSON Schema
Output JSON Schema