@oobe-protocol-labs/sap-mcp-server 0.9.13 → 0.9.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (84) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/README.md +2 -2
  3. package/USER_DOCS/00_START_HERE.md +24 -2
  4. package/USER_DOCS/03_PAYMENTS_X402_PAYSH.md +6 -1
  5. package/USER_DOCS/04_CLIENT_CONFIGS.md +4 -3
  6. package/USER_DOCS/05_SKILLS_AND_TOOLS.md +9 -4
  7. package/USER_DOCS/06_DESKTOP_GUI_WIZARD.md +6 -6
  8. package/dist/config/mcp-client-injection.d.ts.map +1 -1
  9. package/dist/config/mcp-client-injection.js +4 -3
  10. package/dist/config/mcp-client-injection.js.map +1 -1
  11. package/dist/core/constants.d.ts +9 -1
  12. package/dist/core/constants.d.ts.map +1 -1
  13. package/dist/core/constants.js +13 -3
  14. package/dist/core/constants.js.map +1 -1
  15. package/dist/payments/hosted-tool-eligibility.d.ts.map +1 -1
  16. package/dist/payments/hosted-tool-eligibility.js +3 -0
  17. package/dist/payments/hosted-tool-eligibility.js.map +1 -1
  18. package/dist/payments/index.d.ts +2 -2
  19. package/dist/payments/index.d.ts.map +1 -1
  20. package/dist/payments/index.js +1 -1
  21. package/dist/payments/index.js.map +1 -1
  22. package/dist/payments/pricing.d.ts +29 -0
  23. package/dist/payments/pricing.d.ts.map +1 -1
  24. package/dist/payments/pricing.js +81 -0
  25. package/dist/payments/pricing.js.map +1 -1
  26. package/dist/prompts/context/sap-agent-context.prompt.js +2 -0
  27. package/dist/prompts/context/sap-agent-context.prompt.js.map +1 -1
  28. package/dist/prompts/context/sap-agent-start.prompt.js +2 -0
  29. package/dist/prompts/context/sap-agent-start.prompt.js.map +1 -1
  30. package/dist/prompts/registry/register-sap-agent.prompt.js +18 -18
  31. package/dist/prompts/registry/register-sap-agent.prompt.js.map +1 -1
  32. package/dist/remote/public-home/sections.d.ts.map +1 -1
  33. package/dist/remote/public-home/sections.js +4 -0
  34. package/dist/remote/public-home/sections.js.map +1 -1
  35. package/dist/remote/public-home/types.d.ts +1 -0
  36. package/dist/remote/public-home/types.d.ts.map +1 -1
  37. package/dist/remote/server.d.ts +1 -0
  38. package/dist/remote/server.d.ts.map +1 -1
  39. package/dist/remote/server.js +10 -2
  40. package/dist/remote/server.js.map +1 -1
  41. package/dist/security/tool-permissions.d.ts.map +1 -1
  42. package/dist/security/tool-permissions.js +9 -0
  43. package/dist/security/tool-permissions.js.map +1 -1
  44. package/dist/tools/agent-start-tool.d.ts.map +1 -1
  45. package/dist/tools/agent-start-tool.js +222 -1
  46. package/dist/tools/agent-start-tool.js.map +1 -1
  47. package/dist/tools/client-sdk-tools.js +3 -3
  48. package/dist/tools/client-sdk-tools.js.map +1 -1
  49. package/dist/tools/magicblock-tools.d.ts.map +1 -1
  50. package/dist/tools/magicblock-tools.js +43 -26
  51. package/dist/tools/magicblock-tools.js.map +1 -1
  52. package/dist/tools/sap-sdk-tools.d.ts +412 -1
  53. package/dist/tools/sap-sdk-tools.d.ts.map +1 -1
  54. package/dist/tools/sap-sdk-tools.js +1044 -30
  55. package/dist/tools/sap-sdk-tools.js.map +1 -1
  56. package/dist/tools/sap-sns-tools.d.ts.map +1 -1
  57. package/dist/tools/sap-sns-tools.js +6 -2
  58. package/dist/tools/sap-sns-tools.js.map +1 -1
  59. package/dist/tools/skills-tools.d.ts.map +1 -1
  60. package/dist/tools/skills-tools.js +2 -0
  61. package/dist/tools/skills-tools.js.map +1 -1
  62. package/dist/tools/tool-aliases.d.ts.map +1 -1
  63. package/dist/tools/tool-aliases.js +7 -0
  64. package/dist/tools/tool-aliases.js.map +1 -1
  65. package/dist/tools/x402-paid-call-tool.d.ts.map +1 -1
  66. package/dist/tools/x402-paid-call-tool.js +315 -15
  67. package/dist/tools/x402-paid-call-tool.js.map +1 -1
  68. package/docs/03_CONFIGURATION_AND_WIZARD.md +1 -0
  69. package/docs/06_PAYMENTS_X402_AND_PAYSH.md +38 -1
  70. package/docs/07_ENDPOINTS_AND_CLIENTS.md +2 -1
  71. package/docs/14_DESKTOP_WIZARD_RELEASE.md +5 -4
  72. package/docs/16_SAP_AGENT_IDENTITY_PIPELINE.md +298 -0
  73. package/docs/README.md +2 -0
  74. package/docs/magicblock-tools.md +26 -0
  75. package/package.json +1 -1
  76. package/server.json +3 -3
  77. package/skills/sap-agent-registry/SKILL.md +63 -5
  78. package/skills/sap-escrow-settlement/SKILL.md +22 -4
  79. package/skills/sap-mcp/SKILL.md +73 -22
  80. package/skills/sap-mcp/TOOL_REFERENCE.md +22 -1
  81. package/skills/sap-nft-metaplex/SKILL.md +22 -0
  82. package/skills/sap-operations/SKILL.md +17 -0
  83. package/skills/sap-payments-x402/SKILL.md +27 -0
  84. package/skills/sap-sns/SKILL.md +17 -0
