Register SAP Agent SNS Domain
sap_sns_register_agent_domainRegister a .sol domain for the SAP agent wallet using USDC and SOL for fees. This tool builds, signs, and submits the registration transaction without setting the SOL record.
Instructions
Local-signer-only tool: register a .sol domain for the configured SAP agent wallet using the SAP SDK SnsModule. This tool builds, signs, and submits the full registration transaction with the local profile signer or external signer. Hosted accountless SAP MCP rejects this tool before x402 payment because OOBE never custodies user keys. Domain registration fees are paid in USDC plus SOL for rent and transaction fees. The SOL record is NOT set during registration (it requires a separate Ed25519 signature) — set it after using sap_sns_build_manage_record_transaction.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| pic | No | Profile picture URL for the SNS Pic record (required if not provided in records.Pic) | |
| space | No | Storage space in bytes for the domain name account (default: 600) | |
| domain | No | The .sol domain name to register for the SAP agent (with or without .sol suffix) | |
| records | No | Optional map of SNS record key-value pairs to set during registration (e.g. { "Url": "https://...", "Twitter": "@handle" }). Note: SOL record is skipped during registration. | |
| sapData | No | Optional structured SAP metadata to embed in the domain TXT record (capabilities, protocols, endpoints, etc.) | |
| protocols | No | Optional list of protocol IDs the agent supports | |
| agentWallet | No | The Solana public key (base58) of the SAP agent wallet that will own the domain | |
| capabilities | No | Optional list of SAP capability IDs to advertise in the domain TXT record | |
| setAsPrimary | No | Whether to set this domain as the agent primary .sol domain | |
| durationYears | No | Registration duration in years (default: 1) |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| content | Yes | MCP content blocks returned to the caller. | |
| isError | No | True when the tool result represents an application-level error. |