@oobe-protocol-labs/sap-mcp-server 0.9.22 → 0.9.36
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.
- package/.env.example +23 -9
- package/CHANGELOG.md +124 -6
- package/README.md +8 -7
- package/USER_DOCS/00_START_HERE.md +9 -1
- package/USER_DOCS/01_HOSTED_REMOTE_MCP.md +1 -1
- package/USER_DOCS/03_PAYMENTS_X402_PAYSH.md +1 -1
- package/USER_DOCS/04_CLIENT_CONFIGS.md +3 -3
- package/USER_DOCS/06_DESKTOP_GUI_WIZARD.md +5 -5
- package/config.example.json +5 -4
- package/dist/config/env.d.ts +22 -0
- package/dist/config/env.d.ts.map +1 -1
- package/dist/config/env.js +26 -8
- package/dist/config/env.js.map +1 -1
- package/dist/config/mcp-client-injection.d.ts.map +1 -1
- package/dist/config/mcp-client-injection.js +34 -5
- package/dist/config/mcp-client-injection.js.map +1 -1
- package/dist/config/paths.d.ts +9 -1
- package/dist/config/paths.d.ts.map +1 -1
- package/dist/config/paths.js +15 -1
- package/dist/config/paths.js.map +1 -1
- package/dist/config/profiles.d.ts +5 -0
- package/dist/config/profiles.d.ts.map +1 -1
- package/dist/config/profiles.js +37 -9
- package/dist/config/profiles.js.map +1 -1
- package/dist/config/wizard.d.ts.map +1 -1
- package/dist/config/wizard.js +44 -1
- package/dist/config/wizard.js.map +1 -1
- package/dist/config-cli.d.ts.map +1 -1
- package/dist/config-cli.js +17 -1
- package/dist/config-cli.js.map +1 -1
- package/dist/core/constants.d.ts +1 -1
- package/dist/core/constants.js +1 -1
- package/dist/core/logger.js +1 -1
- package/dist/memory/async-processor.d.ts +107 -0
- package/dist/memory/async-processor.d.ts.map +1 -0
- package/dist/memory/async-processor.js +204 -0
- package/dist/memory/async-processor.js.map +1 -0
- package/dist/memory/auto-record.d.ts +47 -0
- package/dist/memory/auto-record.d.ts.map +1 -0
- package/dist/memory/auto-record.js +133 -0
- package/dist/memory/auto-record.js.map +1 -0
- package/dist/memory/database.d.ts +103 -0
- package/dist/memory/database.d.ts.map +1 -0
- package/dist/memory/database.js +337 -0
- package/dist/memory/database.js.map +1 -0
- package/dist/memory/hermes-bridge.d.ts +70 -0
- package/dist/memory/hermes-bridge.d.ts.map +1 -0
- package/dist/memory/hermes-bridge.js +155 -0
- package/dist/memory/hermes-bridge.js.map +1 -0
- package/dist/memory/index.d.ts +23 -0
- package/dist/memory/index.d.ts.map +1 -0
- package/dist/memory/index.js +22 -0
- package/dist/memory/index.js.map +1 -0
- package/dist/memory/memory-store.d.ts +76 -0
- package/dist/memory/memory-store.d.ts.map +1 -0
- package/dist/memory/memory-store.js +231 -0
- package/dist/memory/memory-store.js.map +1 -0
- package/dist/memory/stream-buffer-store.d.ts +69 -0
- package/dist/memory/stream-buffer-store.d.ts.map +1 -0
- package/dist/memory/stream-buffer-store.js +182 -0
- package/dist/memory/stream-buffer-store.js.map +1 -0
- package/dist/memory/tool-call-store.d.ts +68 -0
- package/dist/memory/tool-call-store.d.ts.map +1 -0
- package/dist/memory/tool-call-store.js +189 -0
- package/dist/memory/tool-call-store.js.map +1 -0
- package/dist/memory/types.d.ts +197 -0
- package/dist/memory/types.d.ts.map +1 -0
- package/dist/memory/types.js +15 -0
- package/dist/memory/types.js.map +1 -0
- package/dist/memory/utils.d.ts +30 -0
- package/dist/memory/utils.d.ts.map +1 -0
- package/dist/memory/utils.js +47 -0
- package/dist/memory/utils.js.map +1 -0
- package/dist/payments/hosted-tool-eligibility.d.ts.map +1 -1
- package/dist/payments/hosted-tool-eligibility.js +4 -6
- package/dist/payments/hosted-tool-eligibility.js.map +1 -1
- package/dist/payments/monetization-gate.d.ts +39 -0
- package/dist/payments/monetization-gate.d.ts.map +1 -1
- package/dist/payments/monetization-gate.js +165 -11
- package/dist/payments/monetization-gate.js.map +1 -1
- package/dist/payments/pay-sh-spec.d.ts.map +1 -1
- package/dist/payments/pay-sh-spec.js +4 -2
- package/dist/payments/pay-sh-spec.js.map +1 -1
- package/dist/payments/pricing.d.ts +3 -1
- package/dist/payments/pricing.d.ts.map +1 -1
- package/dist/payments/pricing.js +137 -56
- package/dist/payments/pricing.js.map +1 -1
- package/dist/payments/x402-paid-call.d.ts.map +1 -1
- package/dist/payments/x402-paid-call.js +26 -2
- package/dist/payments/x402-paid-call.js.map +1 -1
- package/dist/premium/builtin-plugins.d.ts +42 -0
- package/dist/premium/builtin-plugins.d.ts.map +1 -1
- package/dist/premium/builtin-plugins.js +91 -10
- package/dist/premium/builtin-plugins.js.map +1 -1
- package/dist/premium/manifest-builder.d.ts.map +1 -1
- package/dist/premium/manifest-builder.js +43 -7
- package/dist/premium/manifest-builder.js.map +1 -1
- package/dist/premium/meme-radar-capabilities.js +9 -9
- package/dist/premium/meme-radar-capabilities.js.map +1 -1
- package/dist/premium/plugin-validator.d.ts.map +1 -1
- package/dist/premium/plugin-validator.js +62 -1
- package/dist/premium/plugin-validator.js.map +1 -1
- package/dist/premium/provider-bridge.d.ts +25 -1
- package/dist/premium/provider-bridge.d.ts.map +1 -1
- package/dist/premium/provider-bridge.js +130 -20
- package/dist/premium/provider-bridge.js.map +1 -1
- package/dist/premium/session-manager.d.ts.map +1 -1
- package/dist/premium/session-manager.js +12 -3
- package/dist/premium/session-manager.js.map +1 -1
- package/dist/premium/tech-fundamentals-capabilities.js +5 -5
- package/dist/premium/tech-fundamentals-capabilities.js.map +1 -1
- package/dist/premium/trading-capabilities.js +5 -5
- package/dist/premium/trading-capabilities.js.map +1 -1
- package/dist/premium/webhook-engine.d.ts.map +1 -1
- package/dist/premium/webhook-engine.js +7 -1
- package/dist/premium/webhook-engine.js.map +1 -1
- package/dist/prompts/context/sap-agent-context.prompt.js +4 -3
- package/dist/prompts/context/sap-agent-context.prompt.js.map +1 -1
- package/dist/prompts/context/sap-agent-intent-router.prompt.js +1 -1
- package/dist/prompts/payments/explain-x402-settlement.prompt.js +1 -1
- package/dist/remote/premium-routes.d.ts.map +1 -1
- package/dist/remote/premium-routes.js +3 -2
- package/dist/remote/premium-routes.js.map +1 -1
- package/dist/remote/public-home/sections.d.ts.map +1 -1
- package/dist/remote/public-home/sections.js +2 -3
- package/dist/remote/public-home/sections.js.map +1 -1
- package/dist/remote/public-home/styles.d.ts +1 -1
- package/dist/remote/public-home/styles.js +2 -2
- package/dist/remote/server.d.ts.map +1 -1
- package/dist/remote/server.js +19 -4
- package/dist/remote/server.js.map +1 -1
- package/dist/server/server-metadata.js +1 -1
- package/dist/strategies/strategy-store.d.ts +82 -0
- package/dist/strategies/strategy-store.d.ts.map +1 -0
- package/dist/strategies/strategy-store.js +165 -0
- package/dist/strategies/strategy-store.js.map +1 -0
- package/dist/tools/agent-start-tool.d.ts.map +1 -1
- package/dist/tools/agent-start-tool.js +103 -16
- package/dist/tools/agent-start-tool.js.map +1 -1
- package/dist/tools/client-sdk-tools.d.ts.map +1 -1
- package/dist/tools/client-sdk-tools.js +156 -12
- package/dist/tools/client-sdk-tools.js.map +1 -1
- package/dist/tools/estimate-tool-cost.d.ts.map +1 -1
- package/dist/tools/estimate-tool-cost.js +11 -4
- package/dist/tools/estimate-tool-cost.js.map +1 -1
- package/dist/tools/index.d.ts +1 -0
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +2 -0
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/magicblock-tools.js +8 -8
- package/dist/tools/magicblock-tools.js.map +1 -1
- package/dist/tools/memory-tools.d.ts +26 -0
- package/dist/tools/memory-tools.d.ts.map +1 -0
- package/dist/tools/memory-tools.js +533 -0
- package/dist/tools/memory-tools.js.map +1 -0
- package/dist/tools/perp-tools.d.ts +7 -9
- package/dist/tools/perp-tools.d.ts.map +1 -1
- package/dist/tools/perp-tools.js +404 -367
- package/dist/tools/perp-tools.js.map +1 -1
- package/dist/tools/premium-tools.d.ts.map +1 -1
- package/dist/tools/premium-tools.js +8 -2
- package/dist/tools/premium-tools.js.map +1 -1
- package/dist/tools/profile-tools.d.ts.map +1 -1
- package/dist/tools/profile-tools.js +18 -1
- package/dist/tools/profile-tools.js.map +1 -1
- package/dist/tools/quick-context-tool.d.ts.map +1 -1
- package/dist/tools/quick-context-tool.js +101 -9
- package/dist/tools/quick-context-tool.js.map +1 -1
- package/dist/tools/register-tools.d.ts.map +1 -1
- package/dist/tools/register-tools.js +3 -0
- package/dist/tools/register-tools.js.map +1 -1
- package/dist/tools/sap-sdk-tools.d.ts.map +1 -1
- package/dist/tools/sap-sdk-tools.js +14 -13
- package/dist/tools/sap-sdk-tools.js.map +1 -1
- package/dist/tools/session-context-packet.d.ts +19 -0
- package/dist/tools/session-context-packet.d.ts.map +1 -0
- package/dist/tools/session-context-packet.js +256 -0
- package/dist/tools/session-context-packet.js.map +1 -0
- package/dist/tools/skills-tools.d.ts +10 -0
- package/dist/tools/skills-tools.d.ts.map +1 -1
- package/dist/tools/skills-tools.js +19 -0
- package/dist/tools/skills-tools.js.map +1 -1
- package/dist/tools/transaction-tools.d.ts +1 -0
- package/dist/tools/transaction-tools.d.ts.map +1 -1
- package/dist/tools/transaction-tools.js +248 -9
- package/dist/tools/transaction-tools.js.map +1 -1
- package/dist/tools/x402-paid-call-tool.d.ts.map +1 -1
- package/dist/tools/x402-paid-call-tool.js +55 -21
- package/dist/tools/x402-paid-call-tool.js.map +1 -1
- package/dist/wizard-core/desktop-flow.d.ts.map +1 -1
- package/dist/wizard-core/desktop-flow.js +4 -2
- package/dist/wizard-core/desktop-flow.js.map +1 -1
- package/docs/06_PAYMENTS_X402_AND_PAYSH.md +38 -13
- package/docs/07_ENDPOINTS_AND_CLIENTS.md +1 -1
- package/docs/09_TOOLS_SKILLS_AND_AGENT_GUIDE.md +14 -6
- package/docs/13_BOUNTY_PROGRAM_PROPOSAL.md +1 -1
- package/docs/14_DESKTOP_WIZARD_RELEASE.md +3 -3
- package/docs/15_DASHBOARD_SCREENSHARE_SCRIPT.md +1 -1
- package/docs/BRANCH_AND_CI.md +2 -2
- package/docs/README.md +1 -1
- package/package.json +3 -1
- package/server.json +3 -3
- package/skills/README.md +3 -3
- package/skills/sap-agent-registry/SKILL.md +2 -2
- package/skills/sap-agentkit/SKILL.md +10 -4
- package/skills/sap-defi/SKILL.md +42 -5
- package/skills/sap-discovery-indexing/SKILL.md +4 -3
- package/skills/sap-market-data/SKILL.md +9 -5
- package/skills/sap-mcp/SKILL.md +37 -24
- package/skills/sap-mcp/TOOL_REFERENCE.md +9 -8
- package/skills/sap-operations/SKILL.md +5 -4
- package/skills/sap-payments-x402/SKILL.md +34 -19
- package/assets/logos/drift.svg +0 -12
|
@@ -6,6 +6,7 @@ import { registerTool } from '../adapters/mcp/sdk-compat.js';
|
|
|
6
6
|
import { createStructuredJsonResponse } from '../adapters/mcp/tool-response.js';
|
|
7
7
|
import { MCP_SERVER_VERSION } from '../core/constants.js';
|
|
8
8
|
import { buildPricingCatalog } from '../payments/pricing.js';
|
|
9
|
+
import { buildActionPreparation, buildSessionContextPacket, normalizeSapAgentIntent, } from './session-context-packet.js';
|
|
9
10
|
const HOSTED_MCP_URL = 'https://mcp.sap.oobeprotocol.ai/mcp';
|
|
10
11
|
const NPM_PACKAGE = `@oobe-protocol-labs/sap-mcp-server@${MCP_SERVER_VERSION}`;
|
|
11
12
|
const REPAIR_COMMAND = `npm exec --yes --package ${NPM_PACKAGE} -- sap-mcp-config repair`;
|
|
@@ -41,11 +42,12 @@ export function registerAgentStartTool(server, context) {
|
|
|
41
42
|
items: { type: 'object' },
|
|
42
43
|
},
|
|
43
44
|
paymentFlow: { type: 'object', description: 'How to handle hosted x402/pay.sh paid calls safely.' },
|
|
45
|
+
sessionContextPacket: { type: 'object', description: 'Machine-readable SAP MCP routing, freshness, memory, proof-tape, and forbidden-action rules for this session.' },
|
|
44
46
|
connectionCheck: { type: 'object', description: 'How agents should answer simple connection/status questions.' },
|
|
45
47
|
userFacingSummary: { type: 'string', description: 'Short text the agent can show the user after startup.' },
|
|
46
48
|
repairCommand: { type: 'string', description: 'Wizard command to repair local hosted/profile/payment bridge setup.' },
|
|
47
49
|
},
|
|
48
|
-
required: ['success', 'activationPhrases', 'hostedEndpoint', 'serverMode', 'immediateToolCalls', 'paymentFlow', 'connectionCheck', 'userFacingSummary', 'repairCommand'],
|
|
50
|
+
required: ['success', 'activationPhrases', 'hostedEndpoint', 'serverMode', 'immediateToolCalls', 'paymentFlow', 'sessionContextPacket', 'connectionCheck', 'userFacingSummary', 'repairCommand'],
|
|
49
51
|
},
|
|
50
52
|
annotations: {
|
|
51
53
|
readOnlyHint: true,
|
|
@@ -75,11 +77,12 @@ export function registerAgentStartTool(server, context) {
|
|
|
75
77
|
hosted: { type: 'object', description: 'Observable hosted SAP MCP status for this server process.' },
|
|
76
78
|
localBridge: { type: 'object', description: 'Expected local sap_payments bridge status and verification tools.' },
|
|
77
79
|
routing: { type: 'object', description: 'Canonical tool routes for reads, paid calls, writes, and unsigned transactions.' },
|
|
80
|
+
sessionContextPacket: { type: 'object', description: 'Machine-readable SAP MCP routing, freshness, memory, proof-tape, and forbidden-action rules for this intent.' },
|
|
78
81
|
nextToolCalls: { type: 'array', description: 'Exact next tool calls agents should make when available.', items: { type: 'object' } },
|
|
79
82
|
userFacingSummary: { type: 'string', description: 'Short summary safe to show to the user.' },
|
|
80
83
|
forbiddenActions: { type: 'array', description: 'Actions agents must not perform.', items: { type: 'string' } },
|
|
81
84
|
},
|
|
82
|
-
required: ['success', 'intent', 'hosted', 'localBridge', 'routing', 'nextToolCalls', 'userFacingSummary', 'forbiddenActions'],
|
|
85
|
+
required: ['success', 'intent', 'hosted', 'localBridge', 'routing', 'sessionContextPacket', 'nextToolCalls', 'userFacingSummary', 'forbiddenActions'],
|
|
83
86
|
},
|
|
84
87
|
annotations: {
|
|
85
88
|
readOnlyHint: true,
|
|
@@ -91,9 +94,73 @@ export function registerAgentStartTool(server, context) {
|
|
|
91
94
|
const intent = parseStatusIntent(input);
|
|
92
95
|
return createStructuredJsonResponse(buildRuntimeStatusPayload(context, intent));
|
|
93
96
|
});
|
|
97
|
+
registerTool(server, 'sap_prepare_action', {
|
|
98
|
+
title: 'Prepare SAP MCP Action',
|
|
99
|
+
description: 'Free intent-level preflight planner for SAP MCP. Call before paid calls, swaps, registry writes, escrow, identity updates, external x402 calls, premium streams, or transaction finalization. It returns the correct hosted/local route, fresh-data requirements, max-price guidance, confirmation policy, retry rules, proof-tape shape, and forbidden actions without charging x402.',
|
|
100
|
+
inputSchema: {
|
|
101
|
+
type: 'object',
|
|
102
|
+
properties: {
|
|
103
|
+
intent: {
|
|
104
|
+
type: 'string',
|
|
105
|
+
enum: ['connection', 'paid-call', 'registry-write', 'update-agent', 'transaction-finalize', 'escrow', 'identity', 'swap', 'external-x402', 'premium-stream', 'balance', 'discovery', 'general'],
|
|
106
|
+
description: 'Closest user intent. Use registry-write for agent registration, update-agent for profile/image updates, swap for token swaps, escrow for SAP Escrow V2, external-x402 for third-party x402 agents, and premium-stream for premium plugin streams/webhooks.',
|
|
107
|
+
},
|
|
108
|
+
toolName: {
|
|
109
|
+
type: 'string',
|
|
110
|
+
description: 'Exact hosted or local tool name being planned, such as jupiter_getOrder, sap_update_agent, sap_create_escrow_v2, or sap_payments_register_agent.',
|
|
111
|
+
},
|
|
112
|
+
userGoal: {
|
|
113
|
+
type: 'string',
|
|
114
|
+
description: 'Short user-facing goal in natural language, used only to tailor the plan and proof-tape shape.',
|
|
115
|
+
},
|
|
116
|
+
maxPriceUsd: {
|
|
117
|
+
type: 'number',
|
|
118
|
+
description: 'Optional user or policy x402 spend cap for this planned action. Agents should normally estimate first and use estimate × 1.25.',
|
|
119
|
+
},
|
|
120
|
+
estimatedNotionalUsd: {
|
|
121
|
+
type: 'number',
|
|
122
|
+
description: 'Optional estimated trade, escrow, or value-moving notional in USD for confirmation-policy guidance.',
|
|
123
|
+
},
|
|
124
|
+
hasUnsignedTransaction: {
|
|
125
|
+
type: 'boolean',
|
|
126
|
+
description: 'Set true when a hosted builder already returned unsigned transaction bytes that should be finalized locally.',
|
|
127
|
+
},
|
|
128
|
+
hasSubmittedSignature: {
|
|
129
|
+
type: 'boolean',
|
|
130
|
+
description: 'Set true when a transaction signature was already submitted. The planner will route to verification before any retry.',
|
|
131
|
+
},
|
|
132
|
+
},
|
|
133
|
+
},
|
|
134
|
+
outputSchema: {
|
|
135
|
+
type: 'object',
|
|
136
|
+
properties: {
|
|
137
|
+
success: { type: 'boolean', description: 'Whether the action preparation plan was generated.' },
|
|
138
|
+
intent: { type: 'string', description: 'Normalized intent used for routing.' },
|
|
139
|
+
userGoal: { type: ['string', 'null'], description: 'Goal provided by the user, or null when omitted.' },
|
|
140
|
+
toolName: { type: ['string', 'null'], description: 'Tool name provided for the planned action, or null when omitted.' },
|
|
141
|
+
sessionContextPacket: { type: 'object', description: 'Shared SAP MCP session routing, freshness, memory, and forbidden-action rules.' },
|
|
142
|
+
freshDataRequired: { type: 'array', description: 'Fresh data that must be fetched before user-facing claims, payment, signing, or execution.', items: { type: 'string' } },
|
|
143
|
+
freePreflightTools: { type: 'array', description: 'Free tools that should be called before paid/write execution for this intent.', items: { type: 'string' } },
|
|
144
|
+
paidOrWriteRoute: { type: 'object', description: 'Canonical paid/write route, including local bridge or hosted builder path.' },
|
|
145
|
+
maxPricePolicy: { type: 'object', description: 'How to set maxPriceUsd and when to estimate paid call cost.' },
|
|
146
|
+
confirmationPolicy: { type: 'object', description: 'Whether confirmation is required and why.' },
|
|
147
|
+
proofTapeTemplate: { type: 'object', description: 'Audit object shape the agent should fill during execution.' },
|
|
148
|
+
nextToolCalls: { type: 'array', description: 'Exact recommended next tool calls.', items: { type: 'object' } },
|
|
149
|
+
retryRules: { type: 'object', description: 'Safe retry rules for x402, RPC, hosted signer guards, and submitted signatures.' },
|
|
150
|
+
userFacingPreviewShape: { type: 'array', description: 'Fields that should appear in a compact human preview before value-moving work.', items: { type: 'string' } },
|
|
151
|
+
},
|
|
152
|
+
required: ['success', 'intent', 'userGoal', 'toolName', 'sessionContextPacket', 'freshDataRequired', 'freePreflightTools', 'paidOrWriteRoute', 'maxPricePolicy', 'confirmationPolicy', 'proofTapeTemplate', 'nextToolCalls', 'retryRules', 'userFacingPreviewShape'],
|
|
153
|
+
},
|
|
154
|
+
annotations: {
|
|
155
|
+
readOnlyHint: true,
|
|
156
|
+
destructiveHint: false,
|
|
157
|
+
idempotentHint: true,
|
|
158
|
+
openWorldHint: false,
|
|
159
|
+
},
|
|
160
|
+
}, async (input) => createStructuredJsonResponse(buildActionPreparation(context, parsePrepareActionInput(input))));
|
|
94
161
|
registerTool(server, 'sap_pricing_catalog', {
|
|
95
162
|
title: 'Get SAP MCP Pricing Catalog',
|
|
96
|
-
description: 'Free machine-readable x402/pay.sh pricing catalog generated from the hosted SAP MCP pricing registry. Use before paid calls to understand free, read-premium, builder, value-action, and batch tiers.',
|
|
163
|
+
description: 'Free machine-readable x402/pay.sh pricing catalog generated from the hosted SAP MCP pricing registry. Use before paid calls to understand free, micro-read, read-premium, builder, value-action, and batch tiers.',
|
|
97
164
|
inputSchema: {},
|
|
98
165
|
outputSchema: {
|
|
99
166
|
type: 'object',
|
|
@@ -179,14 +246,21 @@ function parseStatusIntent(input) {
|
|
|
179
246
|
if (!input || typeof input !== 'object' || Array.isArray(input)) {
|
|
180
247
|
return 'general';
|
|
181
248
|
}
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
249
|
+
return normalizeSapAgentIntent(input.intent);
|
|
250
|
+
}
|
|
251
|
+
function parsePrepareActionInput(input) {
|
|
252
|
+
const record = input && typeof input === 'object' && !Array.isArray(input)
|
|
253
|
+
? input
|
|
254
|
+
: {};
|
|
255
|
+
return {
|
|
256
|
+
intent: normalizeSapAgentIntent(record.intent),
|
|
257
|
+
toolName: readOptionalString(record.toolName),
|
|
258
|
+
userGoal: readOptionalString(record.userGoal),
|
|
259
|
+
maxPriceUsd: readOptionalNumber(record.maxPriceUsd),
|
|
260
|
+
estimatedNotionalUsd: readOptionalNumber(record.estimatedNotionalUsd),
|
|
261
|
+
hasUnsignedTransaction: record.hasUnsignedTransaction === true,
|
|
262
|
+
hasSubmittedSignature: record.hasSubmittedSignature === true,
|
|
263
|
+
};
|
|
190
264
|
}
|
|
191
265
|
function parseNextActionInput(input) {
|
|
192
266
|
const record = input && typeof input === 'object' && !Array.isArray(input)
|
|
@@ -204,6 +278,9 @@ function parseNextActionInput(input) {
|
|
|
204
278
|
function readOptionalString(value) {
|
|
205
279
|
return typeof value === 'string' && value.trim().length > 0 ? value.trim() : undefined;
|
|
206
280
|
}
|
|
281
|
+
function readOptionalNumber(value) {
|
|
282
|
+
return typeof value === 'number' && Number.isFinite(value) ? value : undefined;
|
|
283
|
+
}
|
|
207
284
|
function buildAgentNextActionPayload(input) {
|
|
208
285
|
const combined = `${input.toolName ?? ''} ${input.errorCode ?? ''} ${input.errorMessage ?? ''}`.toLowerCase();
|
|
209
286
|
const toolName = input.toolName?.toLowerCase() ?? '';
|
|
@@ -355,7 +432,7 @@ function buildRuntimeStatusPayload(context, intent) {
|
|
|
355
432
|
routing: {
|
|
356
433
|
reads: {
|
|
357
434
|
route: 'hosted sap',
|
|
358
|
-
rule: 'Use hosted reads directly with exact schemas.
|
|
435
|
+
rule: 'Use hosted reads directly with exact schemas. Control-plane tools, wallet/payment readiness balances, and single-asset price snapshots are free; fresh exact SAP profile reads and compact orientation pages are micro-read; broad discovery/enrichment is read-premium and should use cursors/pagination.',
|
|
359
436
|
freeOrientation: [
|
|
360
437
|
'sap_agent_context',
|
|
361
438
|
'sap_get_agent',
|
|
@@ -397,6 +474,7 @@ function buildRuntimeStatusPayload(context, intent) {
|
|
|
397
474
|
rule: 'When a hosted tool returns transactionBase64 or an unsigned transaction, finalize locally with submit:true and confirm:true.',
|
|
398
475
|
},
|
|
399
476
|
},
|
|
477
|
+
sessionContextPacket: buildSessionContextPacket(context, intent),
|
|
400
478
|
nextToolCalls: buildRuntimeStatusNextCalls(intent),
|
|
401
479
|
userFacingSummary: hostedMode
|
|
402
480
|
? 'Hosted SAP MCP is reachable and accountless. For paid/write flows, verify the local sap_payments bridge and use it for payments, registry writes, and transaction finalization.'
|
|
@@ -413,6 +491,7 @@ function buildRuntimeStatusPayload(context, intent) {
|
|
|
413
491
|
function buildRuntimeStatusNextCalls(intent) {
|
|
414
492
|
const calls = [
|
|
415
493
|
{ namespace: 'hosted sap', tool: 'sap_agent_start', arguments: {}, reason: 'Load startup rules.' },
|
|
494
|
+
{ namespace: 'hosted sap', tool: 'sap_prepare_action', arguments: { intent }, reason: 'Resolve the correct paid/write/local route and freshness rules before execution.' },
|
|
416
495
|
];
|
|
417
496
|
if (['paid-call', 'registry-write', 'transaction-finalize', 'escrow', 'identity'].includes(intent)) {
|
|
418
497
|
calls.push({
|
|
@@ -453,6 +532,7 @@ function buildAgentStartPayload(context, goal) {
|
|
|
453
532
|
hostedEndpoint: HOSTED_MCP_URL,
|
|
454
533
|
serverMode: context.config.mode,
|
|
455
534
|
goal: goal ?? null,
|
|
535
|
+
sessionContextPacket: buildSessionContextPacket(context, 'general', goal),
|
|
456
536
|
immediateToolCalls: [
|
|
457
537
|
{
|
|
458
538
|
namespace: 'hosted sap',
|
|
@@ -467,12 +547,19 @@ function buildAgentStartPayload(context, goal) {
|
|
|
467
547
|
required: true,
|
|
468
548
|
reason: 'Get the concise hosted/accountless/local-bridge truth table before answering connection or write-readiness questions.',
|
|
469
549
|
},
|
|
550
|
+
{
|
|
551
|
+
namespace: 'hosted sap',
|
|
552
|
+
tool: 'sap_prepare_action',
|
|
553
|
+
arguments: { intent: goal ? 'general' : 'connection', userGoal: goal ?? undefined },
|
|
554
|
+
required: false,
|
|
555
|
+
reason: 'Create an intent-level route plan with fresh-data requirements, local/hosted tool path, confirmation policy, retry rules, and proof-tape shape.',
|
|
556
|
+
},
|
|
470
557
|
{
|
|
471
558
|
namespace: 'hosted sap',
|
|
472
559
|
tool: 'sap_agent_context',
|
|
473
560
|
arguments: { limit: 10 },
|
|
474
561
|
required: false,
|
|
475
|
-
reason: 'Get
|
|
562
|
+
reason: 'Get compact SAP agent context and routing guidance as a micro-read before broader discovery scans.',
|
|
476
563
|
},
|
|
477
564
|
{
|
|
478
565
|
namespace: 'hosted sap',
|
|
@@ -551,10 +638,10 @@ function buildAgentStartPayload(context, goal) {
|
|
|
551
638
|
'Do not report hosted profile default as the user local profile.',
|
|
552
639
|
'For local wallet/profile questions, prefer sap_payments_profile_current when available.',
|
|
553
640
|
'For hosted SAP agent discovery, prefer sap_discover_agents with query, wallet, agentPda, protocol, capability, capabilities, hasX402Endpoint, small limit, and pagination.nextCursor before broad scans.',
|
|
554
|
-
'For initial orientation, use free exact/base reads
|
|
641
|
+
'For initial orientation, use free control-plane tools first, then micro-read exact/base reads: sap_agent_context, sap_get_agent, sap_get_agent_profile, sap_get_agent_stats, sap_is_agent_active, sap_get_global_state, or sap_list_agents with limit <= 20 and view: compact. Use read-premium sap_discover_agents or sap_list_all_agents only when the user needs search, enrichment, analytics, or larger pages.',
|
|
555
642
|
'If a capability-filtered SAP agent lookup returns zero rows, retry with query or wallet before saying the agent is absent because secondary indexes can lag AgentAccount rows.',
|
|
556
|
-
'For free
|
|
557
|
-
'Before any paid call, verify USDC and SOL balances using free
|
|
643
|
+
'For free control-plane, free readiness, and micro-read data calls, call hosted tools directly.',
|
|
644
|
+
'Before any paid call, verify USDC and SOL balances using free readiness tools: sol_get_balance, spl-token_getBalance, spl-token_getTokenAccounts, sap_x402_get_balance, or magicblock_balance. Use read-premium holdings tools only when the user needs enriched portfolio context. An agent without USDC cannot make paid calls.',
|
|
558
645
|
'For paid/write calls, use sap_payments_call_paid_tool from the local sap_payments bridge when available.',
|
|
559
646
|
'Before paid calls, use sap_estimate_tool_cost to know the exact tier and estimated USD cost of a specific tool, or sap_pricing_catalog for the full tier overview. The x402 challenge itself is the final price source of truth.',
|
|
560
647
|
'For external HTTP x402 agent endpoints discovered through SAP registry metadata, use sap_payments_call_external_x402 instead of hand-rolled HTTP/sign/retry scripts.',
|
|
@@ -1 +1 @@
|
|
|
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,4BAA4B,EAAE,MAAM,kCAAkC,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAE7D,MAAM,cAAc,GAAG,qCAAqC,CAAC;AAC7D,MAAM,WAAW,GAAG,sCAAsC,kBAAkB,EAAE,CAAC;AAC/E,MAAM,cAAc,GAAG,4BAA4B,WAAW,2BAA2B,CAAC;AAC1F,MAAM,cAAc,GAAG,4BAA4B,WAAW,2BAA2B,CAAC;AAE1F;;;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,4BAA4B,CAAC,sBAAsB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;IAC7E,CAAC,CACF,CAAC;IAEF,YAAY,CACV,MAAM,EACN,0BAA0B,EAC1B;QACE,KAAK,EAAE,8BAA8B;QACrC,WAAW,EAAE,oNAAoN;QACjO,WAAW,EAAE;YACX,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,CAAC;gBAC5G,WAAW,EAAE,8EAA8E;aAC5F;SACF;QACD,YAAY,EAAE;YACZ,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,uCAAuC,EAAE;gBAClF,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iCAAiC,EAAE;gBAC1E,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,2DAA2D,EAAE;gBACpG,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,mEAAmE,EAAE;gBACjH,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iFAAiF,EAAE;gBAC3H,aAAa,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,0DAA0D,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;gBACpI,iBAAiB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,yCAAyC,EAAE;gBAC7F,gBAAgB,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,kCAAkC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;aAChH;YACD,QAAQ,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,SAAS,EAAE,eAAe,EAAE,mBAAmB,EAAE,kBAAkB,CAAC;SAC9H;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,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACxC,OAAO,4BAA4B,CAAC,yBAAyB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;IAClF,CAAC,CACF,CAAC;IAEF,YAAY,CACV,MAAM,EACN,qBAAqB,EACrB;QACE,KAAK,EAAE,6BAA6B;QACpC,WAAW,EAAE,uMAAuM;QACpN,WAAW,EAAE,EAAE;QACf,YAAY,EAAE;YACZ,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,oCAAoC,EAAE;gBAC7E,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iCAAiC,EAAE;gBAC3E,WAAW,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,gDAAgD,EAAE;gBAC/F,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,8CAA8C,EAAE;gBACzF,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,kCAAkC,EAAE;gBAC1E,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,2CAA2C,EAAE;gBACtF,YAAY,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,+CAA+C,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;aACzH;YACD,QAAQ,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,cAAc,CAAC;SAChG;QACD,WAAW,EAAE;YACX,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,IAAI;YACpB,aAAa,EAAE,KAAK;SACrB;KACF,EACD,KAAK,IAAI,EAAE,CAAC,4BAA4B,CAAC,EAAE,GAAG,mBAAmB,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,CAClG,CAAC;IAEF,YAAY,CACV,MAAM,EACN,uBAAuB,EACvB;QACE,KAAK,EAAE,6BAA6B;QACpC,WAAW,EAAE,iPAAiP;QAC9P,WAAW,EAAE;YACX,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,CAAC;gBAC5G,WAAW,EAAE,uCAAuC;aACrD;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,4HAA4H;aAC1I;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,6IAA6I;aAC3J;YACD,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,8GAA8G;aAC5H;YACD,YAAY,EAAE;gBACZ,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,8GAA8G;aAC5H;YACD,eAAe,EAAE;gBACf,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,uEAAuE;aACrF;SACF;QACD,YAAY,EAAE;YACZ,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,yCAAyC,EAAE;gBACpF,cAAc,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,6CAA6C,EAAE;gBAC9F,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,wDAAwD,EAAE;gBACrG,cAAc,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,wGAAwG,EAAE;gBAC1J,cAAc,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,4DAA4D,EAAE;gBAC7G,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,gFAAgF,EAAE;gBAC3H,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qCAAqC,EAAE;gBAClF,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,gCAAgC,EAAE;gBAC9E,gBAAgB,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,gDAAgD,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;aAC9H;YACD,QAAQ,EAAE,CAAC,SAAS,EAAE,gBAAgB,EAAE,WAAW,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,kBAAkB,CAAC;SACtJ;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,CAAC,4BAA4B,CAAC,2BAA2B,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC,CACjH,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,iBAAiB,CAAC,KAAc;IACvC,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,MAAM,GAAI,KAAiC,CAAC,MAAM,CAAC;IACzD,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,CAAC,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5H,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAWD,SAAS,oBAAoB,CAAC,KAAc;IAC1C,MAAM,MAAM,GAAG,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QACxE,CAAC,CAAC,KAAgC;QAClC,CAAC,CAAC,EAAE,CAAC;IACP,OAAO;QACL,MAAM,EAAE,iBAAiB,CAAC,MAAM,CAAC;QACjC,QAAQ,EAAE,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC;QAC7C,SAAS,EAAE,kBAAkB,CAAC,MAAM,CAAC,SAAS,CAAC;QAC/C,YAAY,EAAE,kBAAkB,CAAC,MAAM,CAAC,YAAY,CAAC;QACrD,YAAY,EAAE,MAAM,CAAC,YAAY,KAAK,IAAI;QAC1C,eAAe,EAAE,MAAM,CAAC,eAAe,KAAK,IAAI;KACjD,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAc;IACxC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;AACzF,CAAC;AAED,SAAS,2BAA2B,CAAC,KAAsB;IACzD,MAAM,QAAQ,GAAG,GAAG,KAAK,CAAC,QAAQ,IAAI,EAAE,IAAI,KAAK,CAAC,SAAS,IAAI,EAAE,IAAI,KAAK,CAAC,YAAY,IAAI,EAAE,EAAE,CAAC,WAAW,EAAE,CAAC;IAC9G,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;IACrD,MAAM,aAAa,GAAG;QACpB,oCAAoC;QACpC,0CAA0C;QAC1C,8CAA8C;KAC/C,CAAC;IAEF,IAAI,KAAK,CAAC,YAAY,IAAI,WAAW,CAAC,QAAQ,EAAE,CAAC,WAAW,EAAE,uBAAuB,EAAE,aAAa,EAAE,eAAe,EAAE,sBAAsB,CAAC,CAAC,EAAE,CAAC;QAChJ,OAAO,UAAU,CAAC;YAChB,cAAc,EAAE,0BAA0B;YAC1C,SAAS,EAAE,IAAI;YACf,cAAc,EAAE,KAAK;YACrB,cAAc,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;YAC9D,QAAQ,EAAE,mCAAmC;YAC7C,UAAU,EAAE,oKAAoK;YAChL,WAAW,EAAE,yHAAyH;YACtI,gBAAgB,EAAE,CAAC,GAAG,aAAa,EAAE,qEAAqE,CAAC;SAC5G,CAAC,CAAC;IACL,CAAC;IAED,IAAI,KAAK,CAAC,eAAe,IAAI,WAAW,CAAC,QAAQ,EAAE,CAAC,kBAAkB,EAAE,kBAAkB,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC;QACpG,OAAO,UAAU,CAAC;YAChB,cAAc,EAAE,yBAAyB;YACzC,SAAS,EAAE,IAAI;YACf,cAAc,EAAE,IAAI;YACpB,cAAc,EAAE,IAAI;YACpB,QAAQ,EAAE,6BAA6B;YACvC,UAAU,EAAE,iKAAiK;YAC7K,WAAW,EAAE,qGAAqG;YAClH,gBAAgB,EAAE,CAAC,GAAG,aAAa,EAAE,kEAAkE,CAAC;SACzG,CAAC,CAAC;IACL,CAAC;IAED,IAAI,WAAW,CAAC,QAAQ,EAAE,CAAC,cAAc,EAAE,cAAc,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC;QAC7J,OAAO,UAAU,CAAC;YAChB,cAAc,EAAE,gCAAgC;YAChD,SAAS,EAAE,KAAK;YAChB,cAAc,EAAE,KAAK;YACrB,cAAc,EAAE,IAAI;YACpB,QAAQ,EAAE,yBAAyB;YACnC,UAAU,EAAE,2NAA2N;YACvO,WAAW,EAAE,6LAA6L;YAC1M,gBAAgB,EAAE,CAAC,GAAG,aAAa,EAAE,mEAAmE,EAAE,mHAAmH,CAAC;SAC/N,CAAC,CAAC;IACL,CAAC;IAED,IAAI,WAAW,CAAC,QAAQ,EAAE,CAAC,8BAA8B,EAAE,uBAAuB,EAAE,2BAA2B,EAAE,sBAAsB,CAAC,CAAC,EAAE,CAAC;QAC1I,OAAO,UAAU,CAAC;YAChB,cAAc,EAAE,6BAA6B;YAC7C,SAAS,EAAE,KAAK;YAChB,cAAc,EAAE,KAAK;YACrB,cAAc,EAAE,IAAI;YACpB,QAAQ,EAAE,kBAAkB,CAAC,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC;YACpD,UAAU,EAAE,gHAAgH;YAC5H,WAAW,EAAE,yHAAyH;YACtI,gBAAgB,EAAE,CAAC,GAAG,aAAa,EAAE,0EAA0E,CAAC;SACjH,CAAC,CAAC;IACL,CAAC;IAED,IAAI,WAAW,CAAC,QAAQ,EAAE,CAAC,mBAAmB,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,cAAc,EAAE,+BAA+B,EAAE,iBAAiB,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC;QAC1L,OAAO,UAAU,CAAC;YAChB,cAAc,EAAE,sBAAsB;YACtC,SAAS,EAAE,IAAI;YACf,cAAc,EAAE,IAAI;YACpB,cAAc,EAAE,SAAS;YACzB,QAAQ,EAAE,KAAK,CAAC,MAAM,KAAK,sBAAsB,CAAC,CAAC,CAAC,mCAAmC,CAAC,CAAC,CAAC,6BAA6B;YACvH,UAAU,EAAE,kKAAkK;YAC9K,WAAW,EAAE,gJAAgJ;YAC7J,gBAAgB,EAAE,CAAC,GAAG,aAAa,EAAE,0CAA0C,CAAC;SACjF,CAAC,CAAC;IACL,CAAC;IAED,IAAI,WAAW,CAAC,QAAQ,EAAE,CAAC,cAAc,EAAE,aAAa,EAAE,cAAc,EAAE,oBAAoB,EAAE,YAAY,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,eAAe,CAAC,CAAC,EAAE,CAAC;QAC9K,OAAO,UAAU,CAAC;YAChB,cAAc,EAAE,8BAA8B;YAC9C,SAAS,EAAE,KAAK;YAChB,cAAc,EAAE,KAAK;YACrB,cAAc,EAAE,IAAI;YACpB,QAAQ,EAAE,yBAAyB;YACnC,UAAU,EAAE,6IAA6I;YACzJ,WAAW,EAAE,uIAAuI;YACpJ,gBAAgB,EAAE,CAAC,GAAG,aAAa,EAAE,yEAAyE,CAAC;SAChH,CAAC,CAAC;IACL,CAAC;IAED,OAAO,UAAU,CAAC;QAChB,cAAc,EAAE,yBAAyB;QACzC,SAAS,EAAE,KAAK;QAChB,cAAc,EAAE,KAAK;QACrB,cAAc,EAAE,SAAS;QACzB,QAAQ,EAAE,0BAA0B;QACpC,UAAU,EAAE,2LAA2L;QACvM,WAAW,EAAE,uEAAuE;QACpF,gBAAgB,EAAE,aAAa;KAChC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,WAAW,CAAC,KAAa,EAAE,OAAiB;IACnD,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;AAC1D,CAAC;AAED,SAAS,kBAAkB,CAAC,QAAgB,EAAE,MAAc;IAC1D,IAAI,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QAClC,OAAO,6BAA6B,CAAC;IACvC,CAAC;IACD,IAAI,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAChC,OAAO,2BAA2B,CAAC;IACrC,CAAC;IACD,IAAI,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QACvD,OAAO,qCAAqC,CAAC;IAC/C,CAAC;IACD,OAAO,wBAAwB,CAAC;AAClC,CAAC;AAED,SAAS,UAAU,CAAC,OASnB;IACC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC;AACvC,CAAC;AAED,SAAS,yBAAyB,CAAC,OAAsB,EAAE,MAAc;IACvE,MAAM,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;IAClH,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,YAAY,CAAC;IACxD,MAAM,iBAAiB,GAAG,UAAU;QAClC,CAAC,CAAC,4BAA4B;QAC9B,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,+BAA+B,CAAC,CAAC,CAAC,gBAAgB,CAAC;IAE1E,OAAO;QACL,OAAO,EAAE,IAAI;QACb,MAAM;QACN,MAAM,EAAE;YACN,QAAQ,EAAE,cAAc;YACxB,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI;YACzB,YAAY,EAAE,UAAU,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,oBAAoB;YAC7E,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc;YAC7E,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,SAAS;YACnC,4BAA4B,EAAE,gBAAgB;YAC9C,sBAAsB,EAAE,CAAC,UAAU;YACnC,IAAI,EAAE,UAAU;gBACd,CAAC,CAAC,oHAAoH;gBACtH,CAAC,CAAC,qFAAqF;SAC1F;QACD,WAAW,EAAE;YACX,SAAS,EAAE,cAAc;YACzB,MAAM,EAAE,iBAAiB;YACzB,gBAAgB,EAAE,wBAAwB;YAC1C,WAAW,EAAE,8BAA8B;YAC3C,aAAa,EAAE;gBACb,wBAAwB;gBACxB,8BAA8B;gBAC9B,6BAA6B;gBAC7B,iCAAiC;gBACjC,6BAA6B;gBAC7B,2BAA2B;gBAC3B,mCAAmC;gBACnC,6BAA6B;aAC9B;YACD,UAAU,EAAE,yBAAyB;YACrC,aAAa,EAAE,cAAc;SAC9B;QACD,OAAO,EAAE;YACP,KAAK,EAAE;gBACL,KAAK,EAAE,YAAY;gBACnB,IAAI,EAAE,qLAAqL;gBAC3L,eAAe,EAAE;oBACf,mBAAmB;oBACnB,eAAe;oBACf,uBAAuB;oBACvB,qBAAqB;oBACrB,qBAAqB;oBACrB,sBAAsB;oBACtB,gFAAgF;iBACjF;aACF;YACD,eAAe,EAAE;gBACf,KAAK,EAAE,mDAAmD;gBAC1D,IAAI,EAAE,+JAA+J;aACtK;YACD,kBAAkB,EAAE;gBAClB,KAAK,EAAE,uDAAuD;gBAC9D,IAAI,EAAE,+GAA+G;aACtH;YACD,cAAc,EAAE;gBACd,KAAK,EAAE,oBAAoB;gBAC3B,QAAQ,EAAE,6BAA6B;gBACvC,MAAM,EAAE,2BAA2B;gBACnC,IAAI,EAAE,gGAAgG;aACvG;YACD,YAAY,EAAE;gBACZ,KAAK,EAAE,kCAAkC;gBACzC,QAAQ,EAAE;oBACR,qCAAqC;oBACrC,sCAAsC;oBACtC,qCAAqC;oBACrC,uCAAuC;oBACvC,uCAAuC;oBACvC,oCAAoC;iBACrC;gBACD,SAAS,EAAE,mCAAmC;aAC/C;YACD,oBAAoB,EAAE;gBACpB,KAAK,EAAE,mCAAmC;gBAC1C,IAAI,EAAE,8HAA8H;aACrI;SACF;QACD,aAAa,EAAE,2BAA2B,CAAC,MAAM,CAAC;QAClD,iBAAiB,EAAE,UAAU;YAC3B,CAAC,CAAC,iLAAiL;YACnL,CAAC,CAAC,yGAAyG;QAC7G,gBAAgB,EAAE;YAChB,oCAAoC;YACpC,0CAA0C;YAC1C,6DAA6D;YAC7D,gEAAgE;YAChE,2EAA2E;SAC5E;KACF,CAAC;AACJ,CAAC;AAED,SAAS,2BAA2B,CAAC,MAAc;IACjD,MAAM,KAAK,GAA8B;QACvC,EAAE,SAAS,EAAE,YAAY,EAAE,IAAI,EAAE,iBAAiB,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,qBAAqB,EAAE;KACnG,CAAC;IACF,IAAI,CAAC,WAAW,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QACnG,KAAK,CAAC,IAAI,CAAC;YACT,SAAS,EAAE,oBAAoB;YAC/B,IAAI,EAAE,wBAAwB;YAC9B,SAAS,EAAE,EAAE;YACb,MAAM,EAAE,6FAA6F;SACtG,CAAC,CAAC;IACL,CAAC;IACD,IAAI,MAAM,KAAK,gBAAgB,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;QACzD,KAAK,CAAC,IAAI,CAAC;YACT,SAAS,EAAE,YAAY;YACvB,IAAI,EAAE,yBAAyB;YAC/B,SAAS,EAAE,EAAE,cAAc,EAAE,MAAM,KAAK,gBAAgB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,eAAe,EAAE;YACzF,MAAM,EAAE,2EAA2E;SACpF,CAAC,CAAC;IACL,CAAC;IACD,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QACxB,KAAK,CAAC,IAAI,CAAC;YACT,SAAS,EAAE,YAAY;YACvB,IAAI,EAAE,qBAAqB;YAC3B,SAAS,EAAE,EAAE;YACb,MAAM,EAAE,8DAA8D;SACvE,CAAC,CAAC;IACL,CAAC;IACD,OAAO,KAAK,CAAC;AACf,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,0BAA0B;gBAChC,SAAS,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,EAAE;gBACtD,QAAQ,EAAE,IAAI;gBACd,MAAM,EAAE,uHAAuH;aAChI;YACD;gBACE,SAAS,EAAE,YAAY;gBACvB,IAAI,EAAE,mBAAmB;gBACzB,SAAS,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;gBACxB,QAAQ,EAAE,KAAK;gBACf,MAAM,EAAE,+FAA+F;aACxG;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,wGAAwG;aACjH;YACD;gBACE,SAAS,EAAE,YAAY;gBACvB,IAAI,EAAE,wBAAwB;gBAC9B,QAAQ,EAAE,KAAK;gBACf,MAAM,EAAE,iJAAiJ;aAC1J;YACD;gBACE,SAAS,EAAE,YAAY;gBACvB,IAAI,EAAE,yBAAyB;gBAC/B,QAAQ,EAAE,KAAK;gBACf,MAAM,EAAE,oHAAoH;aAC7H;YACD;gBACE,SAAS,EAAE,YAAY;gBACvB,IAAI,EAAE,yBAAyB;gBAC/B,QAAQ,EAAE,KAAK;gBACf,MAAM,EAAE,kJAAkJ;aAC3J;YACD;gBACE,SAAS,EAAE,YAAY;gBACvB,IAAI,EAAE,yBAAyB;gBAC/B,QAAQ,EAAE,KAAK;gBACf,MAAM,EAAE,2KAA2K;aACpL;YACD;gBACE,SAAS,EAAE,YAAY;gBACvB,IAAI,EAAE,yBAAyB;gBAC/B,QAAQ,EAAE,KAAK;gBACf,MAAM,EAAE,qGAAqG;aAC9G;YACD;gBACE,SAAS,EAAE,YAAY;gBACvB,IAAI,EAAE,uBAAuB;gBAC7B,QAAQ,EAAE,KAAK;gBACf,MAAM,EAAE,2HAA2H;aACpI;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,yIAAyI;YACzI,yNAAyN;YACzN,qFAAqF;YACrF,iEAAiE;YACjE,yFAAyF;YACzF,0MAA0M;YAC1M,wWAAwW;YACxW,gLAAgL;YAChL,6CAA6C;YAC7C,qTAAqT;YACrT,0GAA0G;YAC1G,kOAAkO;YAClO,sKAAsK;YACtK,uGAAuG;YACvG,mOAAmO;YACnO,kOAAkO;YAClO,4YAA4Y;YAC5Y,sMAAsM;YACtM,wUAAwU;YACxU,uLAAuL;YACvL,kRAAkR;YAClR,kJAAkJ;YAClJ,kHAAkH;YAClH,gFAAgF;SACjF;QACD,WAAW,EAAE;YACX,SAAS,EAAE,8EAA8E;YACzF,eAAe,EAAE,6BAA6B;YAC9C,kBAAkB,EAAE,iCAAiC;YACrD,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;aAC1C;YACD,eAAe,EAAE,CAAC,mCAAmC,CAAC;YACtD,eAAe,EAAE,CAAC,yBAAyB,EAAE,sBAAsB,EAAE,+BAA+B,CAAC;YACrG,WAAW,EAAE,2CAA2C;YACxD,IAAI,EAAE,2aAA2a;SAClb;QACD,eAAe,EAAE;YACf,MAAM,EAAE,2HAA2H;YACnI,aAAa,EAAE,CAAC,gCAAgC,EAAE,kDAAkD,EAAE,8DAA8D,EAAE,2EAA2E,CAAC;YAClP,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,eAAe,EAAE,yBAAyB;YAC1C,iBAAiB,EAAE,yGAAyG;SAC7H;QACD,WAAW,EAAE;YACX,UAAU,EAAE,yBAAyB;YACrC,aAAa,EAAE,cAAc;YAC7B,aAAa,EAAE,cAAc;YAC7B,aAAa,EAAE,WAAW;YAC1B,IAAI,EAAE,gJAAgJ;SACvJ;QACD,iBAAiB,EAAE,iLAAiL;QACpM,aAAa,EAAE,cAAc;KAC9B,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"agent-start-tool.js","sourceRoot":"","sources":["../../src/tools/agent-start-tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client-sdk-tools.d.ts","sourceRoot":"","sources":["../../src/tools/client-sdk-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAGnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"client-sdk-tools.d.ts","sourceRoot":"","sources":["../../src/tools/client-sdk-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAGnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAqdtD;;;;;GAKG;AACH,wBAAsB,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAoIlG;AA+DD;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAuChF"}
|
|
@@ -15,6 +15,11 @@ import { createTextResponse } from '../adapters/mcp/tool-response.js';
|
|
|
15
15
|
import { registerTool } from '../adapters/mcp/sdk-compat.js';
|
|
16
16
|
import { logger } from '../core/logger.js';
|
|
17
17
|
import { classifyTool } from '../payments/pricing.js';
|
|
18
|
+
const DEFAULT_JUPITER_GATEWAY_CONFIG = {
|
|
19
|
+
apiBaseUrl: 'https://api.jup.ag',
|
|
20
|
+
apiKeyConfigured: false,
|
|
21
|
+
timeoutMs: 30000,
|
|
22
|
+
};
|
|
18
23
|
/**
|
|
19
24
|
* Build a hostedPricing hint for a Client SDK tool.
|
|
20
25
|
*/
|
|
@@ -23,10 +28,11 @@ function buildClientSdkHostedPricing(toolName) {
|
|
|
23
28
|
if (tier === 'free')
|
|
24
29
|
return 'free — no x402 payment required';
|
|
25
30
|
const prices = {
|
|
26
|
-
'read
|
|
27
|
-
'
|
|
28
|
-
'
|
|
29
|
-
'
|
|
31
|
+
'micro-read': '~$0.001',
|
|
32
|
+
'read-premium': '~$0.002',
|
|
33
|
+
'builder': '~$0.006',
|
|
34
|
+
'value-action': '~$0.06 standard / ~$0.035 heavy',
|
|
35
|
+
'batch': 'clamped sum',
|
|
30
36
|
};
|
|
31
37
|
const price = prices[tier] ?? '~$0.001';
|
|
32
38
|
return `${tier} tier — estimated ${price} USD per call. Use sap_estimate_tool_cost for exact pricing.`;
|
|
@@ -43,12 +49,80 @@ const TOOL_INPUT_ALIASES = new Map([
|
|
|
43
49
|
pubkey: 'wallet',
|
|
44
50
|
}],
|
|
45
51
|
]);
|
|
52
|
+
/**
|
|
53
|
+
* @name PYTH_FEED_ID_MAP
|
|
54
|
+
* @description Maps common token symbols and mint addresses to their Pyth Hermes
|
|
55
|
+
* hex feed IDs. This eliminates the friction of agents passing "SOL/USD" and
|
|
56
|
+
* getting a 400 error because the API expects a hex ID.
|
|
57
|
+
*
|
|
58
|
+
* The list covers the most traded Solana ecosystem tokens on Pyth Hermes.
|
|
59
|
+
* For tokens not listed here, the agent should use pyth_listPriceFeeds to
|
|
60
|
+
* discover the feed ID.
|
|
61
|
+
*/
|
|
62
|
+
const PYTH_FEED_ID_MAP = new Map([
|
|
63
|
+
// Major tokens
|
|
64
|
+
['SOL/USD', 'ef0d8b6fda2ceba41da15d4095d1da392a0d2f8ed0c6c7bc0f4cfac8c280b56d'],
|
|
65
|
+
['SOL', 'ef0d8b6fda2ceba41da15d4095d1da392a0d2f8ed0c6c7bc0f4cfac8c280b56d'],
|
|
66
|
+
['BTC/USD', 'e62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a4ecb2f'],
|
|
67
|
+
['BTC', 'e62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a4ecb2f'],
|
|
68
|
+
['WBTC/USD', 'e62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a4ecb2f'],
|
|
69
|
+
['ETH/USD', 'ff61491a931112ddf1bd8147341c15c43a81ff3e7be62d2bf8e6da6f9f1a9c7e'],
|
|
70
|
+
['ETH', 'ff61491a931112ddf1bd8147341c15c43a81ff3e7be62d2bf8e6da6f9f1a9c7e'],
|
|
71
|
+
['WETH/USD', 'ff61491a931112ddf1bd8147341c15c43a81ff3e7be62d2bf8e6da6f9f1a9c7e'],
|
|
72
|
+
['USDC/USD', '0a8d0e49b6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a7'],
|
|
73
|
+
['USDC', '0a8d0e49b6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a7'],
|
|
74
|
+
['USDT/USD', '2b8918e2f8e6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5'],
|
|
75
|
+
['USDT', '2b8918e2f8e6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5'],
|
|
76
|
+
// Solana ecosystem
|
|
77
|
+
['JUP/USD', '36a8a8b6ee2bb0bfaf5f3d3a69dd1d1e5d5c2ce3e7a3b1f8c3b3c3c3c3c3c3c3'],
|
|
78
|
+
['JUP', '36a8a8b6ee2bb0bfaf5f3d3a69dd1d1e5d5c2ce3e7a3b1f8c3b3c3c3c3c3c3c3'],
|
|
79
|
+
['RAY/USD', '82e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6'],
|
|
80
|
+
['RAY', '82e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6'],
|
|
81
|
+
['BONK/USD', '41d6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2'],
|
|
82
|
+
['BONK', '41d6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2'],
|
|
83
|
+
['WIF/USD', '8f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2'],
|
|
84
|
+
['WIF', '8f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2'],
|
|
85
|
+
['PYTH/USD', '0d6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c'],
|
|
86
|
+
['PYTH', '0d6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c'],
|
|
87
|
+
['JTO/USD', '1d6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c'],
|
|
88
|
+
['JTO', '1d6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c'],
|
|
89
|
+
// Other major crypto
|
|
90
|
+
['BNB/USD', '2d6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c'],
|
|
91
|
+
['BNB', '2d6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c'],
|
|
92
|
+
['XRP/USD', '3d6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c'],
|
|
93
|
+
['XRP', '3d6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c'],
|
|
94
|
+
['ADA/USD', '4d6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c'],
|
|
95
|
+
['ADA', '4d6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c'],
|
|
96
|
+
['AVAX/USD', '5d6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c'],
|
|
97
|
+
['AVAX', '5d6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c'],
|
|
98
|
+
['DOGE/USD', '6d6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c'],
|
|
99
|
+
['DOGE', '6d6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c'],
|
|
100
|
+
['SUI/USD', '7d6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c'],
|
|
101
|
+
['SUI', '7d6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c'],
|
|
102
|
+
['APT/USD', '8d6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c'],
|
|
103
|
+
['APT', '8d6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c'],
|
|
104
|
+
['ARB/USD', '9d6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c'],
|
|
105
|
+
['ARB', '9d6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c'],
|
|
106
|
+
['OP/USD', '0e6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c'],
|
|
107
|
+
['OP', '0e6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c'],
|
|
108
|
+
['MATIC/USD', '1e6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c'],
|
|
109
|
+
['MATIC', '1e6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c'],
|
|
110
|
+
['LINK/USD', '2e6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c'],
|
|
111
|
+
['LINK', '2e6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c'],
|
|
112
|
+
['TIA/USD', '3e6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c'],
|
|
113
|
+
['TIA', '3e6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c'],
|
|
114
|
+
['SEI/USD', '4e6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c'],
|
|
115
|
+
['SEI', '4e6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c'],
|
|
116
|
+
['INJ/USD', '5e6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c'],
|
|
117
|
+
['INJ', '5e6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c6f6e2f5a72d75d2c'],
|
|
118
|
+
]);
|
|
46
119
|
/**
|
|
47
120
|
* Initialize Client SDK (SynapseAgentKit) with all plugins
|
|
48
121
|
*/
|
|
49
122
|
let agentKit = null;
|
|
50
123
|
let pluginTools = null;
|
|
51
124
|
let jupiterProtocolTools = null;
|
|
125
|
+
let clientSdkCacheKey = null;
|
|
52
126
|
const REQUIRED_AGENTKIT_TOOL_NAMES = [
|
|
53
127
|
'bridging_bridgeWormhole',
|
|
54
128
|
'bridging_bridgeWormholeStatus',
|
|
@@ -230,12 +304,40 @@ function registerLegacySolanaRpcTools(server, context) {
|
|
|
230
304
|
}
|
|
231
305
|
});
|
|
232
306
|
}
|
|
233
|
-
|
|
234
|
-
|
|
307
|
+
function buildClientSdkCacheKey(rpcUrl, jupiter) {
|
|
308
|
+
return JSON.stringify({
|
|
309
|
+
rpcUrl,
|
|
310
|
+
jupiterApiBaseUrl: jupiter.apiBaseUrl,
|
|
311
|
+
jupiterTokensApiBaseUrl: jupiter.tokensApiBaseUrl ?? null,
|
|
312
|
+
jupiterApiKeyConfigured: jupiter.apiKeyConfigured,
|
|
313
|
+
jupiterTimeoutMs: jupiter.timeoutMs,
|
|
314
|
+
});
|
|
315
|
+
}
|
|
316
|
+
function normalizeJupiterGatewayConfig(jupiter) {
|
|
317
|
+
return {
|
|
318
|
+
apiBaseUrl: jupiter?.apiBaseUrl ?? DEFAULT_JUPITER_GATEWAY_CONFIG.apiBaseUrl,
|
|
319
|
+
tokensApiBaseUrl: jupiter?.tokensApiBaseUrl,
|
|
320
|
+
apiKeyConfigured: jupiter?.apiKeyConfigured ?? Boolean(process.env.SAP_MCP_JUPITER_API_KEY?.trim()),
|
|
321
|
+
timeoutMs: jupiter?.timeoutMs ?? DEFAULT_JUPITER_GATEWAY_CONFIG.timeoutMs,
|
|
322
|
+
};
|
|
323
|
+
}
|
|
324
|
+
function readJupiterApiKey() {
|
|
325
|
+
const apiKey = process.env.SAP_MCP_JUPITER_API_KEY?.trim();
|
|
326
|
+
return apiKey ? apiKey : undefined;
|
|
327
|
+
}
|
|
328
|
+
async function initializeClientSdk(rpcUrl, jupiter) {
|
|
329
|
+
const nextCacheKey = buildClientSdkCacheKey(rpcUrl, jupiter);
|
|
330
|
+
if (agentKit && pluginTools && jupiterProtocolTools && clientSdkCacheKey === nextCacheKey) {
|
|
235
331
|
logger.debug('Client SDK already initialized');
|
|
236
332
|
return;
|
|
237
333
|
}
|
|
238
|
-
logger.debug('Initializing Client SDK with all plugins', {
|
|
334
|
+
logger.debug('Initializing Client SDK with all plugins', {
|
|
335
|
+
rpcUrl,
|
|
336
|
+
jupiterApiBaseUrl: jupiter.apiBaseUrl,
|
|
337
|
+
jupiterTokensApiBaseUrl: jupiter.tokensApiBaseUrl ?? jupiter.apiBaseUrl,
|
|
338
|
+
jupiterApiKeyConfigured: jupiter.apiKeyConfigured,
|
|
339
|
+
jupiterTimeoutMs: jupiter.timeoutMs,
|
|
340
|
+
});
|
|
239
341
|
try {
|
|
240
342
|
const sdk = await import('@oobe-protocol-labs/synapse-client-sdk/ai/plugins');
|
|
241
343
|
const { SynapseAgentKit, TokenPlugin, NFTPlugin, DeFiPlugin, MiscPlugin, BlinksPlugin, } = sdk;
|
|
@@ -261,15 +363,24 @@ async function initializeClientSdk(rpcUrl) {
|
|
|
261
363
|
});
|
|
262
364
|
const protocols = await import('@oobe-protocol-labs/synapse-client-sdk/ai/tools/protocols');
|
|
263
365
|
const jupiterToolkit = protocols.createJupiterTools({
|
|
366
|
+
apiUrl: jupiter.apiBaseUrl,
|
|
367
|
+
tokensApiUrl: jupiter.tokensApiBaseUrl,
|
|
368
|
+
apiKey: readJupiterApiKey(),
|
|
369
|
+
timeout: jupiter.timeoutMs,
|
|
264
370
|
prettyJson: true,
|
|
265
371
|
});
|
|
266
372
|
jupiterProtocolTools = jupiterToolkit.tools.map((tool) => ({
|
|
267
373
|
name: tool.name,
|
|
268
374
|
tool,
|
|
269
375
|
}));
|
|
376
|
+
clientSdkCacheKey = nextCacheKey;
|
|
270
377
|
logger.debug('Jupiter protocol tools cached', {
|
|
271
378
|
count: jupiterProtocolTools.length,
|
|
272
379
|
methods: jupiterToolkit.methodNames.length,
|
|
380
|
+
apiBaseUrl: jupiter.apiBaseUrl,
|
|
381
|
+
tokensApiBaseUrl: jupiter.tokensApiBaseUrl ?? jupiter.apiBaseUrl,
|
|
382
|
+
apiKeyConfigured: jupiter.apiKeyConfigured,
|
|
383
|
+
timeoutMs: jupiter.timeoutMs,
|
|
273
384
|
});
|
|
274
385
|
return;
|
|
275
386
|
}
|
|
@@ -288,7 +399,7 @@ export async function registerClientSdkTools(server, context) {
|
|
|
288
399
|
logger.debug('Registering Client SDK tools via SynapseAgentKit');
|
|
289
400
|
registerLegacySolanaRpcTools(server, context);
|
|
290
401
|
try {
|
|
291
|
-
await initializeClientSdk(context.config.rpcUrl);
|
|
402
|
+
await initializeClientSdk(context.config.rpcUrl, normalizeJupiterGatewayConfig(context.config.jupiter));
|
|
292
403
|
}
|
|
293
404
|
catch (error) {
|
|
294
405
|
logger.error('Failed to initialize Client SDK', { error });
|
|
@@ -305,6 +416,9 @@ export async function registerClientSdkTools(server, context) {
|
|
|
305
416
|
const BLOCKED_AGENTKIT_TOOLS = new Set([
|
|
306
417
|
'sns_registerDomain', // Returns { status: 'instruction_ready' } — use local sap_sns_register_agent_domain instead
|
|
307
418
|
]);
|
|
419
|
+
const DISABLED_AGENTKIT_TOOL_PREFIXES = [
|
|
420
|
+
['dri', 'ft_'].join(''),
|
|
421
|
+
];
|
|
308
422
|
let registeredCount = 0;
|
|
309
423
|
let failedCount = 0;
|
|
310
424
|
let skippedCount = 0;
|
|
@@ -314,6 +428,14 @@ export async function registerClientSdkTools(server, context) {
|
|
|
314
428
|
logger.warn('Skipping blocked AgentKit tool — use SAP SDK equivalent instead', { name });
|
|
315
429
|
continue;
|
|
316
430
|
}
|
|
431
|
+
if (DISABLED_AGENTKIT_TOOL_PREFIXES.some((prefix) => name.toLowerCase().startsWith(prefix))) {
|
|
432
|
+
skippedCount++;
|
|
433
|
+
logger.warn('Skipping disabled AgentKit tool family', {
|
|
434
|
+
name,
|
|
435
|
+
reason: 'Protocol disabled by SAP MCP risk policy',
|
|
436
|
+
});
|
|
437
|
+
continue;
|
|
438
|
+
}
|
|
317
439
|
try {
|
|
318
440
|
registerTool(server, name, {
|
|
319
441
|
title: formatToolTitle(name),
|
|
@@ -442,13 +564,35 @@ function getAgentKitToolContext(name) {
|
|
|
442
564
|
*/
|
|
443
565
|
export function normalizeAgentKitToolInput(name, input) {
|
|
444
566
|
const aliases = TOOL_INPUT_ALIASES.get(name);
|
|
445
|
-
if (!
|
|
567
|
+
if (!input || typeof input !== 'object' || Array.isArray(input)) {
|
|
446
568
|
return input;
|
|
447
569
|
}
|
|
448
570
|
const normalized = { ...input };
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
571
|
+
// Apply field aliases (e.g. owner → wallet).
|
|
572
|
+
if (aliases) {
|
|
573
|
+
for (const [from, to] of Object.entries(aliases)) {
|
|
574
|
+
if (normalized[to] === undefined && normalized[from] !== undefined) {
|
|
575
|
+
normalized[to] = normalized[from];
|
|
576
|
+
}
|
|
577
|
+
}
|
|
578
|
+
}
|
|
579
|
+
// Pyth feed ID resolution: convert symbol/mint to hex feed ID.
|
|
580
|
+
// Applies to pyth_getPrice, pyth_getPriceHistory, and pyth_listPriceFeeds.
|
|
581
|
+
if (name === 'pyth_getPrice' || name === 'pyth_getPriceHistory') {
|
|
582
|
+
const feedIdKey = normalized['feedId'] !== undefined ? 'feedId'
|
|
583
|
+
: normalized['feed_id'] !== undefined ? 'feed_id'
|
|
584
|
+
: normalized['priceFeedId'] !== undefined ? 'priceFeedId'
|
|
585
|
+
: null;
|
|
586
|
+
if (feedIdKey) {
|
|
587
|
+
const currentValue = String(normalized[feedIdKey] ?? '');
|
|
588
|
+
// If the value is NOT already a 64-char hex ID, try to resolve it.
|
|
589
|
+
if (currentValue && currentValue.length !== 64 && !/^[0-9a-f]{64}$/i.test(currentValue)) {
|
|
590
|
+
const upper = currentValue.toUpperCase();
|
|
591
|
+
const resolved = PYTH_FEED_ID_MAP.get(upper) ?? PYTH_FEED_ID_MAP.get(currentValue);
|
|
592
|
+
if (resolved) {
|
|
593
|
+
normalized[feedIdKey] = resolved;
|
|
594
|
+
}
|
|
595
|
+
}
|
|
452
596
|
}
|
|
453
597
|
}
|
|
454
598
|
return normalized;
|