@@ -1 +1 @@
1
- {"version":3,"file":"skills-tools.js","sourceRoot":"","sources":["../../src/tools/skills-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skills-tools.js","sourceRoot":"","sources":["../../src/tools/skills-tools.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"tool-aliases.d.ts","sourceRoot":"","sources":["../../src/tools/tool-aliases.ts"],"names":[],"mappings":"AAAA;;;GAGG;AASH;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAQ7D"}
1
+ {"version":3,"file":"tool-aliases.d.ts","sourceRoot":"","sources":["../../src/tools/tool-aliases.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAaH;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAa7D"}
@@ -8,11 +8,18 @@ const CLIENT_NORMALIZED_PREFIX_ALIASES = [
8
8
  ['send_arcade_', 'send-arcade_'],
9
9
  ['raydium_pools_', 'raydium-pools_'],
10
10
  ];
11
+ const CLIENT_NORMALIZED_EXACT_ALIASES = {
12
+ sol_getBalance: 'sol_get_balance',
13
+ };
11
14
  /**
12
15
  * @name canonicalizeToolName
13
16
  * @description Maps known client-normalized tool aliases back to the registered SAP MCP tool name.
14
17
  */
15
18
  export function canonicalizeToolName(toolName) {
19
+ const exactAlias = CLIENT_NORMALIZED_EXACT_ALIASES[toolName];
20
+ if (exactAlias) {
21
+ return exactAlias;
22
+ }
16
23
  for (const [aliasPrefix, canonicalPrefix] of CLIENT_NORMALIZED_PREFIX_ALIASES) {
17
24
  if (toolName.startsWith(aliasPrefix)) {
18
25
  return `${canonicalPrefix}${toolName.slice(aliasPrefix.length)}`;
@@ -1 +1 @@
1
- {"version":3,"file":"tool-aliases.js","sourceRoot":"","sources":["../../src/tools/tool-aliases.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,gCAAgC,GAA8D;IAClG,CAAC,YAAY,EAAE,YAAY,CAAC;IAC5B,CAAC,eAAe,EAAE,eAAe,CAAC;IAClC,CAAC,cAAc,EAAE,cAAc,CAAC;IAChC,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;CACrC,CAAC;AAEF;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,QAAgB;IACnD,KAAK,MAAM,CAAC,WAAW,EAAE,eAAe,CAAC,IAAI,gCAAgC,EAAE,CAAC;QAC9E,IAAI,QAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YACrC,OAAO,GAAG,eAAe,GAAG,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;QACnE,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"tool-aliases.js","sourceRoot":"","sources":["../../src/tools/tool-aliases.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,gCAAgC,GAA8D;IAClG,CAAC,YAAY,EAAE,YAAY,CAAC;IAC5B,CAAC,eAAe,EAAE,eAAe,CAAC;IAClC,CAAC,cAAc,EAAE,cAAc,CAAC;IAChC,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;CACrC,CAAC;AAEF,MAAM,+BAA+B,GAAqC;IACxE,cAAc,EAAE,iBAAiB;CAClC,CAAC;AAEF;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,QAAgB;IACnD,MAAM,UAAU,GAAG,+BAA+B,CAAC,QAAQ,CAAC,CAAC;IAC7D,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,KAAK,MAAM,CAAC,WAAW,EAAE,eAAe,CAAC,IAAI,gCAAgC,EAAE,CAAC;QAC9E,IAAI,QAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YACrC,OAAO,GAAG,eAAe,GAAG,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;QACnE,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"x402-paid-call-tool.d.ts","sourceRoot":"","sources":["../../src/tools/x402-paid-call-tool.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAIxE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAuLtD;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,GAAG,IAAI,CAatF"}
1
+ {"version":3,"file":"x402-paid-call-tool.d.ts","sourceRoot":"","sources":["../../src/tools/x402-paid-call-tool.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAIxE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AA2MtD;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,GAAG,IAAI,CActF"}
@@ -7,7 +7,8 @@ import { createTextResponse } from '../adapters/mcp/tool-response.js';
7
7
  import { getActiveProfile, getProfileConfigPath } from '../config/profiles.js';
8
8
  import { executeX402PaidCall, executeExternalX402Call, getX402PaymentReadiness, inspectX402Receipt, probeX402PaymentChallenge, signX402PaymentChallenge, } from '../payments/x402-paid-call.js';
9
9
  import { finalizeTransactionWithLocalSigner } from './transaction-tools.js';
10
- import { parseRegisterAgentArgs } from './sap-sdk-tools.js';
10
+ import { SAP_AGENT_REGISTER_INPUT_SCHEMA, SAP_AGENT_UPDATE_INPUT_SCHEMA, parseRegisterAgentArgs, parseUpdateAgentArgs, } from './sap-sdk-tools.js';
11
+ import { SAP_PROTOCOL_TREASURY, SAP_REGISTRATION_FEE_LAMPORTS } from '../core/constants.js';
11
12
  const paidCallInputSchema = {
12
13
  endpoint: {
13
14
  type: 'string',
@@ -97,6 +98,7 @@ export function registerX402PaidCallTool(server, _context) {
97
98
  registerPaymentsCallPaidTool(server, 'sap_payments_call_paid_tool');
98
99
  registerPaymentsCallExternalX402Tool(server);
99
100
  registerPaymentsRegisterAgentTool(server, _context);
101
+ registerPaymentsUpdateAgentTool(server, _context);
100
102
  registerPaymentsFinalizeTransactionTool(server, _context);
101
103
  registerPaymentsPrepareChallengeTool(server);
102
104
  registerPaymentsSignChallengeTool(server);
@@ -107,17 +109,9 @@ export function registerX402PaidCallTool(server, _context) {
107
109
  function registerPaymentsRegisterAgentTool(server, context) {
108
110
  registerTool(server, 'sap_payments_register_agent', {
109
111
  title: 'Register SAP Agent With Local Signer',
110
- description: 'Local non-custodial SAP registry write for hosted users. Use this when hosted sap_register_agent returns hosted_local_signer_required. It registers the active local SAP MCP profile wallet as an on-chain SAP agent with the local signer; OOBE never receives keypair bytes. This tool does not pay a hosted x402 fee because it runs locally through sap_payments. Requires confirm: true.',
112
+ description: 'Canonical local non-custodial SAP registry write for hosted and local users. Use this after hosted sap_register_agent returns hosted_local_signer_required, or directly instead of raw sap_register_agent. It registers the active local SAP MCP profile wallet as an on-chain SAP agent with the local signer; OOBE never receives keypair bytes. This tool does not pay a hosted x402 fee because it runs locally through sap_payments. After confirmation it enforces the source-level expected 0.1 SOL SAP protocol registration fee against the protocol treasury. success is true only when the agent account exists and the protocol fee invariant is verified. Requires confirm: true.',
111
113
  inputSchema: {
112
- name: { type: 'string', description: 'Human-readable SAP agent name.' },
113
- description: { type: 'string', description: 'Detailed description of the agent purpose and capabilities.' },
114
- capabilities: { type: 'array', description: 'Capability objects or strings identifying what the agent can do, for example "jupiter:swap" or "sns:identity".' },
115
- pricing: { type: 'array', description: 'Pricing tier objects defining per-call costs, rate limits, and settlement terms. Use micro-USDC/base token units where applicable.' },
116
- protocols: { type: 'array', items: { type: 'string' }, description: 'Protocol identifiers supported by the agent, for example sap, mcp, jupiter, sns, metaplex, or x402.' },
117
- agentId: { type: 'string', description: 'Optional stable agent identifier, for example solking.' },
118
- agentUri: { type: 'string', description: 'Optional URI to the agent off-chain metadata or service endpoint.' },
119
- metadataUri: { type: 'string', description: 'Alias for agentUri; URI to off-chain agent metadata JSON.' },
120
- x402Endpoint: { type: 'string', description: 'Optional x402 payment/discovery endpoint URL advertised by this agent.' },
114
+ ...SAP_AGENT_REGISTER_INPUT_SCHEMA,
121
115
  confirmationTimeoutMs: {
122
116
  type: 'number',
123
117
  description: 'Optional local confirmation wait in milliseconds. Defaults to 90000 so the tool can distinguish confirmed registration from an expired/not-landed transaction.',
@@ -127,15 +121,18 @@ function registerPaymentsRegisterAgentTool(server, context) {
127
121
  outputSchema: {
128
122
  type: 'object',
129
123
  properties: {
130
- success: { type: 'boolean', description: 'Whether the local SAP agent registration account was confirmed on-chain.' },
124
+ success: { type: 'boolean', description: 'Whether the full SAP registration lifecycle completed: agent account confirmed and protocol fee invariant verified.' },
131
125
  signature: { type: 'string', description: 'Solana transaction signature returned by the SAP SDK.' },
132
126
  confirmationStatus: { type: 'string', description: 'Final local confirmation result: confirmed, finalized, processed, expired, missing, or failed.' },
133
127
  signerPublicKey: { type: 'string', description: 'Public key of the local SAP MCP signer that registered the agent.' },
134
128
  profile: { type: 'string', description: 'Active local SAP MCP profile used for registration when available.' },
129
+ agentRegistered: { type: 'boolean', description: 'Whether the SAP agent account was found on-chain, even if protocolComplete is false.' },
135
130
  agent: { type: 'object', description: 'Agent registration fields submitted on-chain.' },
131
+ protocolFee: { type: 'object', description: 'Verification of the SAP protocol registration fee credited to the protocol treasury in the landed transaction.' },
132
+ protocolComplete: { type: 'boolean', description: 'True only when the agent account is confirmed and the expected protocol fee invariant is verified from transaction metadata.' },
136
133
  audit: { type: 'object', description: 'Agent-readable proof that the write was local, non-custodial, and did not use hosted x402.' },
137
134
  },
138
- required: ['success', 'signature', 'confirmationStatus', 'signerPublicKey', 'agent', 'audit'],
135
+ required: ['success', 'signature', 'confirmationStatus', 'signerPublicKey', 'agentRegistered', 'agent', 'protocolFee', 'protocolComplete', 'audit'],
139
136
  },
140
137
  annotations: {
141
138
  readOnlyHint: false,
@@ -162,6 +159,7 @@ function registerPaymentsRegisterAgentTool(server, context) {
162
159
  signerPublicKey,
163
160
  profile: activeProfile,
164
161
  agentPda: confirmation.agentPda,
162
+ agentRegistered: false,
165
163
  agent: {
166
164
  name: args.name,
167
165
  description: args.description,
@@ -172,6 +170,8 @@ function registerPaymentsRegisterAgentTool(server, context) {
172
170
  capabilityCount: args.capabilities.length,
173
171
  pricingTierCount: args.pricing.length,
174
172
  },
173
+ protocolFee: buildUnconfirmedProtocolFeeStatus(signature),
174
+ protocolComplete: false,
175
175
  audit: {
176
176
  action: 'sap_payments_register_agent',
177
177
  registeredLocally: true,
@@ -187,6 +187,75 @@ function registerPaymentsRegisterAgentTool(server, context) {
187
187
  },
188
188
  }, null, 2), { isError: true });
189
189
  }
190
+ const protocolFee = await verifyProtocolRegistrationFee(context, signature);
191
+ if (protocolFee.status === 'missing_or_underpaid') {
192
+ return createTextResponse(JSON.stringify({
193
+ success: false,
194
+ signature,
195
+ confirmationStatus: confirmation.status,
196
+ signerPublicKey,
197
+ profile: activeProfile,
198
+ agentPda: confirmation.agentPda,
199
+ agentRegistered: true,
200
+ protocolComplete: false,
201
+ agent: {
202
+ name: args.name,
203
+ description: args.description,
204
+ agentId: args.agentId,
205
+ agentUri: args.agentUri,
206
+ x402Endpoint: args.x402Endpoint,
207
+ protocols: args.protocols,
208
+ capabilityCount: args.capabilities.length,
209
+ pricingTierCount: args.pricing.length,
210
+ },
211
+ protocolFee,
212
+ audit: {
213
+ action: 'sap_payments_register_agent',
214
+ registeredLocally: true,
215
+ hostedX402Charged: false,
216
+ signerBoundary: 'local-sap-payments-bridge',
217
+ secretMaterial: 'keypair-bytes-never-returned',
218
+ transactionLanded: true,
219
+ protocolIntegrity: 'failed',
220
+ rule: 'The SAP agent account was found after registration, but the source-level expected protocol treasury registration fee was not visible in the landed transaction. The account exists, but the SAP registration lifecycle is not complete and must not be marketed as protocol-complete.',
221
+ nextAction: 'Do not retry registration automatically. Inspect the signature, deployed SAP program version, and treasury account balance delta before changing fee policy or redeploying the program.',
222
+ },
223
+ }, null, 2), { isError: true });
224
+ }
225
+ if (protocolFee.status !== 'verified') {
226
+ return createTextResponse(JSON.stringify({
227
+ success: false,
228
+ signature,
229
+ confirmationStatus: confirmation.status,
230
+ signerPublicKey,
231
+ profile: activeProfile,
232
+ agentPda: confirmation.agentPda,
233
+ agentRegistered: true,
234
+ protocolComplete: false,
235
+ agent: {
236
+ name: args.name,
237
+ description: args.description,
238
+ agentId: args.agentId,
239
+ agentUri: args.agentUri,
240
+ x402Endpoint: args.x402Endpoint,
241
+ protocols: args.protocols,
242
+ capabilityCount: args.capabilities.length,
243
+ pricingTierCount: args.pricing.length,
244
+ },
245
+ protocolFee,
246
+ audit: {
247
+ action: 'sap_payments_register_agent',
248
+ registeredLocally: true,
249
+ hostedX402Charged: false,
250
+ signerBoundary: 'local-sap-payments-bridge',
251
+ secretMaterial: 'keypair-bytes-never-returned',
252
+ transactionLanded: true,
253
+ protocolIntegrity: 'fee-verification-unavailable',
254
+ rule: 'The SAP agent account was found, but transaction metadata did not prove the protocol treasury fee. The lifecycle is intentionally failed closed until another RPC or explorer verifies the fee delta.',
255
+ nextAction: 'Fetch transaction metadata from a reliable RPC or explorer. Do not announce registration complete until protocolFee.status is verified.',
256
+ },
257
+ }, null, 2), { isError: true });
258
+ }
190
259
  return createTextResponse(JSON.stringify({
191
260
  success: true,
192
261
  signature,
@@ -194,6 +263,7 @@ function registerPaymentsRegisterAgentTool(server, context) {
194
263
  signerPublicKey,
195
264
  profile: activeProfile,
196
265
  agentPda: confirmation.agentPda,
266
+ agentRegistered: true,
197
267
  agent: {
198
268
  name: args.name,
199
269
  description: args.description,
@@ -204,6 +274,8 @@ function registerPaymentsRegisterAgentTool(server, context) {
204
274
  capabilityCount: args.capabilities.length,
205
275
  pricingTierCount: args.pricing.length,
206
276
  },
277
+ protocolFee,
278
+ protocolComplete: protocolFee.status === 'verified',
207
279
  audit: {
208
280
  action: 'sap_payments_register_agent',
209
281
  registeredLocally: true,
@@ -211,7 +283,162 @@ function registerPaymentsRegisterAgentTool(server, context) {
211
283
  signerBoundary: 'local-sap-payments-bridge',
212
284
  secretMaterial: 'keypair-bytes-never-returned',
213
285
  transactionLanded: true,
286
+ protocolIntegrity: 'verified',
214
287
  rule: 'Hosted sap_register_agent is accountless and cannot sign user-owned registry writes. This local bridge submitted the SAP registry transaction with the user-controlled profile signer.',
288
+ nextAction: 'Registration is complete. Fetch the agent by owner wallet and continue with optional Metaplex or SNS identity links.',
289
+ },
290
+ }, null, 2));
291
+ }
292
+ catch (error) {
293
+ return createTextResponse(formatLocalRegistryError(error), { isError: true });
294
+ }
295
+ });
296
+ }
297
+ function buildUnconfirmedProtocolFeeStatus(signature) {
298
+ return {
299
+ status: 'not_checked',
300
+ signature,
301
+ expectedTreasury: SAP_PROTOCOL_TREASURY,
302
+ expectedLamports: SAP_REGISTRATION_FEE_LAMPORTS.toString(10),
303
+ reason: 'Registration transaction was not confirmed, so protocol fee verification was skipped.',
304
+ };
305
+ }
306
+ async function verifyProtocolRegistrationFee(context, signature) {
307
+ try {
308
+ const tx = await context.connection.getParsedTransaction(signature, {
309
+ commitment: 'confirmed',
310
+ maxSupportedTransactionVersion: 0,
311
+ });
312
+ if (!tx?.meta) {
313
+ return {
314
+ status: 'unavailable',
315
+ signature,
316
+ expectedTreasury: SAP_PROTOCOL_TREASURY,
317
+ expectedLamports: SAP_REGISTRATION_FEE_LAMPORTS.toString(10),
318
+ reason: 'Transaction metadata was unavailable from the configured RPC.',
319
+ };
320
+ }
321
+ const accountKeys = tx.transaction.message.accountKeys.map((account) => account.pubkey.toBase58());
322
+ const treasuryIndex = accountKeys.indexOf(SAP_PROTOCOL_TREASURY);
323
+ if (treasuryIndex < 0) {
324
+ return {
325
+ status: 'missing_or_underpaid',
326
+ signature,
327
+ expectedTreasury: SAP_PROTOCOL_TREASURY,
328
+ expectedLamports: SAP_REGISTRATION_FEE_LAMPORTS.toString(10),
329
+ observedLamportsDelta: '0',
330
+ reason: 'Protocol treasury account was not present in the transaction account list.',
331
+ };
332
+ }
333
+ const preBalance = BigInt(tx.meta.preBalances[treasuryIndex] ?? 0);
334
+ const postBalance = BigInt(tx.meta.postBalances[treasuryIndex] ?? 0);
335
+ const delta = postBalance - preBalance;
336
+ const verified = delta >= SAP_REGISTRATION_FEE_LAMPORTS;
337
+ return {
338
+ status: verified ? 'verified' : 'missing_or_underpaid',
339
+ signature,
340
+ expectedTreasury: SAP_PROTOCOL_TREASURY,
341
+ expectedLamports: SAP_REGISTRATION_FEE_LAMPORTS.toString(10),
342
+ observedLamportsDelta: delta.toString(10),
343
+ reason: verified
344
+ ? 'Protocol treasury balance delta satisfies the expected SAP registration fee.'
345
+ : 'Protocol treasury balance delta is below the expected SAP registration fee.',
346
+ };
347
+ }
348
+ catch (error) {
349
+ return {
350
+ status: 'unavailable',
351
+ signature,
352
+ expectedTreasury: SAP_PROTOCOL_TREASURY,
353
+ expectedLamports: SAP_REGISTRATION_FEE_LAMPORTS.toString(10),
354
+ reason: error instanceof Error ? error.message : 'Unable to fetch transaction metadata from RPC.',
355
+ };
356
+ }
357
+ }
358
+ function registerPaymentsUpdateAgentTool(server, context) {
359
+ registerTool(server, 'sap_payments_update_agent', {
360
+ title: 'Update SAP Agent With Local Signer',
361
+ description: 'Local non-custodial SAP registry update for hosted users. Use this when hosted sap_update_agent returns hosted_local_signer_required. It updates the active local SAP MCP profile wallet agent with the local signer, including name, description, capabilities, protocols, pricing, agentUri/metadataUri, or x402Endpoint. Use it for agent picture/profile metadata updates after uploading image or metadata to a public URL such as IPFS, Arweave, Kommodo, or a HTTPS metadata endpoint. OOBE never receives keypair bytes and no hosted x402 fee is charged. Requires confirm: true.',
362
+ inputSchema: {
363
+ ...SAP_AGENT_UPDATE_INPUT_SCHEMA,
364
+ confirmationTimeoutMs: {
365
+ type: 'number',
366
+ description: 'Optional local confirmation wait in milliseconds. Defaults to 90000 so the tool can distinguish confirmed update from an expired/not-landed transaction.',
367
+ },
368
+ confirm: { type: 'boolean', description: 'Must be true. Confirms the user wants the local signer to submit this SAP registry update transaction.' },
369
+ },
370
+ outputSchema: {
371
+ type: 'object',
372
+ properties: {
373
+ success: { type: 'boolean', description: 'Whether the local SAP agent update transaction was confirmed on-chain.' },
374
+ signature: { type: 'string', description: 'Solana transaction signature returned by the SAP SDK.' },
375
+ confirmationStatus: { type: 'string', description: 'Final local confirmation result: confirmed, finalized, processed, expired, missing, or failed.' },
376
+ signerPublicKey: { type: 'string', description: 'Public key of the local SAP MCP signer that updated the agent.' },
377
+ profile: { type: 'string', description: 'Active local SAP MCP profile used for update when available.' },
378
+ agentPda: { type: 'string', description: 'SAP agent PDA derived from the active local signer wallet.' },
379
+ update: { type: 'object', description: 'Update fields submitted on-chain. Omitted fields were intentionally left unchanged.' },
380
+ audit: { type: 'object', description: 'Agent-readable proof that the write was local, non-custodial, and did not use hosted x402.' },
381
+ },
382
+ required: ['success', 'signature', 'confirmationStatus', 'signerPublicKey', 'agentPda', 'update', 'audit'],
383
+ },
384
+ annotations: {
385
+ readOnlyHint: false,
386
+ destructiveHint: false,
387
+ idempotentHint: false,
388
+ openWorldHint: false,
389
+ },
390
+ }, async (input) => {
391
+ try {
392
+ const parsed = parseUpdateAgentInput(input);
393
+ const activeProfile = getActiveProfile();
394
+ const signerPublicKey = context.signer?.publicKey.toBase58();
395
+ if (!signerPublicKey) {
396
+ throw new Error('No local signer configured. Run the SAP MCP wizard full setup or repair the local sap_payments bridge, then restart the agent runtime.');
397
+ }
398
+ const args = parseUpdateAgentArgs(parsed);
399
+ const signature = await context.sapClient.agent.update(args);
400
+ const confirmation = await waitForLocalAgentUpdate(context, signature, parsed.confirmationTimeoutMs);
401
+ const update = summarizeAgentUpdate(args);
402
+ if (!confirmation.confirmed) {
403
+ return createTextResponse(JSON.stringify({
404
+ success: false,
405
+ signature,
406
+ confirmationStatus: confirmation.status,
407
+ signerPublicKey,
408
+ profile: activeProfile,
409
+ agentPda: confirmation.agentPda,
410
+ update,
411
+ audit: {
412
+ action: 'sap_payments_update_agent',
413
+ updatedLocally: true,
414
+ hostedX402Charged: false,
415
+ signerBoundary: 'local-sap-payments-bridge',
416
+ secretMaterial: 'keypair-bytes-never-returned',
417
+ transactionLanded: false,
418
+ retrySafe: confirmation.retrySafe,
419
+ rule: 'The local signer submitted the SAP registry update transaction, but the transaction did not confirm or the agent account was not found inside the local confirmation window.',
420
+ nextAction: confirmation.retrySafe
421
+ ? 'Ask the user for confirmation, then retry sap_payments_update_agent once with the same fields and confirm: true. Do not call hosted sap_update_agent.'
422
+ : 'Do not retry automatically. Inspect the signature and local RPC health first.',
423
+ },
424
+ }, null, 2), { isError: true });
425
+ }
426
+ return createTextResponse(JSON.stringify({
427
+ success: true,
428
+ signature,
429
+ confirmationStatus: confirmation.status,
430
+ signerPublicKey,
431
+ profile: activeProfile,
432
+ agentPda: confirmation.agentPda,
433
+ update,
434
+ audit: {
435
+ action: 'sap_payments_update_agent',
436
+ updatedLocally: true,
437
+ hostedX402Charged: false,
438
+ signerBoundary: 'local-sap-payments-bridge',
439
+ secretMaterial: 'keypair-bytes-never-returned',
440
+ transactionLanded: true,
441
+ rule: 'Hosted sap_update_agent is accountless and cannot sign user-owned registry writes. This local bridge submitted the SAP registry update with the user-controlled profile signer.',
215
442
  },
216
443
  }, null, 2));
217
444
  }
@@ -221,6 +448,9 @@ function registerPaymentsRegisterAgentTool(server, context) {
221
448
  });
222
449
  }
223
450
  async function waitForLocalAgentRegistration(context, signature, timeoutMs = 90_000) {
451
+ return waitForLocalAgentWrite(context, signature, timeoutMs);
452
+ }
453
+ async function waitForLocalAgentWrite(context, signature, timeoutMs = 90_000) {
224
454
  const boundedTimeoutMs = Math.max(15_000, Math.min(timeoutMs, 180_000));
225
455
  const startedAt = Date.now();
226
456
  const [agentPda] = context.sapClient.agent.deriveAgent();
@@ -255,6 +485,40 @@ async function waitForLocalAgentRegistration(context, signature, timeoutMs = 90_
255
485
  agentPda: agentPda.toBase58(),
256
486
  };
257
487
  }
488
+ async function waitForLocalAgentUpdate(context, signature, timeoutMs = 90_000) {
489
+ const boundedTimeoutMs = Math.max(15_000, Math.min(timeoutMs, 180_000));
490
+ const startedAt = Date.now();
491
+ const [agentPda] = context.sapClient.agent.deriveAgent();
492
+ let lastStatus = 'missing';
493
+ while (Date.now() - startedAt < boundedTimeoutMs) {
494
+ const statuses = await context.connection.getSignatureStatuses([signature], { searchTransactionHistory: true });
495
+ const status = statuses.value[0];
496
+ if (status?.err) {
497
+ return {
498
+ confirmed: false,
499
+ retrySafe: true,
500
+ status: 'failed',
501
+ agentPda: agentPda.toBase58(),
502
+ };
503
+ }
504
+ lastStatus = status?.confirmationStatus ?? lastStatus;
505
+ if (lastStatus === 'processed' || lastStatus === 'confirmed' || lastStatus === 'finalized') {
506
+ return {
507
+ confirmed: true,
508
+ retrySafe: false,
509
+ status: lastStatus,
510
+ agentPda: agentPda.toBase58(),
511
+ };
512
+ }
513
+ await sleep(2_000);
514
+ }
515
+ return {
516
+ confirmed: false,
517
+ retrySafe: lastStatus === 'missing',
518
+ status: lastStatus === 'missing' ? 'expired_or_not_landed' : lastStatus,
519
+ agentPda: agentPda.toBase58(),
520
+ };
521
+ }
258
522
  async function sleep(ms) {
259
523
  await new Promise(resolve => setTimeout(resolve, ms));
260
524
  }
@@ -708,6 +972,42 @@ function parseRegisterAgentInput(input) {
708
972
  }
709
973
  return record;
710
974
  }
975
+ function parseUpdateAgentInput(input) {
976
+ if (!input || typeof input !== 'object' || Array.isArray(input)) {
977
+ throw new Error('sap_payments_update_agent requires an input object.');
978
+ }
979
+ const record = input;
980
+ if (record.confirm !== true) {
981
+ throw new Error('confirm: true is required to submit a local SAP registry update transaction.');
982
+ }
983
+ const hasUpdate = [
984
+ 'name',
985
+ 'description',
986
+ 'capabilities',
987
+ 'pricing',
988
+ 'protocols',
989
+ 'agentId',
990
+ 'agentUri',
991
+ 'metadataUri',
992
+ 'x402Endpoint',
993
+ ].some((key) => Object.prototype.hasOwnProperty.call(record, key));
994
+ if (!hasUpdate) {
995
+ throw new Error('At least one update field is required: name, description, capabilities, pricing, protocols, agentId, agentUri/metadataUri, or x402Endpoint.');
996
+ }
997
+ return record;
998
+ }
999
+ function summarizeAgentUpdate(args) {
1000
+ return {
1001
+ name: args.name,
1002
+ description: args.description,
1003
+ agentId: args.agentId,
1004
+ agentUri: args.agentUri,
1005
+ x402Endpoint: args.x402Endpoint,
1006
+ protocols: args.protocols,
1007
+ capabilityCount: args.capabilities?.length ?? null,
1008
+ pricingTierCount: args.pricing?.length ?? null,
1009
+ };
1010
+ }
711
1011
  function parseProbeInput(input) {
712
1012
  if (!input || typeof input !== 'object' || Array.isArray(input)) {
713
1013
  throw new Error('sap_payments_prepare_challenge requires an input object.');
@@ -806,10 +1106,10 @@ function formatLocalRegistryError(error) {
806
1106
  retryable,
807
1107
  category,
808
1108
  hostedX402Charged: false,
809
- agentInstruction: 'For SAP agent registration from hosted-user setups, call sap_payments_register_agent from the local sap_payments bridge. Do not retry hosted sap_register_agent after hosted_local_signer_required, and do not create temporary signing scripts or read keypair JSON.',
1109
+ agentInstruction: 'For SAP agent registration or profile updates from hosted-user setups, call sap_payments_register_agent or sap_payments_update_agent from the local sap_payments bridge. Do not retry hosted sap_register_agent/sap_update_agent after hosted_local_signer_required, and do not create temporary signing scripts or read keypair JSON.',
810
1110
  nextAction: signerMissing
811
1111
  ? 'Call sap_payments_readiness. If signerConfigured is false, run the SAP MCP wizard full setup or repair flow and restart the agent runtime.'
812
- : 'Check the registration fields, local profile, SOL fee balance, and SAP program/RPC status. Retry sap_payments_register_agent only after explicit user confirmation.',
1112
+ : 'Check the registry fields, local profile, SOL fee balance, and SAP program/RPC status. Retry the matching sap_payments registry tool only after explicit user confirmation.',
813
1113
  }, null, 2);
814
1114
  }
815
1115
  function formatFinalizeTransactionError(error) {