Skip to main content
Publish a profile on alice.nova so supporting wallets and apps can show information you choose to share. You can update individual fields or publish several together. The current app lets you choose display names and primary names. Use the Holder SDK or a configured local MCP integration to publish profile fields. Published MCP 0.10.0 supports profile writes for ordinary names and subnames; the hosted MCP service is read-only. See agent access.

Before you begin

You need an active name, its holder’s authorization and a namespace with a compatible Resolver. For a subname, you need the parent holder’s authorization and a policy that permits record edits. This example uses Holder 0.10.0 and Lookup 0.11.0 with a wallet signer for a classic Stellar account. Use the matching deployment configuration for every client.
See wallet setup for the signer interface. Contract-owned names require a compatible contract-wallet authorization integration.

Publish fields

Replace the example name and content with your own:
The standard keys are org, url, email, description, avatar, location, twitter and github. An avatar value is a text reference to an image, not an uploaded image file. setProfile submits one transaction per key, in order. Review the wallet requests and network costs. If a later write fails, earlier confirmed fields remain published. Keep the returned transaction references and check an uncertain submission before retrying.

Read the result

After confirmation, the returned object contains your published, nonempty standard fields. Applications choose which fields to display. A failed read is an error, not proof that a profile is empty. The contract verifies who authorized the records. It does not verify ownership of the website or social accounts they describe.

Update or retract a field

clearText writes an empty value that standard profile readers treat as unset. It does not erase blockchain history. Text keys use 1–32 letters, numbers or underscores; each value can contain at most 4,096 UTF-8 bytes. Payment instructions use setPayment, not a profile field. Your profile stops representing an active name when it expires. A transfer or reissue prevents the former holder’s records from appearing as the new holder’s profile.

Choose how your wallet appears

If the name resolves to an address you control, you can elect it as that address’s display name and then its primary name. Follow account display names or use the name record’s Display name controls in the app. For application integration, continue with identity and discovery.