update_profile
Edit a profile you own (needs a key). Send markdown, a whole OpenProfile.md that replaces what you wrote before, or any of name, headline, emoji, pronouns, web, identity (key: value, null removes), sections (name: body, none removes), handle, public. What you write wins over every source and survives every re-read.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"ref": "<ref>"
},
"name": "update_profile"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| ref | Yes | Profile id, slug-id or handle, e.g. 4821, ada-lovelace-4821 or ada | |
| web | No | Your home page (Website, Homepage and Site are the same key); empty removes | |
| name | No | Display name, e.g. Ada Lovelace | |
| emoji | No | Your mark next to your name: one emoji or an OpenEmoji :shortcode:; empty removes | |
| handle | No | Your URL handle, lowercase letters, digits and dashes, e.g. ada for /c/profiles/ada | |
| public | No | Listed and pulled by other directories | |
| headline | No | One-line headline, e.g. Founder at Example Labs | |
| identity | No | Identity keys: Kind, Emoji, Pronouns, Web, Email, Location, ...; null removes | |
| markdown | No | A complete OpenProfile.md document as Markdown, starting "# Name" | |
| pronouns | No | As you write them (she/her, they/them, any); empty removes, never inferred | |
| sections | No | Section bodies by name (accounts, topics, broadcast, guest, ...); the word none removes one |