@oobe-protocol-labs/sap-mcp-server 0.9.1 → 0.9.4

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 (66) hide show
  1. package/CHANGELOG.md +45 -1
  2. package/README.md +2 -2
  3. package/USER_DOCS/00_START_HERE.md +1 -0
  4. package/USER_DOCS/03_PAYMENTS_X402_PAYSH.md +4 -3
  5. package/USER_DOCS/04_CLIENT_CONFIGS.md +9 -5
  6. package/USER_DOCS/05_SKILLS_AND_TOOLS.md +2 -0
  7. package/USER_DOCS/06_DESKTOP_GUI_WIZARD.md +6 -6
  8. package/USER_DOCS/07_SMITHERY_AND_MARKETPLACES.md +7 -0
  9. package/config.schema.json +2 -2
  10. package/dist/config/env.js +4 -4
  11. package/dist/config/env.js.map +1 -1
  12. package/dist/config/mcp-client-injection.d.ts.map +1 -1
  13. package/dist/config/mcp-client-injection.js +10 -4
  14. package/dist/config/mcp-client-injection.js.map +1 -1
  15. package/dist/config/wizard.js +3 -3
  16. package/dist/config/wizard.js.map +1 -1
  17. package/dist/core/constants.d.ts +6 -1
  18. package/dist/core/constants.d.ts.map +1 -1
  19. package/dist/core/constants.js +15 -1
  20. package/dist/core/constants.js.map +1 -1
  21. package/dist/payments/pricing.d.ts.map +1 -1
  22. package/dist/payments/pricing.js +57 -13
  23. package/dist/payments/pricing.js.map +1 -1
  24. package/dist/prompts/context/sap-agent-context.prompt.js +2 -0
  25. package/dist/prompts/context/sap-agent-context.prompt.js.map +1 -1
  26. package/dist/prompts/context/sap-agent-start.prompt.js +2 -0
  27. package/dist/prompts/context/sap-agent-start.prompt.js.map +1 -1
  28. package/dist/prompts/payments/explain-x402-settlement.prompt.d.ts.map +1 -1
  29. package/dist/prompts/payments/explain-x402-settlement.prompt.js +13 -10
  30. package/dist/prompts/payments/explain-x402-settlement.prompt.js.map +1 -1
  31. package/dist/remote/public-home/sections.d.ts.map +1 -1
  32. package/dist/remote/public-home/sections.js +3 -2
  33. package/dist/remote/public-home/sections.js.map +1 -1
  34. package/dist/remote/server.js +1 -1
  35. package/dist/remote/server.js.map +1 -1
  36. package/dist/security/tool-permissions.d.ts.map +1 -1
  37. package/dist/security/tool-permissions.js +1 -0
  38. package/dist/security/tool-permissions.js.map +1 -1
  39. package/dist/server/create-server.d.ts.map +1 -1
  40. package/dist/server/create-server.js +2 -1
  41. package/dist/server/create-server.js.map +1 -1
  42. package/dist/tools/agent-start-tool.js +16 -0
  43. package/dist/tools/agent-start-tool.js.map +1 -1
  44. package/dist/tools/magicblock-tools.d.ts +6 -6
  45. package/dist/tools/magicblock-tools.js +26 -26
  46. package/dist/tools/magicblock-tools.js.map +1 -1
  47. package/dist/tools/sap-sdk-tools.d.ts +1 -1
  48. package/dist/tools/sap-sdk-tools.js +3 -3
  49. package/dist/tools/sap-sdk-tools.js.map +1 -1
  50. package/dist/tools/transaction-tools.d.ts +78 -0
  51. package/dist/tools/transaction-tools.d.ts.map +1 -1
  52. package/dist/tools/transaction-tools.js +72 -9
  53. package/dist/tools/transaction-tools.js.map +1 -1
  54. package/dist/tools/x402-paid-call-tool.d.ts.map +1 -1
  55. package/dist/tools/x402-paid-call-tool.js +106 -0
  56. package/dist/tools/x402-paid-call-tool.js.map +1 -1
  57. package/docs/03_CONFIGURATION_AND_WIZARD.md +2 -3
  58. package/docs/06_PAYMENTS_X402_AND_PAYSH.md +1 -0
  59. package/docs/07_ENDPOINTS_AND_CLIENTS.md +1 -1
  60. package/docs/14_DESKTOP_WIZARD_RELEASE.md +2 -3
  61. package/docs/README.md +5 -2
  62. package/docs/magicblock-tools.md +44 -29
  63. package/package.json +1 -1
  64. package/server.json +3 -3
  65. package/skills/sap-mcp/SKILL.md +6 -0
  66. package/skills/sap-payments-x402/SKILL.md +7 -0
