@oobe-protocol-labs/sap-mcp-server 0.9.22 → 0.9.35
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 +10 -0
- package/CHANGELOG.md +100 -6
- package/README.md +3 -3
- package/USER_DOCS/00_START_HERE.md +9 -1
- package/USER_DOCS/01_HOSTED_REMOTE_MCP.md +1 -1
- package/USER_DOCS/04_CLIENT_CONFIGS.md +3 -3
- package/USER_DOCS/06_DESKTOP_GUI_WIZARD.md +5 -5
- package/dist/config/env.d.ts +18 -0
- package/dist/config/env.d.ts.map +1 -1
- package/dist/config/env.js +14 -2
- package/dist/config/env.js.map +1 -1
- package/dist/config/mcp-client-injection.js +3 -3
- 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/wizard.d.ts.map +1 -1
- package/dist/config/wizard.js +3 -1
- package/dist/config/wizard.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/pricing.d.ts.map +1 -1
- package/dist/payments/pricing.js +69 -0
- package/dist/payments/pricing.js.map +1 -1
- package/dist/payments/x402-paid-call.js +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 +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 +97 -10
- 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 +152 -9
- package/dist/tools/client-sdk-tools.js.map +1 -1
- package/dist/tools/estimate-tool-cost.js +1 -1
- 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 +5 -5
- 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 +386 -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 +100 -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.js +3 -3
- 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 +14 -5
- package/docs/07_ENDPOINTS_AND_CLIENTS.md +1 -1
- package/docs/09_TOOLS_SKILLS_AND_AGENT_GUIDE.md +13 -5
- 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 +1 -1
- package/skills/sap-agentkit/SKILL.md +1 -2
- package/skills/sap-defi/SKILL.md +31 -2
- package/skills/sap-mcp/SKILL.md +24 -13
- package/skills/sap-mcp/TOOL_REFERENCE.md +2 -4
- package/skills/sap-payments-x402/SKILL.md +15 -3
- package/assets/logos/drift.svg +0 -12
|
@@ -4,12 +4,55 @@
|
|
|
4
4
|
* premium capabilities, and skills list into one compact response to reduce agent
|
|
5
5
|
* bootstrap from 5+ tool calls to 1.
|
|
6
6
|
*/
|
|
7
|
+
import { execSync } from 'child_process';
|
|
7
8
|
import { registerTool } from '../adapters/mcp/sdk-compat.js';
|
|
8
9
|
import { createStructuredJsonResponse } from '../adapters/mcp/tool-response.js';
|
|
9
10
|
import { MCP_SERVER_VERSION } from '../core/constants.js';
|
|
10
11
|
import { listPremiumPlugins, publicPremiumProviderStatus } from '../premium/index.js';
|
|
11
|
-
import { listBundledSkillNames } from './skills-tools.js';
|
|
12
|
+
import { listBundledSkillNames, getBundledSkillContents } from './skills-tools.js';
|
|
12
13
|
import { CAPABILITIES } from '../server/server-metadata.js';
|
|
14
|
+
import { buildSessionContextPacket, normalizeSapAgentIntent, } from './session-context-packet.js';
|
|
15
|
+
/**
|
|
16
|
+
* @name getServerCommit
|
|
17
|
+
* @description Returns the short git commit hash of the current build.
|
|
18
|
+
* Falls back to 'unknown' when git is not available or the repo has no commits.
|
|
19
|
+
*/
|
|
20
|
+
function getServerCommit() {
|
|
21
|
+
try {
|
|
22
|
+
return execSync('git rev-parse --short HEAD', { encoding: 'utf-8', timeout: 2000 }).trim();
|
|
23
|
+
}
|
|
24
|
+
catch {
|
|
25
|
+
return 'unknown';
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* @name resolveNetwork
|
|
30
|
+
* @description Derives the Solana network name from an RPC URL.
|
|
31
|
+
*/
|
|
32
|
+
function resolveNetwork(rpcUrl) {
|
|
33
|
+
if (!rpcUrl)
|
|
34
|
+
return 'unknown';
|
|
35
|
+
if (rpcUrl.includes('mainnet'))
|
|
36
|
+
return 'mainnet-beta';
|
|
37
|
+
if (rpcUrl.includes('testnet'))
|
|
38
|
+
return 'testnet';
|
|
39
|
+
if (rpcUrl.includes('devnet'))
|
|
40
|
+
return 'devnet';
|
|
41
|
+
return 'custom';
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* @name buildRecommendedFlow
|
|
45
|
+
* @description Returns the recommended agent workflow based on server mode.
|
|
46
|
+
*/
|
|
47
|
+
function buildRecommendedFlow(mode) {
|
|
48
|
+
if (mode === 'hosted-api') {
|
|
49
|
+
return 'Hosted mode: use hosted reads directly, sap_payments_call_paid_tool for x402 paid hosted calls, sap_payments_register_agent/update_agent for wallet-owned registry writes, and sap_payments_finalize_transaction for hosted unsigned transactions. Never create signing scripts or read keypair JSON.';
|
|
50
|
+
}
|
|
51
|
+
if (mode === 'local-dev-keypair') {
|
|
52
|
+
return 'Local mode: use sap_preview_transaction → sap_sign_transaction → sap_submit_signed_transaction for signing. The active profile keypair is available for direct signing.';
|
|
53
|
+
}
|
|
54
|
+
return 'Read-only mode: no signing available. Use read-only tools (sol_get_balance, jupiter_getQuote, sap_list_all_agents, etc.).';
|
|
55
|
+
}
|
|
13
56
|
const ALL_SECTIONS = [
|
|
14
57
|
'version',
|
|
15
58
|
'tools',
|
|
@@ -28,7 +71,7 @@ const DEFAULT_MAX_CHARS = 4000;
|
|
|
28
71
|
export function registerQuickContextTool(server, context) {
|
|
29
72
|
registerTool(server, 'sap_quick_context', {
|
|
30
73
|
title: 'SAP MCP Quick Context',
|
|
31
|
-
description: 'Free single-call bootstrap aggregator. Returns a compact markdown-like summary with server version, total tools count, tools by category, pricing tiers summary, premium plugins/capabilities count, bundled skills list, and nextAction guidance. Use this instead of calling sap_agent_start, sap_pricing_catalog, sap_premium_plugin_catalog, sap_skills_list, and sap_get_tool_category_summary separately to reduce bootstrap from 5+ tool calls to 1.',
|
|
74
|
+
description: 'Free single-call bootstrap aggregator. Returns a compact markdown-like summary with server version, total tools count, tools by category, pricing tiers summary, premium plugins/capabilities count, bundled skills list, and nextAction guidance. Pass agentKnownVersion with the version you currently know to get skillsUpdateRequired + skillsContents (full SKILL.md inline) when the server version differs — this lets you auto-update your local skills in 1 call without a separate sap_skills_bundle. Use this instead of calling sap_agent_start, sap_pricing_catalog, sap_premium_plugin_catalog, sap_skills_list, and sap_get_tool_category_summary separately to reduce bootstrap from 5+ tool calls to 1.',
|
|
32
75
|
inputSchema: {
|
|
33
76
|
type: 'object',
|
|
34
77
|
properties: {
|
|
@@ -45,6 +88,15 @@ export function registerQuickContextTool(server, context) {
|
|
|
45
88
|
type: 'number',
|
|
46
89
|
description: 'Maximum character length for the summary string. Defaults to 4000. The summary is truncated if it exceeds this length.',
|
|
47
90
|
},
|
|
91
|
+
agentKnownVersion: {
|
|
92
|
+
type: 'string',
|
|
93
|
+
description: 'The SAP MCP version the agent currently knows about. When this differs from the server version, skillsUpdateRequired is set to true and skillsContents is populated with full SKILL.md contents. Omit to always force a skills update (first bootstrap).',
|
|
94
|
+
},
|
|
95
|
+
intent: {
|
|
96
|
+
type: 'string',
|
|
97
|
+
enum: ['connection', 'paid-call', 'registry-write', 'update-agent', 'transaction-finalize', 'escrow', 'identity', 'swap', 'external-x402', 'premium-stream', 'balance', 'discovery', 'general'],
|
|
98
|
+
description: 'Optional user intent for the embedded sessionContextPacket. Use this to route bootstrap toward paid calls, registry writes, swaps, escrow, external x402 agents, premium streams, balance reads, or discovery.',
|
|
99
|
+
},
|
|
48
100
|
},
|
|
49
101
|
},
|
|
50
102
|
outputSchema: {
|
|
@@ -52,6 +104,7 @@ export function registerQuickContextTool(server, context) {
|
|
|
52
104
|
properties: {
|
|
53
105
|
success: { type: 'boolean', description: 'Whether the quick context summary was generated.' },
|
|
54
106
|
version: { type: 'string', description: 'SAP MCP server version.' },
|
|
107
|
+
serverCommit: { type: 'string', description: 'Git commit hash of the running server build. Changes on every deploy even without version bump.' },
|
|
55
108
|
totalTools: { type: 'number', description: 'Total number of registered MCP tools.' },
|
|
56
109
|
toolsByCategory: { type: 'object', description: 'Tool counts by category (sap, sns, agentKit, premium, etc.).' },
|
|
57
110
|
pricingTiers: { type: 'array', description: 'Pricing tier names available on the hosted server.', items: { type: 'string' } },
|
|
@@ -59,11 +112,16 @@ export function registerQuickContextTool(server, context) {
|
|
|
59
112
|
premiumCapabilities: { type: 'number', description: 'Number of premium capabilities across all plugins.' },
|
|
60
113
|
premiumProvidersReady: { type: 'number', description: 'Number of premium providers with configured environment variables.' },
|
|
61
114
|
skills: { type: 'array', description: 'Bundled skill names available via sap_skills_bundle.', items: { type: 'string' } },
|
|
115
|
+
skillsUpdateRequired: { type: 'boolean', description: 'True when the server version differs from agentKnownVersion (or agentKnownVersion was omitted). When true, skillsContents contains the full SKILL.md contents of all bundled skills.' },
|
|
116
|
+
skillsContents: { type: 'array', description: 'Full SKILL.md contents of all bundled skills, included only when skillsUpdateRequired is true. Each entry has {name, content}.', items: { type: 'object' } },
|
|
117
|
+
environment: { type: 'object', description: 'Server environment summary: network (mainnet/devnet), mode (hosted-api/local-dev-keypair/readonly), authType (none/bearer), rateLimitPerMinute.', properties: { network: { type: 'string' }, mode: { type: 'string' }, authType: { type: 'string' }, rateLimitPerMinute: { type: 'number' } } },
|
|
118
|
+
recommendedFlow: { type: 'string', description: 'Recommended agent workflow based on server mode. Hosted: build unsigned → sign locally. Local: preview → sign → submit.' },
|
|
62
119
|
summary: { type: 'string', description: 'Compact markdown-like summary string suitable for agent context loading.' },
|
|
63
120
|
nextAction: { type: 'string', description: 'Concrete next action for the agent after loading this context.' },
|
|
121
|
+
sessionContextPacket: { type: 'object', description: 'Machine-readable SAP MCP routing, freshness, memory, proof-tape, and forbidden-action rules for this session.' },
|
|
64
122
|
truncated: { type: 'boolean', description: 'Whether the summary was truncated to fit within maxChars.' },
|
|
65
123
|
},
|
|
66
|
-
required: ['success', 'version', 'totalTools', 'toolsByCategory', 'pricingTiers', 'premiumPlugins', 'premiumCapabilities', 'premiumProvidersReady', 'skills', 'summary', 'nextAction', 'truncated'],
|
|
124
|
+
required: ['success', 'version', 'serverCommit', 'totalTools', 'toolsByCategory', 'pricingTiers', 'premiumPlugins', 'premiumCapabilities', 'premiumProvidersReady', 'skills', 'skillsUpdateRequired', 'environment', 'recommendedFlow', 'summary', 'nextAction', 'sessionContextPacket', 'truncated'],
|
|
67
125
|
},
|
|
68
126
|
annotations: {
|
|
69
127
|
readOnlyHint: true,
|
|
@@ -95,7 +153,11 @@ function parseQuickContextInput(input) {
|
|
|
95
153
|
const maxChars = typeof record.maxChars === 'number' && record.maxChars > 0
|
|
96
154
|
? Math.floor(record.maxChars)
|
|
97
155
|
: DEFAULT_MAX_CHARS;
|
|
98
|
-
|
|
156
|
+
const agentKnownVersion = typeof record.agentKnownVersion === 'string' && record.agentKnownVersion.length > 0
|
|
157
|
+
? record.agentKnownVersion
|
|
158
|
+
: undefined;
|
|
159
|
+
const intent = normalizeSapAgentIntent(record.intent);
|
|
160
|
+
return { include, compact, maxChars, agentKnownVersion, intent };
|
|
99
161
|
}
|
|
100
162
|
/**
|
|
101
163
|
* @name resolveSections
|
|
@@ -131,14 +193,23 @@ function buildQuickContextPayload(context, input) {
|
|
|
131
193
|
const premiumCapabilitiesCount = plugins.reduce((sum, plugin) => sum + plugin.capabilities.length, 0);
|
|
132
194
|
const premiumProvidersReady = Object.values(providerStatus).filter(Boolean).length;
|
|
133
195
|
const skills = listBundledSkillNames();
|
|
196
|
+
// Skills auto-update: when the agent passes agentKnownVersion and it differs
|
|
197
|
+
// from the server version (or agentKnownVersion is omitted — first bootstrap),
|
|
198
|
+
// include the full SKILL.md contents inline so the agent can update its local
|
|
199
|
+
// skills without a separate sap_skills_bundle call.
|
|
200
|
+
const skillsUpdateRequired = !input.agentKnownVersion || input.agentKnownVersion !== MCP_SERVER_VERSION;
|
|
201
|
+
const skillsContents = skillsUpdateRequired ? getBundledSkillContents() : undefined;
|
|
134
202
|
const toolsByCategory = CAPABILITIES.tools.categories;
|
|
135
203
|
const totalTools = CAPABILITIES.tools.count;
|
|
204
|
+
// Build pricing tiers from the actual monetization config, not hardcoded values.
|
|
205
|
+
// This ensures quick_context and estimate_tool_cost always agree.
|
|
206
|
+
const monPrices = context.config.monetization.prices;
|
|
136
207
|
const pricingTiers = [
|
|
137
208
|
'free=$0',
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
209
|
+
`read-premium=$${monPrices.readPremiumUsd ?? 0.001}`,
|
|
210
|
+
`builder=$${monPrices.builderUsd ?? 0.008}`,
|
|
211
|
+
`value-action=$${monPrices.valueFixedUsd ?? 0.09}`,
|
|
212
|
+
`heavy-value=$${monPrices.heavyValueUsd ?? 0.05}`,
|
|
142
213
|
'batch=clamped sum',
|
|
143
214
|
];
|
|
144
215
|
const summary = buildSummaryString({
|
|
@@ -158,6 +229,7 @@ function buildQuickContextPayload(context, input) {
|
|
|
158
229
|
return {
|
|
159
230
|
success: true,
|
|
160
231
|
version: MCP_SERVER_VERSION,
|
|
232
|
+
serverCommit: getServerCommit(),
|
|
161
233
|
totalTools,
|
|
162
234
|
toolsByCategory,
|
|
163
235
|
pricingTiers,
|
|
@@ -165,8 +237,18 @@ function buildQuickContextPayload(context, input) {
|
|
|
165
237
|
premiumCapabilities: premiumCapabilitiesCount,
|
|
166
238
|
premiumProvidersReady,
|
|
167
239
|
skills,
|
|
240
|
+
skillsUpdateRequired,
|
|
241
|
+
...(skillsUpdateRequired ? { skillsContents } : {}),
|
|
242
|
+
environment: {
|
|
243
|
+
network: resolveNetwork(context.config.rpcUrl),
|
|
244
|
+
mode: context.config.mode,
|
|
245
|
+
authType: process.env.SAP_HTTP_API_KEY ? 'bearer' : 'none',
|
|
246
|
+
rateLimitPerMinute: context.config.rateLimitPerMinute,
|
|
247
|
+
},
|
|
248
|
+
recommendedFlow: buildRecommendedFlow(context.config.mode),
|
|
168
249
|
summary: summary.text,
|
|
169
250
|
nextAction: buildNextAction(sections),
|
|
251
|
+
sessionContextPacket: buildSessionContextPacket(context, input.intent),
|
|
170
252
|
truncated: summary.truncated,
|
|
171
253
|
};
|
|
172
254
|
}
|
|
@@ -220,9 +302,18 @@ function buildNextAction(sections) {
|
|
|
220
302
|
}
|
|
221
303
|
return [
|
|
222
304
|
'Call sap_agent_start for the full startup playbook.',
|
|
305
|
+
'On future sessions, pass agentKnownVersion to sap_quick_context to auto-update local skills when the server version changes.',
|
|
223
306
|
'Then sap_skills_bundle with includeContents:true to load bundled skills.',
|
|
224
|
-
'
|
|
307
|
+
'If the server version is newer than your local SAP MCP repo, update it: git pull origin main && pnpm run build && pm2 restart sap-mcp-remote (or npx @oobe-protocol-labs/sap-mcp-server@latest for client installs).',
|
|
308
|
+
'Use sap_estimate_tool_cost before any paid tool call — set maxPriceUsd to estimate × 1.25.',
|
|
225
309
|
'Use sap_payments_readiness before any write or paid workflow.',
|
|
310
|
+
'Use sap_prepare_action before swaps, registry writes, escrow, external x402 calls, premium streams, or transaction finalization.',
|
|
311
|
+
'Treat memory as operational context/proof tape only; never use it as cached truth for balances, prices, quotes, blockhashes, simulations, liquidity, or agent account state.',
|
|
312
|
+
'For wallet/profile info: the hosted server is accountless — use sap_payments_profile_current (local bridge) not sap_profile_current.',
|
|
313
|
+
'For signing: use sap_payments_finalize_transaction with signerProfile to sign with a specific profile — no need to switch .active-profile.',
|
|
314
|
+
'For SOL/SPL transfers: use sap_build_sol_transfer or sap_build_spl_transfer (hosted builders), then sign locally with sap_payments_finalize_transaction.',
|
|
315
|
+
'For local-signer-only tools (jupiter_swap, spl-token_transfer, adrena_openPosition, etc.): build unsigned on hosted, sign locally — do not create signing scripts.',
|
|
316
|
+
'Namespace: hosted tools are mcp__sap__* (e.g. mcp__sap__jupiter_getQuote). Local bridge tools are mcp__sap_payments__* (e.g. mcp__sap_payments__sap_payments_finalize_transaction). Search both namespaces when looking for a tool.',
|
|
226
317
|
].join(' ');
|
|
227
318
|
}
|
|
228
319
|
//# sourceMappingURL=quick-context-tool.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quick-context-tool.js","sourceRoot":"","sources":["../../src/tools/quick-context-tool.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;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,kBAAkB,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AACtF,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"quick-context-tool.js","sourceRoot":"","sources":["../../src/tools/quick-context-tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register-tools.d.ts","sourceRoot":"","sources":["../../src/tools/register-tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAEnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"register-tools.d.ts","sourceRoot":"","sources":["../../src/tools/register-tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAEnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAqBtD;;;;;;;GAOG;AACH,wBAAsB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAgEzF"}
|
|
@@ -10,6 +10,7 @@ import { registerSkillsTools } from './skills-tools.js';
|
|
|
10
10
|
import { registerChatTools } from './chat-tools.js';
|
|
11
11
|
import { registerX402PaidCallTool } from './x402-paid-call-tool.js';
|
|
12
12
|
import { registerMagicBlockTools } from './magicblock-tools.js';
|
|
13
|
+
import { registerMemoryTools } from './memory-tools.js';
|
|
13
14
|
import { registerAgentStartTool } from './agent-start-tool.js';
|
|
14
15
|
import { registerEstimateToolCost } from './estimate-tool-cost.js';
|
|
15
16
|
import { registerQuickContextTool } from './quick-context-tool.js';
|
|
@@ -66,6 +67,8 @@ export async function registerTools(server, context) {
|
|
|
66
67
|
registerSkillsTools(server, context);
|
|
67
68
|
// Register MagicBlock tools (20 tools: ER Router, Private Payments, VRF).
|
|
68
69
|
registerMagicBlockTools(server, context);
|
|
70
|
+
// Register local memory tools (15 free tools: memory, strategies, streams, audit).
|
|
71
|
+
registerMemoryTools(server, context);
|
|
69
72
|
logger.debug('Tools registered', { count: getRegisteredTools(server).length });
|
|
70
73
|
}
|
|
71
74
|
//# sourceMappingURL=register-tools.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register-tools.js","sourceRoot":"","sources":["../../src/tools/register-tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"register-tools.js","sourceRoot":"","sources":["../../src/tools/register-tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -439,7 +439,7 @@ function buildHostedPricingMeta(toolName) {
|
|
|
439
439
|
const prices = {
|
|
440
440
|
'read-premium': '~$0.001',
|
|
441
441
|
'builder': '~$0.008',
|
|
442
|
-
'value-action': '~$0.09 standard / ~$0.
|
|
442
|
+
'value-action': '~$0.09 standard / ~$0.05 heavy',
|
|
443
443
|
'batch': '~$0.09+',
|
|
444
444
|
};
|
|
445
445
|
const price = prices[tier] ?? '~$0.001';
|
|
@@ -1403,7 +1403,7 @@ function buildSapProtocolInvariants() {
|
|
|
1403
1403
|
treasury: SAP_PROTOCOL_TREASURY,
|
|
1404
1404
|
lamports: SAP_REGISTRATION_FEE_LAMPORTS.toString(10),
|
|
1405
1405
|
sol: Number(SAP_REGISTRATION_FEE_LAMPORTS) / 1_000_000_000,
|
|
1406
|
-
verification: 'sap_payments_register_agent verifies the landed transaction pre/post balance delta for the treasury account because deployed program behavior can
|
|
1406
|
+
verification: 'sap_payments_register_agent verifies the landed transaction pre/post balance delta for the treasury account because deployed program behavior can diverge from the source-level invariant.',
|
|
1407
1407
|
failureStatus: 'missing_or_underpaid',
|
|
1408
1408
|
failureRule: 'If protocolFee.status is missing_or_underpaid, the agent account can still exist, but sap_payments_register_agent must return success:false, agentRegistered:true, and protocolComplete:false. Do not retry registration automatically; inspect the signature, deployed SAP program, and treasury delta first.',
|
|
1409
1409
|
},
|
|
@@ -2377,7 +2377,7 @@ const indexAndFetchTools = [
|
|
|
2377
2377
|
name: 'sap_fetch_protocol_index',
|
|
2378
2378
|
title: 'Fetch Protocol Index',
|
|
2379
2379
|
description: 'Fetch a SAP protocol index by protocol ID.',
|
|
2380
|
-
inputSchema: { protocolId: { type: 'string', description: 'Protocol ID to fetch the index for (e.g. "jupiter", "
|
|
2380
|
+
inputSchema: { protocolId: { type: 'string', description: 'Protocol ID to fetch the index for (e.g. "jupiter", "adrena")' } },
|
|
2381
2381
|
handler: async (input, client) => ({ index: await client.indexing.fetchProtocolIndexNullable(requiredString(input, 'protocolId')) }),
|
|
2382
2382
|
},
|
|
2383
2383
|
{
|