@oobe-protocol-labs/sap-mcp-server 0.9.2 → 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 (55) hide show
  1. package/CHANGELOG.md +44 -0
  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 +1 -1
  18. package/dist/core/constants.d.ts.map +1 -1
  19. package/dist/core/constants.js +2 -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/remote/public-home/sections.d.ts.map +1 -1
  29. package/dist/remote/public-home/sections.js +3 -2
  30. package/dist/remote/public-home/sections.js.map +1 -1
  31. package/dist/security/tool-permissions.d.ts.map +1 -1
  32. package/dist/security/tool-permissions.js +1 -0
  33. package/dist/security/tool-permissions.js.map +1 -1
  34. package/dist/tools/agent-start-tool.js +16 -0
  35. package/dist/tools/agent-start-tool.js.map +1 -1
  36. package/dist/tools/magicblock-tools.d.ts +6 -6
  37. package/dist/tools/magicblock-tools.js +26 -26
  38. package/dist/tools/magicblock-tools.js.map +1 -1
  39. package/dist/tools/transaction-tools.d.ts +78 -0
  40. package/dist/tools/transaction-tools.d.ts.map +1 -1
  41. package/dist/tools/transaction-tools.js +72 -9
  42. package/dist/tools/transaction-tools.js.map +1 -1
  43. package/dist/tools/x402-paid-call-tool.d.ts.map +1 -1
  44. package/dist/tools/x402-paid-call-tool.js +106 -0
  45. package/dist/tools/x402-paid-call-tool.js.map +1 -1
  46. package/docs/03_CONFIGURATION_AND_WIZARD.md +2 -3
  47. package/docs/06_PAYMENTS_X402_AND_PAYSH.md +1 -0
  48. package/docs/07_ENDPOINTS_AND_CLIENTS.md +1 -1
  49. package/docs/14_DESKTOP_WIZARD_RELEASE.md +2 -3
  50. package/docs/README.md +5 -2
  51. package/docs/magicblock-tools.md +44 -29
  52. package/package.json +1 -1
  53. package/server.json +3 -3
  54. package/skills/sap-mcp/SKILL.md +6 -0
  55. package/skills/sap-payments-x402/SKILL.md +7 -0