@@ -7,13 +7,13 @@
7
7
  * - mb-vrf (2 Solana VRF tools — on-chain via @solana/web3.js)
8
8
  *
9
9
  * Pricing:
10
- * READ = $0.01/call (10_000 USDC base units) 14 read-only tools
11
- * WRITE = $0.05/call (50_000 USDC base units) 6 transaction-building tools
10
+ * READ = hosted read-premium tier lightweight discovery, quote, and state tools.
11
+ * BUILD = hosted builder/value-action tiers — transaction-building or value-moving tools.
12
12
  *
13
13
  * Write tools (deposit, transfer, withdraw, swap, initializeMint) return
14
- * unsigned transactions. The caller must sign with sap_sign_transaction
15
- * and submit with sap_submit_signed_transaction to the RPC indicated by
16
- * the `sendTo` field ("base" or "ephemeral").
14
+ * unsigned transactions. Agents must use sap_preview_transaction,
15
+ * sap_sign_transaction, and sap_submit_signed_transaction. Do not create
16
+ * temporary signing scripts or read local keypair files.
17
17
  */
18
18
  import { PublicKey, TransactionInstruction, Transaction, SystemProgram } from '@solana/web3.js';
19
19
  import { createTextResponse } from '../adapters/mcp/tool-response.js';
