sap_register_agent
InactiveTool of SAP MCP Server
Deprecated raw SDK wrapper. Production registration must use sap_payments_register_agent so the local signer path confirms the account, verifies the 0.1 SOL protocol treasury fee invariant, and returns protocolComplete. Hosted accountless SAP MCP rejects this direct write before x402 payment. SAP MCP context: Do not use this raw SDK wrapper for production registration. The canonical registration path is sap_payments_register_agent, because it confirms the account, audits the protocol treasury fee, and fails closed when protocolComplete is false. Hosted accountless SAP MCP rejects direct registration before x402 payment because OOBE never custodies user wallet keys. Use sap_agent_identity_plan first, then sap_payments_register_agent with confirm:true.
Parameters schema
{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Required public display name for the SAP agent. Keep it stable enough for explorers and humans."
},
"agentId": {
"type": "string",
"description": "Optional stable lowercase agent id, for example solking. This is separate from the on-chain agent PDA."
},
"pricing": {
"type": "array",
"items": {
"type": "object",
"required": [
"pricePerCall"
],
"properties": {
"tierId": {
"type": "string",
"description": "Stable tier id, for example default, read, premium, value-action, or enterprise."
},
"rateLimit": {
"type": "number",
"description": "Maximum calls per second allowed by this tier. Defaults to 60."
},
"tokenMint": {
"type": "string",
"description": "Optional SPL token mint public key. Required when tokenType is spl. For mainnet USDC use EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v."
},
"tokenType": {
"enum": [
"sol",
"usdc",
"spl"
],
"type": "string",
"description": "Payment token type. Use usdc for x402/pay.sh agent commerce. Use spl only with tokenMint."
},
"burstLimit": {
"type": "number",
"description": "Optional short-window burst allowance for this tier."
},
"volumeCurve": {
"type": "array",
"items": {
"type": "object",
"required": [
"afterCalls",
"pricePerCall"
],
"properties": {
"afterCalls": {
"type": "number",
"description": "Call count threshold where this price starts."
},
"pricePerCall": {
"type": "string",
"description": "Discounted price per call in the smallest unit of tokenType."
}
},
"description": "Volume Curve parameter for Register SAP Agent (Raw SDK Deprecated).",
"additionalProperties": false
},
"description": "Optional volume discounts. Each item lowers pricePerCall after a call threshold."
},
"pricePerCall": {
"type": "string",
"description": "Price per call in the smallest unit of tokenType: lamports for sol, micro-USDC for usdc, or base units for spl."
},
"tokenDecimals": {
"type": "number",
"description": "Decimals for the payment token. Defaults to 6 for usdc and 9 for sol when omitted."
},
"settlementMode": {
"enum": [
"instant",
"escrow",
"batched",
"x402"
],
"type": "string",
"description": "Settlement strategy. Use x402 for HTTP 402/pay.sh flows, escrow for prepaid SAP usage ledgers, instant for direct pay-per-call, and batched for periodic settlement."
},
"maxPricePerCall": {
"type": "string",
"description": "Optional ceiling price per call in the smallest unit of tokenType."
},
"minPricePerCall": {
"type": "string",
"description": "Optional floor price per call in the smallest unit of tokenType."
},
"batchIntervalSec": {
"type": "number",
"description": "Optional settlement batch interval in seconds when settlementMode is batched."
},
"minEscrowDeposit": {
"type": "string",
"description": "Optional minimum escrow deposit in the smallest unit of tokenType."
},
"maxCallsPerSession": {
"type": "number",
"description": "Maximum calls allowed per session for this tier. Defaults to 1000."
}
},
"description": "Pricing parameter for Register SAP Agent (Raw SDK Deprecated).",
"additionalProperties": false
},
"description": "Optional pricing tiers advertised by the agent. Use tokenType usdc + settlementMode x402 for pay.sh/x402 agent commerce."
},
"agentUri": {
"type": "string",
"description": "Optional public HTTPS/IPFS/Arweave/Kommodo URI for the agent profile metadata or profile page. Never use local desktop file paths."
},
"protocols": {
"type": "array",
"items": {
"type": "string",
"description": "Protocols parameter for Register SAP Agent (Raw SDK Deprecated)."
},
"description": "Required protocol tags the agent supports, for example sap, mcp, jupiter, pyth, metaplex, sns, x402, payments."
},
"description": {
"type": "string",
"description": "Required public description of what the agent does, which protocols it can use, and its safety/trust boundaries."
},
"metadataUri": {
"type": "string",
"description": "Alias for agentUri. Prefer a public JSON metadata document containing name, description, image, external_url, attributes, sap, metaplex, sns, and x402 fields."
},
"capabilities": {
"type": "array",
"items": {
"oneOf": [
{
"type": "string",
"description": "Capability id shorthand, for example jupiter:swap, pyth:price, metaplex:identity, sns:identity, or risk:management."
},
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Required stable capability id. Use protocol:action naming, for example jupiter:swap, pyth:price, metaplex:identity, sns:identity, x402:payments, or risk:management."
},
"version": {
"type": "string",
"description": "Optional capability version string. Use semver when the capability maps to an API contract."
},
"protocolId": {
"type": "string",
"description": "Optional protocol namespace backing this capability, for example sap, mcp, jupiter, pyth, metaplex, sns, x402, or custom."
},
"description": {
"type": "string",
"description": "Optional human-readable capability description for agents and explorers."
}
},
"additionalProperties": false
}
],
"description": "Capabilities parameter for Register SAP Agent (Raw SDK Deprecated)."
},
"description": "Required capability list. Prefer object form for production; strings are accepted as shorthand."
},
"x402Endpoint": {
"type": "string",
"description": "Optional public x402 discovery/payment endpoint, usually https://host/.well-known/x402 for external agent services."
}
}
}No endpoints wrapped at confidence ≥ 0.70.
Parent server
SAP MCP Server
https://github.com/OOBE-PROTOCOL/sap-mcp
2/7 registries