@@ -1 +1 @@
1
- {"version":3,"file":"tool-permissions.js","sourceRoot":"","sources":["../../src/security/tool-permissions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-permissions.js","sourceRoot":"","sources":["../../src/security/tool-permissions.ts"],"names":[],"mappings":"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"}
@@ -116,6 +116,7 @@ function buildAgentStartPayload(context, goal) {
116
116
  'For free reads, call hosted tools directly.',
117
117
  'For paid/write calls, use sap_payments_call_paid_tool from the local sap_payments bridge when available.',
118
118
  'If sap_payments is missing, ask the user to run the wizard repair flow and restart the agent runtime.',
119
+ 'If a hosted tool returns transactionBase64, transaction, or an unsigned transaction object, use local sap_payments_finalize_transaction. Never call hosted sap_sign_transaction for user-owned signing, create local .js/.mjs signing scripts, or read keypair JSON.',
119
120
  'Preview value-moving actions and ask for confirmation when policy requires it.',
120
121
  ],
121
122
  paymentFlow: {
@@ -126,6 +127,21 @@ function buildAgentStartPayload(context, goal) {
126
127
  retryPolicy: 'On BlockhashNotFound, transaction_simulation_failed, node-behind, or expired payment payload, create a fresh challenge and retry through sap_payments_call_paid_tool. Do not reuse an old signed payload.',
127
128
  receiptRule: 'Capture PAYMENT-RESPONSE or X-PAYMENT-RESPONSE and bind it to the tool output/audit summary.',
128
129
  },
130
+ transactionFlow: {
131
+ unsignedTransactionTools: [
132
+ 'jupiter_swapInstructions',
133
+ 'jupiter_getOrder',
134
+ 'magicblock_swap',
135
+ 'magicblock_deposit',
136
+ 'magicblock_transfer',
137
+ 'magicblock_withdraw',
138
+ 'sap_sns_build_manage_record_transaction',
139
+ 'sap_sns_build_set_primary_domain_transaction',
140
+ ],
141
+ localBridgePath: ['sap_payments_finalize_transaction'],
142
+ localServerPath: ['sap_preview_transaction', 'sap_sign_transaction', 'sap_submit_signed_transaction'],
143
+ rule: 'For hosted builders, finalize with local sap_payments_finalize_transaction. For local SAP MCP stdio builders, use sap_preview_transaction -> sap_sign_transaction -> sap_submit_signed_transaction. Do not write temporary signing scripts, shell commands that read keypair files, or raw transaction signers.',
144
+ },
129
145
  connectionCheck: {
130
146
  intent: 'Use this when the user asks "are you connected?", "is SAP MCP connected?", "check SAP", or similar status-only questions.',
131
147
  minimumChecks: ['sap_agent_start when available', 'sap_profile_current for hosted server state', 'sap_payments_readiness only when the user asks about paid/write readiness'],
@@ -1 +1 @@
1
- {"version":3,"file":"agent-start-tool.js","sourceRoot":"","sources":["../../src/tools/agent-start-tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-start-tool.js","sourceRoot":"","sources":["../../src/tools/agent-start-tool.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAGtE,MAAM,cAAc,GAAG,qCAAqC,CAAC;AAC7D,MAAM,cAAc,GAAG,sFAAsF,CAAC;AAE9G;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CAAC,MAAc,EAAE,OAAsB;IAC3E,YAAY,CACV,MAAM,EACN,iBAAiB,EACjB;QACE,KAAK,EAAE,0BAA0B;QACjC,WAAW,EAAE,4KAA4K;QACzL,WAAW,EAAE;YACX,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,uHAAuH;aACrI;SACF;QACD,YAAY,EAAE;YACZ,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,oDAAoD,EAAE;gBAC/F,iBAAiB,EAAE;oBACjB,IAAI,EAAE,OAAO;oBACb,WAAW,EAAE,iEAAiE;oBAC9E,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iBAC1B;gBACD,cAAc,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,oCAAoC,EAAE;gBACrF,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,8BAA8B,EAAE;gBAC3E,kBAAkB,EAAE;oBAClB,IAAI,EAAE,OAAO;oBACb,WAAW,EAAE,uDAAuD;oBACpE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iBAC1B;gBACD,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qDAAqD,EAAE;gBACnG,eAAe,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,8DAA8D,EAAE;gBAChH,iBAAiB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,uDAAuD,EAAE;gBAC3G,aAAa,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qEAAqE,EAAE;aACtH;YACD,QAAQ,EAAE,CAAC,SAAS,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,YAAY,EAAE,oBAAoB,EAAE,aAAa,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,eAAe,CAAC;SACzK;QACD,WAAW,EAAE;YACX,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,IAAI;YACpB,aAAa,EAAE,KAAK;SACrB;KACF,EACD,KAAK,EAAE,KAAc,EAAE,EAAE;QACvB,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;QAC9B,OAAO,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,sBAAsB,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC5F,CAAC,CACF,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,KAAc;IAC/B,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAChE,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,IAAI,GAAI,KAAiC,CAAC,IAAI,CAAC;IACrD,OAAO,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;AACtF,CAAC;AAED,SAAS,sBAAsB,CAAC,OAAsB,EAAE,IAAwB;IAC9E,OAAO;QACL,OAAO,EAAE,IAAI;QACb,iBAAiB,EAAE;YACjB,eAAe;YACf,oBAAoB;YACpB,UAAU;YACV,UAAU;YACV,aAAa;SACd;QACD,cAAc,EAAE,cAAc;QAC9B,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI;QAC/B,IAAI,EAAE,IAAI,IAAI,IAAI;QAClB,kBAAkB,EAAE;YAClB;gBACE,SAAS,EAAE,YAAY;gBACvB,IAAI,EAAE,iBAAiB;gBACvB,QAAQ,EAAE,IAAI;gBACd,MAAM,EAAE,gFAAgF;aACzF;YACD;gBACE,SAAS,EAAE,YAAY;gBACvB,IAAI,EAAE,mBAAmB;gBACzB,SAAS,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE;gBACpC,QAAQ,EAAE,IAAI;gBACd,MAAM,EAAE,qFAAqF;aAC9F;YACD;gBACE,SAAS,EAAE,YAAY;gBACvB,IAAI,EAAE,qBAAqB;gBAC3B,QAAQ,EAAE,KAAK;gBACf,MAAM,EAAE,iGAAiG;aAC1G;YACD;gBACE,SAAS,EAAE,oBAAoB;gBAC/B,IAAI,EAAE,8BAA8B;gBACpC,QAAQ,EAAE,KAAK;gBACf,MAAM,EAAE,kGAAkG;aAC3G;YACD;gBACE,SAAS,EAAE,oBAAoB;gBAC/B,IAAI,EAAE,wBAAwB;gBAC9B,QAAQ,EAAE,KAAK;gBACf,MAAM,EAAE,4GAA4G;aACrH;SACF;QACD,YAAY,EAAE;YACZ,qFAAqF;YACrF,mKAAmK;YACnK,qFAAqF;YACrF,iEAAiE;YACjE,yFAAyF;YACzF,6CAA6C;YAC7C,0GAA0G;YAC1G,uGAAuG;YACvG,sQAAsQ;YACtQ,gFAAgF;SACjF;QACD,WAAW,EAAE;YACX,SAAS,EAAE,8EAA8E;YACzF,eAAe,EAAE,6BAA6B;YAC9C,eAAe,EAAE,wBAAwB;YACzC,WAAW,EAAE,oBAAoB;YACjC,WAAW,EAAE,2MAA2M;YACxN,WAAW,EAAE,8FAA8F;SAC5G;QACD,eAAe,EAAE;YACf,wBAAwB,EAAE;gBACxB,0BAA0B;gBAC1B,kBAAkB;gBAClB,iBAAiB;gBACjB,oBAAoB;gBACpB,qBAAqB;gBACrB,qBAAqB;gBACrB,yCAAyC;gBACzC,8CAA8C;aAC/C;YACD,eAAe,EAAE,CAAC,mCAAmC,CAAC;YACtD,eAAe,EAAE,CAAC,yBAAyB,EAAE,sBAAsB,EAAE,+BAA+B,CAAC;YACrG,IAAI,EAAE,iTAAiT;SACxT;QACD,eAAe,EAAE;YACf,MAAM,EAAE,2HAA2H;YACnI,aAAa,EAAE,CAAC,gCAAgC,EAAE,6CAA6C,EAAE,2EAA2E,CAAC;YAC7K,aAAa,EAAE;gBACb,mBAAmB;gBACnB,mBAAmB;gBACnB,4CAA4C;gBAC5C,yDAAyD;gBACzD,iBAAiB;aAClB;YACD,KAAK,EAAE;gBACL,sCAAsC;gBACtC,mHAAmH;gBACnH,8EAA8E;gBAC9E,2DAA2D;aAC5D;SACF;QACD,MAAM,EAAE;YACN,QAAQ,EAAE,iBAAiB;YAC3B,UAAU,EAAE,mBAAmB;YAC/B,WAAW,EAAE,oBAAoB;YACjC,iBAAiB,EAAE,yGAAyG;SAC7H;QACD,iBAAiB,EAAE,iLAAiL;QACpM,aAAa,EAAE,cAAc;KAC9B,CAAC;AACJ,CAAC"}
@@ -7,20 +7,20 @@
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 { Server } from '@modelcontextprotocol/sdk/server/index.js';
19
19
  import type { SapMcpContext } from '../core/types.js';
20
20
  /**
21
21
  * @name registerMagicBlockTools
22
22
  * @description Registers 20 MagicBlock tools (ER Router, Private Payments, VRF)
23
- * with the MCP server. Each tool is priced at $0.01 (read) or $0.05 (write).
23
+ * with the MCP server. Hosted pricing is resolved centrally by src/payments/pricing.ts.
24
24
  * @param server - MCP server receiving tool definitions and handlers.
25
25
  * @param context - Shared runtime context (VRF getRandomnessResult uses the Solana connection).
26
26
  */
@@ -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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"}
@@ -2,8 +2,85 @@
2
2
  * @module transaction-tools
3
3
  * @description MCP tools for decoding, previewing, signing, and submitting Solana transactions.
4
4
  */
5
+ import { PublicKey, Transaction, VersionedTransaction } from '@solana/web3.js';
5
6
  import type { SapMcpContext } from '../core/types.js';
6
7
  import type { Server } from '@modelcontextprotocol/sdk/server/index.js';
8
+ export type TransactionEncoding = 'base64' | 'base58';
9
+ type SolanaTransaction = Transaction | VersionedTransaction;
10
+ interface DecodedTransaction {
11
+ kind: 'legacy' | 'versioned';
12
+ signatureCount: number;
13
+ readonlySignedAccounts: number;
14
+ readonlyUnsignedAccounts: number;
15
+ requiredSignatures: number;
16
+ instructionCount: number;
17
+ accountKeys: string[];
18
+ recentBlockhash: string;
19
+ feePayer?: string;
20
+ nativeTransferSol: number;
21
+ policyAllowed?: boolean;
22
+ policyReason?: string;
23
+ }
24
+ interface NativeTransferEstimate {
25
+ lamports: bigint;
26
+ sol: number;
27
+ }
28
+ export interface FinalizeTransactionInput {
29
+ transaction?: string;
30
+ transactionBase64?: string;
31
+ encoding?: TransactionEncoding;
32
+ submit?: boolean;
33
+ skipPreflight?: boolean;
34
+ maxRetries?: number;
35
+ confirm?: boolean;
36
+ intentId?: string;
37
+ }
38
+ /**
39
+ * @name decodeInputBytes
40
+ * @description Decodes base64/base58 transaction text into raw bytes.
41
+ * @param value - Encoded transaction string.
42
+ * @param encoding - Encoding used by the incoming transaction.
43
+ * @returns Raw serialized transaction bytes.
44
+ */
45
+ export declare function decodeInputBytes(value: string, encoding?: TransactionEncoding): Buffer;
46
+ /**
47
+ * @name deserializeTransaction
48
+ * @description Deserializes a Solana transaction, preferring v0/versioned format before legacy fallback.
49
+ * @param value - Encoded transaction string.
50
+ * @param encoding - Encoding used by the incoming transaction.
51
+ * @returns Deserialized Solana transaction.
52
+ */
53
+ export declare function deserializeTransaction(value: string, encoding?: TransactionEncoding): SolanaTransaction;
54
+ /**
55
+ * @name assertTransactionPolicy
56
+ * @description Enforces configured transaction value policy before signing or submitting a transaction.
57
+ * @param context - Shared MCP runtime context.
58
+ * @param transaction - Deserialized transaction to check.
59
+ * @param signer - Optional signer filter for signing checks.
60
+ */
61
+ export declare function assertTransactionPolicy(context: SapMcpContext, transaction: SolanaTransaction, signer?: PublicKey): Promise<NativeTransferEstimate>;
62
+ /**
63
+ * @name serializeTransaction
64
+ * @description Serializes a legacy or versioned transaction as base64.
65
+ * @param transaction - Transaction to serialize.
66
+ * @returns Base64 encoded transaction bytes.
67
+ */
68
+ export declare function serializeTransaction(transaction: SolanaTransaction): string;
69
+ /**
70
+ * @name describeTransaction
71
+ * @description Builds a stable JSON preview from a Solana transaction.
72
+ * @param transaction - Deserialized transaction.
73
+ * @returns Transaction metadata safe to expose to MCP clients.
74
+ */
75
+ export declare function describeTransaction(transaction: SolanaTransaction, context?: SapMcpContext): DecodedTransaction;
76
+ /**
77
+ * @name finalizeTransactionWithLocalSigner
78
+ * @description Preview, sign, and optionally submit a transaction with the local SAP MCP signer.
79
+ * @param context - Shared MCP runtime context containing signer, policy, and RPC connection.
80
+ * @param input - Transaction finalization request.
81
+ * @returns Agent-readable finalization result without secret material.
82
+ */
83
+ export declare function finalizeTransactionWithLocalSigner(context: SapMcpContext, input: FinalizeTransactionInput): Promise<Record<string, unknown>>;
7
84
  /**
8
85
  * @name registerTransactionTools
9
86
  * @description Registers real transaction decode, preview, signing, and submission tools.
@@ -11,4 +88,5 @@ import type { Server } from '@modelcontextprotocol/sdk/server/index.js';
11
88
  * @param context - Runtime context containing Solana connection and optional signer.
12
89
  */
13
90
  export declare function registerTransactionTools(server: Server, context: SapMcpContext): void;
91
+ export {};
14
92
  //# sourceMappingURL=transaction-tools.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"transaction-tools.d.ts","sourceRoot":"","sources":["../../src/tools/transaction-tools.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAgPxE;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI,CAiIrF"}
1
+ {"version":3,"file":"transaction-tools.d.ts","sourceRoot":"","sources":["../../src/tools/transaction-tools.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAoB,SAAS,EAAiB,WAAW,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAIhH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAExE,MAAM,MAAM,mBAAmB,GAAG,QAAQ,GAAG,QAAQ,CAAC;AACtD,KAAK,iBAAiB,GAAG,WAAW,GAAG,oBAAoB,CAAC;AAU5D,UAAU,kBAAkB;IAC1B,IAAI,EAAE,QAAQ,GAAG,WAAW,CAAC;IAC7B,cAAc,EAAE,MAAM,CAAC;IACvB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,wBAAwB,EAAE,MAAM,CAAC;IACjC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,UAAU,sBAAsB;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,wBAAwB;IACvC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,mBAAmB,CAAC;IAC/B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAKD;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,GAAE,mBAA8B,GAAG,MAAM,CAUhG;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,mBAAmB,GAAG,iBAAiB,CAQvG;AAsED;;;;;;GAMG;AACH,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,aAAa,EACtB,WAAW,EAAE,iBAAiB,EAC9B,MAAM,CAAC,EAAE,SAAS,GACjB,OAAO,CAAC,sBAAsB,CAAC,CAgBjC;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,iBAAiB,GAAG,MAAM,CAS3E;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,kBAAkB,CA8C/G;AAED;;;;;;GAMG;AACH,wBAAsB,kCAAkC,CACtD,OAAO,EAAE,aAAa,EACtB,KAAK,EAAE,wBAAwB,GAC9B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAiElC;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI,CAiIrF"}