@@ -136,7 +136,7 @@ const validatorField = f.string('Optional ER validator pubkey. Defaults to the s
136
136
  /**
137
137
  * @name registerMagicBlockTools
138
138
  * @description Registers 20 MagicBlock tools (ER Router, Private Payments, VRF)
139
- * with the MCP server. Each tool is priced at $0.01 (read) or $0.05 (write).
139
+ * with the MCP server. Hosted pricing is resolved centrally by src/payments/pricing.ts.
140
140
  * @param server - MCP server receiving tool definitions and handlers.
141
141
  * @param context - Shared runtime context (VRF getRandomnessResult uses the Solana connection).
142
142
  */
@@ -173,7 +173,7 @@ export function registerMagicBlockTools(server, context) {
173
173
  // ═══════════════════════════════════════════════════════════════
174
174
  // ER Router (6 read-only tools)
175
175
  // ═══════════════════════════════════════════════════════════════
176
- register('magicblock_getRoutes', 'List available Ephemeral Rollup nodes from the Magic Router (identity, FQDN, fee, block time, country). Price: $0.01.', schema({ endpoint: endpointField }), async (raw) => {
176
+ register('magicblock_getRoutes', 'List available Ephemeral Rollup nodes from the Magic Router (identity, FQDN, fee, block time, country)..', schema({ endpoint: endpointField }), async (raw) => {
177
177
  try {
178
178
  const { endpoint = 'devnet' } = parseInput(raw);
179
179
  const routes = await rpcCall(endpoint, 'getRoutes', []);
@@ -183,7 +183,7 @@ export function registerMagicBlockTools(server, context) {
183
183
  return handleError('magicblock_getRoutes', e);
184
184
  }
185
185
  });
186
- register('magicblock_getIdentity', 'Get the identity and FQDN of the current ER Validator node. Price: $0.01.', schema({ endpoint: endpointField }), async (raw) => {
186
+ register('magicblock_getIdentity', 'Get the identity and FQDN of the current ER Validator node..', schema({ endpoint: endpointField }), async (raw) => {
187
187
  try {
188
188
  const { endpoint = 'devnet' } = parseInput(raw);
189
189
  const identity = await rpcCall(endpoint, 'getIdentity', []);
@@ -193,7 +193,7 @@ export function registerMagicBlockTools(server, context) {
193
193
  return handleError('magicblock_getIdentity', e);
194
194
  }
195
195
  });
196
- register('magicblock_getDelegationStatus', 'Check whether a Solana account is delegated to an Ephemeral Rollup. Returns authority, owner, delegation slot, and lamports. Price: $0.01.', schema({ account: f.pubkey('Account pubkey to check delegation status for'), endpoint: endpointField }, ['account']), async (raw) => {
196
+ register('magicblock_getDelegationStatus', 'Check whether a Solana account is delegated to an Ephemeral Rollup. Returns authority, owner, delegation slot, and lamports..', schema({ account: f.pubkey('Account pubkey to check delegation status for'), endpoint: endpointField }, ['account']), async (raw) => {
197
197
  try {
198
198
  const { account, endpoint = 'devnet' } = parseInput(raw);
199
199
  const status = await rpcCall(endpoint, 'getDelegationStatus', [account]);
@@ -203,7 +203,7 @@ export function registerMagicBlockTools(server, context) {
203
203
  return handleError('magicblock_getDelegationStatus', e);
204
204
  }
205
205
  });
206
- register('magicblock_getAccountInfo', 'Fetch account information (data, lamports, owner, executable, space) via the Magic Router. Price: $0.01.', schema({ account: f.pubkey('Account pubkey to fetch info for'), encoding: f.enum('Encoding for account data', ['base64', 'base64+zstd']), endpoint: endpointField }, ['account']), async (raw) => {
206
+ register('magicblock_getAccountInfo', 'Fetch account information (data, lamports, owner, executable, space) via the Magic Router..', schema({ account: f.pubkey('Account pubkey to fetch info for'), encoding: f.enum('Encoding for account data', ['base64', 'base64+zstd']), endpoint: endpointField }, ['account']), async (raw) => {
207
207
  try {
208
208
  const { account, encoding = 'base64', endpoint = 'devnet' } = parseInput(raw);
209
209
  const info = await rpcCall(endpoint, 'getAccountInfo', [account, { encoding }]);
@@ -213,7 +213,7 @@ export function registerMagicBlockTools(server, context) {
213
213
  return handleError('magicblock_getAccountInfo', e);
214
214
  }
215
215
  });
216
- register('magicblock_getBlockhashForAccounts', 'Get a blockhash and last valid block height for a batch of account addresses (max 100). Price: $0.01.', schema({ accounts: f.array('Array of account addresses (max 100)', f.pubkey('Account pubkey')), endpoint: endpointField }, ['accounts']), async (raw) => {
216
+ register('magicblock_getBlockhashForAccounts', 'Get a blockhash and last valid block height for a batch of account addresses (max 100)..', schema({ accounts: f.array('Array of account addresses (max 100)', f.pubkey('Account pubkey')), endpoint: endpointField }, ['accounts']), async (raw) => {
217
217
  try {
218
218
  const { accounts, endpoint = 'devnet' } = parseInput(raw);
219
219
  const blockhash = await rpcCall(endpoint, 'getBlockhashForAccounts', [accounts]);
@@ -223,7 +223,7 @@ export function registerMagicBlockTools(server, context) {
223
223
  return handleError('magicblock_getBlockhashForAccounts', e);
224
224
  }
225
225
  });
226
- register('magicblock_getSignatureStatuses', 'Check the confirmation status (processed/confirmed/finalized) of one or more transaction signatures. Price: $0.01.', schema({ signatures: f.array('Array of transaction signatures', f.string('Transaction signature (base58)')), endpoint: endpointField }, ['signatures']), async (raw) => {
226
+ register('magicblock_getSignatureStatuses', 'Check the confirmation status (processed/confirmed/finalized) of one or more transaction signatures..', schema({ signatures: f.array('Array of transaction signatures', f.string('Transaction signature (base58)')), endpoint: endpointField }, ['signatures']), async (raw) => {
227
227
  try {
228
228
  const { signatures, endpoint = 'devnet' } = parseInput(raw);
229
229
  const statuses = await rpcCall(endpoint, 'getSignatureStatuses', [signatures]);
@@ -236,7 +236,7 @@ export function registerMagicBlockTools(server, context) {
236
236
  // ═══════════════════════════════════════════════════════════════
237
237
  // Private Payment API — Meta & Auth (3 tools)
238
238
  // ═══════════════════════════════════════════════════════════════
239
- register('magicblock_health', 'Check the health status of the MagicBlock Private Payments API. Price: $0.01.', schema({}), async () => {
239
+ register('magicblock_health', 'Check the health status of the MagicBlock Private Payments API..', schema({}), async () => {
240
240
  try {
241
241
  const health = await apiGet('/health');
242
242
  return success(health, 'magicblock_health');
@@ -245,7 +245,7 @@ export function registerMagicBlockTools(server, context) {
245
245
  return handleError('magicblock_health', e);
246
246
  }
247
247
  });
248
- register('magicblock_challenge', 'Generate a challenge string for the wallet to sign (step 1 of the PER auth flow). Price: $0.01.', schema({ pubkey: f.pubkey('Wallet pubkey that will sign the challenge'), cluster: clusterField }, ['pubkey']), async (raw) => {
248
+ register('magicblock_challenge', 'Generate a challenge string for the wallet to sign (step 1 of the PER auth flow)..', schema({ pubkey: f.pubkey('Wallet pubkey that will sign the challenge'), cluster: clusterField }, ['pubkey']), async (raw) => {
249
249
  try {
250
250
  const { pubkey, cluster } = parseInput(raw);
251
251
  const result = await apiGet('/v1/spl/challenge', {
@@ -257,7 +257,7 @@ export function registerMagicBlockTools(server, context) {
257
257
  return handleError('magicblock_challenge', e);
258
258
  }
259
259
  });
260
- register('magicblock_login', 'Exchange a signed challenge for a bearer token (step 2 of PER auth flow). The token is used for private-balance and private transfers. Price: $0.01.', schema({ pubkey: f.pubkey('Wallet pubkey that signed the challenge'), challenge: f.string('Challenge string from magicblock_challenge'), signature: f.string('Wallet signature over the challenge string'), cluster: clusterField }, ['pubkey', 'challenge', 'signature']), async (raw) => {
260
+ register('magicblock_login', 'Exchange a signed challenge for a bearer token (step 2 of PER auth flow). The token is used for private-balance and private transfers..', schema({ pubkey: f.pubkey('Wallet pubkey that signed the challenge'), challenge: f.string('Challenge string from magicblock_challenge'), signature: f.string('Wallet signature over the challenge string'), cluster: clusterField }, ['pubkey', 'challenge', 'signature']), async (raw) => {
261
261
  try {
262
262
  const { pubkey, challenge, signature, cluster } = parseInput(raw);
263
263
  const result = await apiPost('/v1/spl/login', {
@@ -272,7 +272,7 @@ export function registerMagicBlockTools(server, context) {
272
272
  // ═══════════════════════════════════════════════════════════════
273
273
  // Private Payment API — Balance (2 tools)
274
274
  // ═══════════════════════════════════════════════════════════════
275
- register('magicblock_balance', 'Read the base-chain SPL token balance for an address (public, no auth required). Price: $0.01.', schema({ address: f.pubkey('Owner wallet pubkey'), mint: f.string('SPL mint pubkey'), cluster: clusterField }, ['address', 'mint']), async (raw) => {
275
+ register('magicblock_balance', 'Read the base-chain SPL token balance for an address (public, no auth required)..', schema({ address: f.pubkey('Owner wallet pubkey'), mint: f.string('SPL mint pubkey'), cluster: clusterField }, ['address', 'mint']), async (raw) => {
276
276
  try {
277
277
  const { address, mint, cluster } = parseInput(raw);
278
278
  const result = await apiGet('/v1/spl/balance', { address, mint, cluster: cluster ?? undefined });
@@ -282,7 +282,7 @@ export function registerMagicBlockTools(server, context) {
282
282
  return handleError('magicblock_balance', e);
283
283
  }
284
284
  });
285
- register('magicblock_privateBalance', 'Read the ephemeral-rollup SPL token balance for an address (requires bearer token from login). Price: $0.01.', schema({ address: f.pubkey('Owner wallet pubkey'), mint: f.string('SPL mint pubkey'), cluster: clusterField, authToken: f.string('Bearer token from magicblock_login (required for private reads)') }, ['address', 'mint', 'authToken']), async (raw) => {
285
+ register('magicblock_privateBalance', 'Read the ephemeral-rollup SPL token balance for an address (requires bearer token from login)..', schema({ address: f.pubkey('Owner wallet pubkey'), mint: f.string('SPL mint pubkey'), cluster: clusterField, authToken: f.string('Bearer token from magicblock_login (required for private reads)') }, ['address', 'mint', 'authToken']), async (raw) => {
286
286
  try {
287
287
  const { address, mint, cluster, authToken } = parseInput(raw);
288
288
  const result = await apiGet('/v1/spl/private-balance', { address, mint, cluster: cluster ?? undefined }, authToken);
@@ -295,7 +295,7 @@ export function registerMagicBlockTools(server, context) {
295
295
  // ═══════════════════════════════════════════════════════════════
296
296
  // Private Payment API — SPL Token Flows (3 write tools)
297
297
  // ═══════════════════════════════════════════════════════════════
298
- register('magicblock_deposit', 'Build an unsigned transaction to deposit SPL tokens from Solana into an Ephemeral Rollup. Sign with sap_sign_transaction and submit to the RPC indicated by sendTo. Price: $0.05.', schema({ owner: f.pubkey('Wallet pubkey that owns the tokens and will sign'), amount: f.number('Base-unit amount to deposit (integer, minimum 1)'), mint: f.string('SPL mint. Defaults to USDC (mainnet) or devnet USDC'), cluster: clusterField, validator: validatorField, initIfMissing: f.boolean('Initialize the transfer queue if missing (default true)'), initVaultIfMissing: f.boolean('Initialize the vault if missing (default true)'), initAtasIfMissing: f.boolean('Initialize associated token accounts if missing (default true)'), idempotent: f.boolean('Use idempotent variants for preparatory init instructions (default true)') }, ['owner', 'amount']), async (raw) => {
298
+ register('magicblock_deposit', 'Build an unsigned transaction to deposit SPL tokens from Solana into an Ephemeral Rollup. Then use sap_preview_transaction, sap_sign_transaction, and sap_submit_signed_transaction. Do not create local signing scripts. Builder fee applies.', schema({ owner: f.pubkey('Wallet pubkey that owns the tokens and will sign'), amount: f.number('Base-unit amount to deposit (integer, minimum 1)'), mint: f.string('SPL mint. Defaults to USDC (mainnet) or devnet USDC'), cluster: clusterField, validator: validatorField, initIfMissing: f.boolean('Initialize the transfer queue if missing (default true)'), initVaultIfMissing: f.boolean('Initialize the vault if missing (default true)'), initAtasIfMissing: f.boolean('Initialize associated token accounts if missing (default true)'), idempotent: f.boolean('Use idempotent variants for preparatory init instructions (default true)') }, ['owner', 'amount']), async (raw) => {
299
299
  try {
300
300
  const input = parseInput(raw);
301
301
  const result = await apiPost('/v1/spl/deposit', {
@@ -311,7 +311,7 @@ export function registerMagicBlockTools(server, context) {
311
311
  return handleError('magicblock_deposit', e);
312
312
  }
313
313
  });
314
- register('magicblock_transfer', 'Build an unsigned SPL token transfer (public or private) through an Ephemeral Rollup. Supports base/ephemeral source and destination, delayed settlement, split transfers, and gasless mode. Price: $0.05.', schema({
314
+ register('magicblock_transfer', 'Build an unsigned SPL token transfer (public or private) through an Ephemeral Rollup. Supports base/ephemeral source and destination, delayed settlement, split transfers, and gasless mode. Then use sap_preview_transaction, sap_sign_transaction, and sap_submit_signed_transaction. Builder fee applies.', schema({
315
315
  from: f.pubkey('Sender wallet pubkey'), to: f.pubkey('Recipient wallet pubkey'), mint: f.string('SPL mint pubkey'),
316
316
  amount: f.number('Base-unit amount to transfer (integer, minimum 1)'),
317
317
  visibility: f.enum("'public' = transparent SPL transfer, 'private' = routed through Private ER with delayed+split settlement", ['public', 'private']),
@@ -350,7 +350,7 @@ export function registerMagicBlockTools(server, context) {
350
350
  return handleError('magicblock_transfer', e);
351
351
  }
352
352
  });
353
- register('magicblock_withdraw', 'Build an unsigned transaction to withdraw SPL tokens from an Ephemeral Rollup back to Solana. Price: $0.05.', schema({ owner: f.pubkey('Wallet pubkey that owns the tokens and will sign'), mint: f.string('SPL mint on Solana'), amount: f.number('Base-unit amount to withdraw (integer, minimum 1)'), cluster: clusterField, validator: f.string('Optional ER validator pubkey'), initIfMissing: f.boolean('Initialize transfer queue if missing (default true)'), initAtasIfMissing: f.boolean('Initialize ATAs if missing (default true)'), escrowIndex: f.number('Optional escrow index for the withdrawal'), idempotent: f.boolean('Use idempotent variants for preparatory init instructions (default true)') }, ['owner', 'mint', 'amount']), async (raw) => {
353
+ register('magicblock_withdraw', 'Build an unsigned transaction to withdraw SPL tokens from an Ephemeral Rollup back to Solana. Then use sap_preview_transaction, sap_sign_transaction, and sap_submit_signed_transaction. Builder fee applies.', schema({ owner: f.pubkey('Wallet pubkey that owns the tokens and will sign'), mint: f.string('SPL mint on Solana'), amount: f.number('Base-unit amount to withdraw (integer, minimum 1)'), cluster: clusterField, validator: f.string('Optional ER validator pubkey'), initIfMissing: f.boolean('Initialize transfer queue if missing (default true)'), initAtasIfMissing: f.boolean('Initialize ATAs if missing (default true)'), escrowIndex: f.number('Optional escrow index for the withdrawal'), idempotent: f.boolean('Use idempotent variants for preparatory init instructions (default true)') }, ['owner', 'mint', 'amount']), async (raw) => {
354
354
  try {
355
355
  const input = parseInput(raw);
356
356
  const result = await apiPost('/v1/spl/withdraw', {
@@ -370,7 +370,7 @@ export function registerMagicBlockTools(server, context) {
370
370
  // ═══════════════════════════════════════════════════════════════
371
371
  // Private Payment API — Swap (2 tools)
372
372
  // ═══════════════════════════════════════════════════════════════
373
- register('magicblock_swapQuote', 'Get a swap quote between two SPL mints (proxies Triton Metis swap API). Pass the result into magicblock_swap. Price: $0.01.', schema({ inputMint: f.string('Input token mint address'), outputMint: f.string('Output token mint address'), amount: f.string("Raw amount to swap (unsigned integer string, e.g. '1000000')"), slippageBps: f.number('Slippage threshold in basis points (e.g. 50 = 0.5%)'), swapMode: f.enum('Swap mode: fixed input or fixed output amount', ['ExactIn', 'ExactOut']), onlyDirectRoutes: f.boolean('Limit routing to a single hop (default false)'), restrictIntermediateTokens: f.boolean('Restrict intermediate tokens to a more stable set (default false)'), platformFeeBps: f.number('Optional platform fee in basis points'), maxAccounts: f.number('Approximate maximum account budget for the route (default 64)') }, ['inputMint', 'outputMint', 'amount']), async (raw) => {
373
+ register('magicblock_swapQuote', 'Get a swap quote between two SPL mints (proxies Triton Metis swap API). Pass the result into magicblock_swap. Lightweight read tier; use this before any value-moving swap.', schema({ inputMint: f.string('Input token mint address'), outputMint: f.string('Output token mint address'), amount: f.string("Raw amount to swap (unsigned integer string, e.g. '1000000')"), slippageBps: f.number('Slippage threshold in basis points (e.g. 50 = 0.5%)'), swapMode: f.enum('Swap mode: fixed input or fixed output amount', ['ExactIn', 'ExactOut']), onlyDirectRoutes: f.boolean('Limit routing to a single hop (default false)'), restrictIntermediateTokens: f.boolean('Restrict intermediate tokens to a more stable set (default false)'), platformFeeBps: f.number('Optional platform fee in basis points'), maxAccounts: f.number('Approximate maximum account budget for the route (default 64)') }, ['inputMint', 'outputMint', 'amount']), async (raw) => {
374
374
  try {
375
375
  const input = parseInput(raw);
376
376
  const result = await apiGet('/v1/swap/quote', {
@@ -388,7 +388,7 @@ export function registerMagicBlockTools(server, context) {
388
388
  return handleError('magicblock_swapQuote', e);
389
389
  }
390
390
  });
391
- register('magicblock_swap', "Build an unsigned swap transaction from a quote. 'public' mode passes through Jupiter, 'private' mode routes output through a scheduled private transfer with delay and split. Price: $0.05.", schema({ userPublicKey: f.pubkey('Wallet that will sign the swap transaction'), quoteResponse: f.object('Quote response object from magicblock_swapQuote (pass as-is)', {}), visibility: f.enum("'public' = transparent Jupiter pass-through, 'private' = output routed through scheduled private transfer", ['public', 'private']), destination: f.pubkey("Final private-transfer recipient (required when visibility='private')"), minDelayMs: f.string("Private only. Earliest (ms) the queued transfer may settle"), maxDelayMs: f.string("Private only. Latest (ms) the queued transfer may settle (<= 600000)"), split: f.number('Private only. Number of queue entries to split across (1-14)'), clientRefId: f.string('Private only. Optional u64 client correlation ID'), validator: f.string('Optional validator pubkey for the transfer-queue PDA'), wrapAndUnwrapSol: f.boolean('Auto wrap/unwrap native SOL when needed (default true)'), asLegacyTransaction: f.boolean('Build a legacy transaction (not allowed when visibility=private, default false)') }, ['userPublicKey', 'quoteResponse']), async (raw) => {
391
+ register('magicblock_swap', "Build an unsigned swap transaction from a quote. 'public' mode passes through Jupiter, 'private' mode routes output through a scheduled private transfer with delay and split. Agents must continue with sap_preview_transaction, sap_sign_transaction, and sap_submit_signed_transaction; never write temporary signing scripts or read keypair JSON. Value-action fee applies.", schema({ userPublicKey: f.pubkey('Wallet that will sign the swap transaction'), quoteResponse: f.object('Quote response object from magicblock_swapQuote (pass as-is)', {}), visibility: f.enum("'public' = transparent Jupiter pass-through, 'private' = output routed through scheduled private transfer", ['public', 'private']), destination: f.pubkey("Final private-transfer recipient (required when visibility='private')"), minDelayMs: f.string("Private only. Earliest (ms) the queued transfer may settle"), maxDelayMs: f.string("Private only. Latest (ms) the queued transfer may settle (<= 600000)"), split: f.number('Private only. Number of queue entries to split across (1-14)'), clientRefId: f.string('Private only. Optional u64 client correlation ID'), validator: f.string('Optional validator pubkey for the transfer-queue PDA'), wrapAndUnwrapSol: f.boolean('Auto wrap/unwrap native SOL when needed (default true)'), asLegacyTransaction: f.boolean('Build a legacy transaction (not allowed when visibility=private, default false)') }, ['userPublicKey', 'quoteResponse']), async (raw) => {
392
392
  try {
393
393
  const input = parseInput(raw);
394
394
  const result = await apiPost('/v1/swap/swap', {
@@ -410,7 +410,7 @@ export function registerMagicBlockTools(server, context) {
410
410
  // ═══════════════════════════════════════════════════════════════
411
411
  // Private Payment API — Mint Init (2 tools)
412
412
  // ═══════════════════════════════════════════════════════════════
413
- register('magicblock_initializeMint', 'Build an unsigned transaction that initializes a validator-scoped transfer queue for a mint. Price: $0.05.', schema({ owner: f.pubkey('Wallet pubkey that will sign the transaction'), mint: f.string('SPL mint to initialize a transfer queue for'), cluster: clusterField, validator: f.string('Optional ER validator pubkey') }, ['owner', 'mint']), async (raw) => {
413
+ register('magicblock_initializeMint', 'Build an unsigned transaction that initializes a validator-scoped transfer queue for a mint. Then use sap_preview_transaction, sap_sign_transaction, and sap_submit_signed_transaction. Builder fee applies.', schema({ owner: f.pubkey('Wallet pubkey that will sign the transaction'), mint: f.string('SPL mint to initialize a transfer queue for'), cluster: clusterField, validator: f.string('Optional ER validator pubkey') }, ['owner', 'mint']), async (raw) => {
414
414
  try {
415
415
  const input = parseInput(raw);
416
416
  const result = await apiPost('/v1/spl/initialize-mint', {
@@ -422,7 +422,7 @@ export function registerMagicBlockTools(server, context) {
422
422
  return handleError('magicblock_initializeMint', e);
423
423
  }
424
424
  });
425
- register('magicblock_isMintInitialized', 'Check whether a mint has a validator-scoped transfer queue on the ephemeral RPC. Price: $0.01.', schema({ mint: f.string('SPL mint to check'), cluster: clusterField, validator: f.string('Optional ER validator pubkey') }, ['mint']), async (raw) => {
425
+ register('magicblock_isMintInitialized', 'Check whether a mint has a validator-scoped transfer queue on the ephemeral RPC..', schema({ mint: f.string('SPL mint to check'), cluster: clusterField, validator: f.string('Optional ER validator pubkey') }, ['mint']), async (raw) => {
426
426
  try {
427
427
  const input = parseInput(raw);
428
428
  const result = await apiGet('/v1/spl/is-mint-initialized', {
@@ -437,7 +437,7 @@ export function registerMagicBlockTools(server, context) {
437
437
  // ═══════════════════════════════════════════════════════════════
438
438
  // VRF (2 tools — on-chain via @solana/web3.js)
439
439
  // ═══════════════════════════════════════════════════════════════
440
- register('magicblock_requestRandomness', 'Request provably fair on-chain randomness from the MagicBlock VRF oracle (Vrf1RNUjXmQGjmQrQLvJHs9SNkvDJEsRVFPkfSQUwGz). Builds an unsigned transaction that invokes request_randomness on the VRF program. The caller must sign with sap_sign_transaction and submit to Solana. The oracle queue defaults to the base-layer queue (Cuj97ggrhhidhbu39TijNVqE74xvKJ69gDervRUXAxGh); set ephemeral=true to use the ER queue for delegated programs. Price: $0.05.', schema({
440
+ register('magicblock_requestRandomness', 'Request provably fair on-chain randomness from the MagicBlock VRF oracle (Vrf1RNUjXmQGjmQrQLvJHs9SNkvDJEsRVFPkfSQUwGz). Builds an unsigned transaction that invokes request_randomness on the VRF program. Use sap_preview_transaction, sap_sign_transaction, and sap_submit_signed_transaction; do not create local signing scripts. The oracle queue defaults to the base-layer queue (Cuj97ggrhhidhbu39TijNVqE74xvKJ69gDervRUXAxGh); set ephemeral=true to use the ER queue for delegated programs. Builder fee applies.', schema({
441
441
  payer: f.pubkey('Wallet pubkey that will pay for the request and sign the transaction'),
442
442
  callbackProgramId: f.pubkey('Program ID of the callback program (the program that will consume the randomness)'),
443
443
  callbackDiscriminator: f.string('Base58 or hex discriminator for the callback instruction in your program'),
@@ -525,7 +525,7 @@ export function registerMagicBlockTools(server, context) {
525
525
  return handleError('magicblock_requestRandomness', e);
526
526
  }
527
527
  });
528
- register('magicblock_getRandomnessResult', 'Check whether a VRF request has been fulfilled by reading the RandomnessRequest account on-chain. Returns fulfilled status, random bytes (if available), and the request metadata. Price: $0.01.', schema({ requestKey: f.pubkey('VRF request PDA key from magicblock_requestRandomness'), endpoint: endpointField }, ['requestKey']), async (raw) => {
528
+ register('magicblock_getRandomnessResult', 'Check whether a VRF request has been fulfilled by reading the RandomnessRequest account on-chain. Returns fulfilled status, random bytes (if available), and the request metadata..', schema({ requestKey: f.pubkey('VRF request PDA key from magicblock_requestRandomness'), endpoint: endpointField }, ['requestKey']), async (raw) => {
529
529
  try {
530
530
  const { requestKey: requestKeyStr } = parseInput(raw);
531
531
  const requestKey = new PublicKey(requestKeyStr);
@@ -1 +1 @@
1
- {"version":3,"file":"magicblock-tools.js","sourceRoot":"","sources":["../../src/tools/magicblock-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"magicblock-tools.js","sourceRoot":"","sources":["../../src/tools/magicblock-tools.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,7 @@ import { Server } from '@modelcontextprotocol/sdk/server/index.js';
9
9
  import type { SapMcpContext } from '../core/types.js';
10
10
  /**
11
11
  * @name registerSapSdkTools
12
- * @description Registers production SAP SDK-backed tools using the public SDK v0.20 client surface.
12
+ * @description Registers production SAP SDK-backed tools using the current public SDK v1.0.x client surface.
13
13
  */
14
14
  export declare function registerSapSdkTools(server: Server, _context: SapMcpContext): void;
15
15
  //# sourceMappingURL=sap-sdk-tools.d.ts.map
@@ -864,7 +864,7 @@ const discoveryTools = [
864
864
  {
865
865
  name: 'sap_discover_agents',
866
866
  title: 'Discover SAP Agents',
867
- description: 'Discover agents by protocol, capability, or capability list. Unfiltered global listing is not exposed by SDK v0.20.',
867
+ description: 'Discover agents by protocol, capability, or capability list. For unfiltered global listing, use sap_list_all_agents.',
868
868
  inputSchema: {
869
869
  protocol: { type: 'string', description: 'Protocol identifier to filter agents by (e.g. "jupiter", "drift")' },
870
870
  capability: { type: 'string', description: 'Single capability ID to filter agents by (e.g. "jupiter:swap")' },
@@ -896,7 +896,7 @@ const discoveryTools = [
896
896
  count: 0,
897
897
  agents: [],
898
898
  overview: await client.discovery.getNetworkOverview(),
899
- note: 'SDK v0.20 exposes filtered discovery, not unfiltered global agent enumeration. Provide protocol or capability.',
899
+ note: 'SDK filtered discovery requires a protocol or capability. For global on-chain directory snapshots, call sap_list_all_agents.',
900
900
  };
901
901
  },
902
902
  },
@@ -1530,7 +1530,7 @@ const sapToolGroups = [
1530
1530
  ];
1531
1531
  /**
1532
1532
  * @name registerSapSdkTools
1533
- * @description Registers production SAP SDK-backed tools using the public SDK v0.20 client surface.
1533
+ * @description Registers production SAP SDK-backed tools using the current public SDK v1.0.x client surface.
1534
1534
  */
1535
1535
  export function registerSapSdkTools(server, _context) {
1536
1536
  logger.debug('Registering SAP SDK tools');