@oobe-protocol-labs/sap-mcp-server 0.9.16 → 0.9.21

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 (611) hide show
  1. package/.env.example +8 -7
  2. package/CHANGELOG.md +238 -0
  3. package/README.md +3 -3
  4. package/USER_DOCS/01_HOSTED_REMOTE_MCP.md +1 -1
  5. package/USER_DOCS/04_CLIENT_CONFIGS.md +3 -3
  6. package/USER_DOCS/05_SKILLS_AND_TOOLS.md +16 -8
  7. package/USER_DOCS/06_DESKTOP_GUI_WIZARD.md +5 -5
  8. package/config.example.json +5 -4
  9. package/config.schema.json +7 -2
  10. package/config.secure-example.json +5 -4
  11. package/dist/adapters/index.d.ts +7 -1
  12. package/dist/adapters/index.d.ts.map +1 -1
  13. package/dist/adapters/index.js +7 -1
  14. package/dist/adapters/index.js.map +1 -1
  15. package/dist/adapters/mcp/errors.d.ts +13 -1
  16. package/dist/adapters/mcp/errors.d.ts.map +1 -1
  17. package/dist/adapters/mcp/errors.js +13 -1
  18. package/dist/adapters/mcp/errors.js.map +1 -1
  19. package/dist/adapters/mcp/index.d.ts +7 -1
  20. package/dist/adapters/mcp/index.d.ts.map +1 -1
  21. package/dist/adapters/mcp/index.js +7 -1
  22. package/dist/adapters/mcp/index.js.map +1 -1
  23. package/dist/adapters/mcp/prompt-response.d.ts +13 -1
  24. package/dist/adapters/mcp/prompt-response.d.ts.map +1 -1
  25. package/dist/adapters/mcp/prompt-response.js +13 -1
  26. package/dist/adapters/mcp/prompt-response.js.map +1 -1
  27. package/dist/adapters/mcp/resource-response.d.ts +14 -1
  28. package/dist/adapters/mcp/resource-response.d.ts.map +1 -1
  29. package/dist/adapters/mcp/resource-response.js +14 -1
  30. package/dist/adapters/mcp/resource-response.js.map +1 -1
  31. package/dist/adapters/mcp/sdk-compat.d.ts +11 -3
  32. package/dist/adapters/mcp/sdk-compat.d.ts.map +1 -1
  33. package/dist/adapters/mcp/sdk-compat.js +213 -24
  34. package/dist/adapters/mcp/sdk-compat.js.map +1 -1
  35. package/dist/adapters/mcp/tool-response.d.ts +39 -4
  36. package/dist/adapters/mcp/tool-response.d.ts.map +1 -1
  37. package/dist/adapters/mcp/tool-response.js +39 -4
  38. package/dist/adapters/mcp/tool-response.js.map +1 -1
  39. package/dist/adapters/solana/commitment.d.ts +14 -2
  40. package/dist/adapters/solana/commitment.d.ts.map +1 -1
  41. package/dist/adapters/solana/commitment.js +14 -2
  42. package/dist/adapters/solana/commitment.js.map +1 -1
  43. package/dist/adapters/solana/connection.d.ts +11 -2
  44. package/dist/adapters/solana/connection.d.ts.map +1 -1
  45. package/dist/adapters/solana/connection.js +11 -2
  46. package/dist/adapters/solana/connection.js.map +1 -1
  47. package/dist/adapters/solana/index.d.ts +7 -1
  48. package/dist/adapters/solana/index.d.ts.map +1 -1
  49. package/dist/adapters/solana/index.js +7 -1
  50. package/dist/adapters/solana/index.js.map +1 -1
  51. package/dist/adapters/solana/public-key.d.ts +11 -2
  52. package/dist/adapters/solana/public-key.d.ts.map +1 -1
  53. package/dist/adapters/solana/public-key.js +11 -2
  54. package/dist/adapters/solana/public-key.js.map +1 -1
  55. package/dist/config/defaults.d.ts +5 -0
  56. package/dist/config/defaults.d.ts.map +1 -1
  57. package/dist/config/defaults.js +5 -0
  58. package/dist/config/defaults.js.map +1 -1
  59. package/dist/config/env.d.ts +4 -0
  60. package/dist/config/env.d.ts.map +1 -1
  61. package/dist/config/env.js +11 -6
  62. package/dist/config/env.js.map +1 -1
  63. package/dist/config/index.d.ts +5 -0
  64. package/dist/config/index.d.ts.map +1 -1
  65. package/dist/config/index.js +5 -0
  66. package/dist/config/index.js.map +1 -1
  67. package/dist/config/mcp-client-injection.d.ts.map +1 -1
  68. package/dist/config/mcp-client-injection.js +97 -1
  69. package/dist/config/mcp-client-injection.js.map +1 -1
  70. package/dist/config/paths.d.ts +5 -0
  71. package/dist/config/paths.d.ts.map +1 -1
  72. package/dist/config/paths.js +5 -0
  73. package/dist/config/paths.js.map +1 -1
  74. package/dist/config/profiles.d.ts +3 -10
  75. package/dist/config/profiles.d.ts.map +1 -1
  76. package/dist/config/profiles.js +5 -0
  77. package/dist/config/profiles.js.map +1 -1
  78. package/dist/config/schema.d.ts +5 -0
  79. package/dist/config/schema.d.ts.map +1 -1
  80. package/dist/config/schema.js +5 -0
  81. package/dist/config/schema.js.map +1 -1
  82. package/dist/config/secure-config.d.ts +5 -0
  83. package/dist/config/secure-config.d.ts.map +1 -1
  84. package/dist/config/secure-config.js +5 -0
  85. package/dist/config/secure-config.js.map +1 -1
  86. package/dist/config/setup.d.ts +5 -0
  87. package/dist/config/setup.d.ts.map +1 -1
  88. package/dist/config/setup.js +5 -0
  89. package/dist/config/setup.js.map +1 -1
  90. package/dist/config-cli.d.ts +3 -13
  91. package/dist/config-cli.d.ts.map +1 -1
  92. package/dist/config-cli.js +5 -0
  93. package/dist/config-cli.js.map +1 -1
  94. package/dist/core/constants.d.ts +25 -6
  95. package/dist/core/constants.d.ts.map +1 -1
  96. package/dist/core/constants.js +27 -8
  97. package/dist/core/constants.js.map +1 -1
  98. package/dist/core/errors.d.ts +5 -0
  99. package/dist/core/errors.d.ts.map +1 -1
  100. package/dist/core/errors.js +5 -0
  101. package/dist/core/errors.js.map +1 -1
  102. package/dist/core/guards.d.ts +5 -0
  103. package/dist/core/guards.d.ts.map +1 -1
  104. package/dist/core/guards.js +3 -1
  105. package/dist/core/guards.js.map +1 -1
  106. package/dist/core/index.d.ts +7 -1
  107. package/dist/core/index.d.ts.map +1 -1
  108. package/dist/core/index.js +7 -1
  109. package/dist/core/index.js.map +1 -1
  110. package/dist/core/logger.js +1 -1
  111. package/dist/core/logger.js.map +1 -1
  112. package/dist/core/result.d.ts +77 -9
  113. package/dist/core/result.d.ts.map +1 -1
  114. package/dist/core/result.js +68 -9
  115. package/dist/core/result.js.map +1 -1
  116. package/dist/core/types.d.ts +5 -0
  117. package/dist/core/types.d.ts.map +1 -1
  118. package/dist/core/types.js +3 -4
  119. package/dist/core/types.js.map +1 -1
  120. package/dist/index.d.ts +5 -0
  121. package/dist/index.d.ts.map +1 -1
  122. package/dist/index.js +5 -0
  123. package/dist/index.js.map +1 -1
  124. package/dist/payments/facilitator-rpc-fallback.d.ts.map +1 -1
  125. package/dist/payments/facilitator-rpc-fallback.js +95 -0
  126. package/dist/payments/facilitator-rpc-fallback.js.map +1 -1
  127. package/dist/payments/hosted-tool-eligibility.d.ts +1 -0
  128. package/dist/payments/hosted-tool-eligibility.d.ts.map +1 -1
  129. package/dist/payments/hosted-tool-eligibility.js +1 -0
  130. package/dist/payments/hosted-tool-eligibility.js.map +1 -1
  131. package/dist/payments/mcp-session-cache.d.ts +35 -0
  132. package/dist/payments/mcp-session-cache.d.ts.map +1 -0
  133. package/dist/payments/mcp-session-cache.js +83 -0
  134. package/dist/payments/mcp-session-cache.js.map +1 -0
  135. package/dist/payments/monetization-gate.d.ts +5 -0
  136. package/dist/payments/monetization-gate.d.ts.map +1 -1
  137. package/dist/payments/monetization-gate.js +24 -1
  138. package/dist/payments/monetization-gate.js.map +1 -1
  139. package/dist/payments/pricing.d.ts +1 -0
  140. package/dist/payments/pricing.d.ts.map +1 -1
  141. package/dist/payments/pricing.js +66 -8
  142. package/dist/payments/pricing.js.map +1 -1
  143. package/dist/payments/usage-ledger.d.ts +36 -2
  144. package/dist/payments/usage-ledger.d.ts.map +1 -1
  145. package/dist/payments/usage-ledger.js +121 -4
  146. package/dist/payments/usage-ledger.js.map +1 -1
  147. package/dist/payments/x402-paid-call.d.ts +50 -0
  148. package/dist/payments/x402-paid-call.d.ts.map +1 -1
  149. package/dist/payments/x402-paid-call.js +171 -0
  150. package/dist/payments/x402-paid-call.js.map +1 -1
  151. package/dist/policy/default-policies.d.ts +18 -2
  152. package/dist/policy/default-policies.d.ts.map +1 -1
  153. package/dist/policy/default-policies.js +18 -2
  154. package/dist/policy/default-policies.js.map +1 -1
  155. package/dist/policy/index.d.ts +6 -3
  156. package/dist/policy/index.d.ts.map +1 -1
  157. package/dist/policy/index.js +6 -3
  158. package/dist/policy/index.js.map +1 -1
  159. package/dist/policy/local-policy-engine.d.ts +71 -13
  160. package/dist/policy/local-policy-engine.d.ts.map +1 -1
  161. package/dist/policy/local-policy-engine.js +33 -11
  162. package/dist/policy/local-policy-engine.js.map +1 -1
  163. package/dist/policy/permission-checks.d.ts +29 -3
  164. package/dist/policy/permission-checks.d.ts.map +1 -1
  165. package/dist/policy/permission-checks.js +29 -3
  166. package/dist/policy/permission-checks.js.map +1 -1
  167. package/dist/policy/policy-engine.d.ts +22 -2
  168. package/dist/policy/policy-engine.d.ts.map +1 -1
  169. package/dist/policy/policy-engine.js +22 -2
  170. package/dist/policy/policy-engine.js.map +1 -1
  171. package/dist/policy/policy-types.d.ts +55 -5
  172. package/dist/policy/policy-types.d.ts.map +1 -1
  173. package/dist/policy/policy-types.js +8 -1
  174. package/dist/policy/policy-types.js.map +1 -1
  175. package/dist/policy/risk-level.d.ts +32 -3
  176. package/dist/policy/risk-level.d.ts.map +1 -1
  177. package/dist/policy/risk-level.js +32 -3
  178. package/dist/policy/risk-level.js.map +1 -1
  179. package/dist/policy/spending-limits.d.ts +29 -3
  180. package/dist/policy/spending-limits.d.ts.map +1 -1
  181. package/dist/policy/spending-limits.js +29 -3
  182. package/dist/policy/spending-limits.js.map +1 -1
  183. package/dist/premium/activation-manager.d.ts +43 -0
  184. package/dist/premium/activation-manager.d.ts.map +1 -0
  185. package/dist/premium/activation-manager.js +131 -0
  186. package/dist/premium/activation-manager.js.map +1 -0
  187. package/dist/premium/builtin-plugins.d.ts +143 -0
  188. package/dist/premium/builtin-plugins.d.ts.map +1 -0
  189. package/dist/premium/builtin-plugins.js +394 -0
  190. package/dist/premium/builtin-plugins.js.map +1 -0
  191. package/dist/premium/event-store.d.ts +61 -0
  192. package/dist/premium/event-store.d.ts.map +1 -0
  193. package/dist/premium/event-store.js +130 -0
  194. package/dist/premium/event-store.js.map +1 -0
  195. package/dist/premium/index.d.ts +54 -0
  196. package/dist/premium/index.d.ts.map +1 -0
  197. package/dist/premium/index.js +54 -0
  198. package/dist/premium/index.js.map +1 -0
  199. package/dist/premium/manifest-builder.d.ts +65 -0
  200. package/dist/premium/manifest-builder.d.ts.map +1 -0
  201. package/dist/premium/manifest-builder.js +182 -0
  202. package/dist/premium/manifest-builder.js.map +1 -0
  203. package/dist/premium/meme-radar-capabilities.d.ts +38 -0
  204. package/dist/premium/meme-radar-capabilities.d.ts.map +1 -0
  205. package/dist/premium/meme-radar-capabilities.js +306 -0
  206. package/dist/premium/meme-radar-capabilities.js.map +1 -0
  207. package/dist/premium/metrics.d.ts +27 -0
  208. package/dist/premium/metrics.d.ts.map +1 -0
  209. package/dist/premium/metrics.js +65 -0
  210. package/dist/premium/metrics.js.map +1 -0
  211. package/dist/premium/plugin-validator.d.ts +39 -0
  212. package/dist/premium/plugin-validator.d.ts.map +1 -0
  213. package/dist/premium/plugin-validator.js +325 -0
  214. package/dist/premium/plugin-validator.js.map +1 -0
  215. package/dist/premium/private-manifest-loader.d.ts +111 -0
  216. package/dist/premium/private-manifest-loader.d.ts.map +1 -0
  217. package/dist/premium/private-manifest-loader.js +285 -0
  218. package/dist/premium/private-manifest-loader.js.map +1 -0
  219. package/dist/premium/provider-bridge.d.ts +109 -0
  220. package/dist/premium/provider-bridge.d.ts.map +1 -0
  221. package/dist/premium/provider-bridge.js +239 -0
  222. package/dist/premium/provider-bridge.js.map +1 -0
  223. package/dist/premium/session-manager.d.ts +125 -0
  224. package/dist/premium/session-manager.d.ts.map +1 -0
  225. package/dist/premium/session-manager.js +337 -0
  226. package/dist/premium/session-manager.js.map +1 -0
  227. package/dist/premium/stream-broker.d.ts +98 -0
  228. package/dist/premium/stream-broker.d.ts.map +1 -0
  229. package/dist/premium/stream-broker.js +199 -0
  230. package/dist/premium/stream-broker.js.map +1 -0
  231. package/dist/premium/tech-fundamentals-capabilities.d.ts +37 -0
  232. package/dist/premium/tech-fundamentals-capabilities.d.ts.map +1 -0
  233. package/dist/premium/tech-fundamentals-capabilities.js +283 -0
  234. package/dist/premium/tech-fundamentals-capabilities.js.map +1 -0
  235. package/dist/premium/trading-capabilities.d.ts +36 -0
  236. package/dist/premium/trading-capabilities.d.ts.map +1 -0
  237. package/dist/premium/trading-capabilities.js +205 -0
  238. package/dist/premium/trading-capabilities.js.map +1 -0
  239. package/dist/premium/types.d.ts +518 -0
  240. package/dist/premium/types.d.ts.map +1 -0
  241. package/dist/premium/types.js +23 -0
  242. package/dist/premium/types.js.map +1 -0
  243. package/dist/premium/webhook-engine.d.ts +138 -0
  244. package/dist/premium/webhook-engine.d.ts.map +1 -0
  245. package/dist/premium/webhook-engine.js +510 -0
  246. package/dist/premium/webhook-engine.js.map +1 -0
  247. package/dist/prompts/context/sap-agent-context.prompt.d.ts +5 -0
  248. package/dist/prompts/context/sap-agent-context.prompt.d.ts.map +1 -1
  249. package/dist/prompts/context/sap-agent-context.prompt.js +2 -8
  250. package/dist/prompts/context/sap-agent-context.prompt.js.map +1 -1
  251. package/dist/prompts/context/sap-agent-intent-router.prompt.d.ts +14 -0
  252. package/dist/prompts/context/sap-agent-intent-router.prompt.d.ts.map +1 -0
  253. package/dist/prompts/context/sap-agent-intent-router.prompt.js +155 -0
  254. package/dist/prompts/context/sap-agent-intent-router.prompt.js.map +1 -0
  255. package/dist/prompts/context/sap-agent-start.prompt.js +1 -0
  256. package/dist/prompts/context/sap-agent-start.prompt.js.map +1 -1
  257. package/dist/prompts/developer/debug-sap-error.prompt.d.ts +5 -0
  258. package/dist/prompts/developer/debug-sap-error.prompt.d.ts.map +1 -1
  259. package/dist/prompts/developer/debug-sap-error.prompt.js +3 -4
  260. package/dist/prompts/developer/debug-sap-error.prompt.js.map +1 -1
  261. package/dist/prompts/developer/generate-sap-integration.prompt.d.ts +5 -0
  262. package/dist/prompts/developer/generate-sap-integration.prompt.d.ts.map +1 -1
  263. package/dist/prompts/developer/generate-sap-integration.prompt.js +3 -4
  264. package/dist/prompts/developer/generate-sap-integration.prompt.js.map +1 -1
  265. package/dist/prompts/developer/index.d.ts +4 -1
  266. package/dist/prompts/developer/index.d.ts.map +1 -1
  267. package/dist/prompts/developer/index.js +4 -1
  268. package/dist/prompts/developer/index.js.map +1 -1
  269. package/dist/prompts/execution-proof/explain-proof-of-execution.prompt.d.ts +5 -0
  270. package/dist/prompts/execution-proof/explain-proof-of-execution.prompt.d.ts.map +1 -1
  271. package/dist/prompts/execution-proof/explain-proof-of-execution.prompt.js +3 -4
  272. package/dist/prompts/execution-proof/explain-proof-of-execution.prompt.js.map +1 -1
  273. package/dist/prompts/execution-proof/index.d.ts +4 -1
  274. package/dist/prompts/execution-proof/index.d.ts.map +1 -1
  275. package/dist/prompts/execution-proof/index.js +4 -1
  276. package/dist/prompts/execution-proof/index.js.map +1 -1
  277. package/dist/prompts/execution-proof/verify-execution-proof.prompt.d.ts +5 -0
  278. package/dist/prompts/execution-proof/verify-execution-proof.prompt.d.ts.map +1 -1
  279. package/dist/prompts/execution-proof/verify-execution-proof.prompt.js +3 -4
  280. package/dist/prompts/execution-proof/verify-execution-proof.prompt.js.map +1 -1
  281. package/dist/prompts/index.d.ts +4 -1
  282. package/dist/prompts/index.d.ts.map +1 -1
  283. package/dist/prompts/index.js +4 -1
  284. package/dist/prompts/index.js.map +1 -1
  285. package/dist/prompts/payments/create-paid-api.prompt.d.ts +5 -0
  286. package/dist/prompts/payments/create-paid-api.prompt.d.ts.map +1 -1
  287. package/dist/prompts/payments/create-paid-api.prompt.js +3 -4
  288. package/dist/prompts/payments/create-paid-api.prompt.js.map +1 -1
  289. package/dist/prompts/payments/explain-x402-settlement.prompt.d.ts +5 -0
  290. package/dist/prompts/payments/explain-x402-settlement.prompt.d.ts.map +1 -1
  291. package/dist/prompts/payments/explain-x402-settlement.prompt.js +3 -4
  292. package/dist/prompts/payments/explain-x402-settlement.prompt.js.map +1 -1
  293. package/dist/prompts/payments/index.d.ts +4 -1
  294. package/dist/prompts/payments/index.d.ts.map +1 -1
  295. package/dist/prompts/payments/index.js +4 -1
  296. package/dist/prompts/payments/index.js.map +1 -1
  297. package/dist/prompts/register-prompts.d.ts +18 -2
  298. package/dist/prompts/register-prompts.d.ts.map +1 -1
  299. package/dist/prompts/register-prompts.js +21 -3
  300. package/dist/prompts/register-prompts.js.map +1 -1
  301. package/dist/prompts/registry/analyze-sap-agent.prompt.d.ts +5 -0
  302. package/dist/prompts/registry/analyze-sap-agent.prompt.d.ts.map +1 -1
  303. package/dist/prompts/registry/analyze-sap-agent.prompt.js +3 -4
  304. package/dist/prompts/registry/analyze-sap-agent.prompt.js.map +1 -1
  305. package/dist/prompts/registry/index.d.ts +4 -1
  306. package/dist/prompts/registry/index.d.ts.map +1 -1
  307. package/dist/prompts/registry/index.js +4 -1
  308. package/dist/prompts/registry/index.js.map +1 -1
  309. package/dist/prompts/registry/register-sap-agent.prompt.d.ts +5 -0
  310. package/dist/prompts/registry/register-sap-agent.prompt.d.ts.map +1 -1
  311. package/dist/prompts/registry/register-sap-agent.prompt.js +3 -4
  312. package/dist/prompts/registry/register-sap-agent.prompt.js.map +1 -1
  313. package/dist/remote/premium-memory.d.ts +90 -0
  314. package/dist/remote/premium-memory.d.ts.map +1 -0
  315. package/dist/remote/premium-memory.js +161 -0
  316. package/dist/remote/premium-memory.js.map +1 -0
  317. package/dist/remote/premium-routes.d.ts +99 -0
  318. package/dist/remote/premium-routes.d.ts.map +1 -0
  319. package/dist/remote/premium-routes.js +346 -0
  320. package/dist/remote/premium-routes.js.map +1 -0
  321. package/dist/remote/public-home/sections.d.ts.map +1 -1
  322. package/dist/remote/public-home/sections.js +7 -1
  323. package/dist/remote/public-home/sections.js.map +1 -1
  324. package/dist/remote/public-home/types.d.ts +6 -0
  325. package/dist/remote/public-home/types.d.ts.map +1 -1
  326. package/dist/remote/server.d.ts +18 -0
  327. package/dist/remote/server.d.ts.map +1 -1
  328. package/dist/remote/server.js +298 -116
  329. package/dist/remote/server.js.map +1 -1
  330. package/dist/remote/tx-relay.d.ts +42 -0
  331. package/dist/remote/tx-relay.d.ts.map +1 -0
  332. package/dist/remote/tx-relay.js +118 -0
  333. package/dist/remote/tx-relay.js.map +1 -0
  334. package/dist/resources/current/sap-current-config.resource.d.ts +5 -0
  335. package/dist/resources/current/sap-current-config.resource.d.ts.map +1 -1
  336. package/dist/resources/current/sap-current-config.resource.js +2 -5
  337. package/dist/resources/current/sap-current-config.resource.js.map +1 -1
  338. package/dist/resources/execution-proof/index.d.ts +5 -0
  339. package/dist/resources/execution-proof/index.d.ts.map +1 -1
  340. package/dist/resources/execution-proof/index.js +5 -0
  341. package/dist/resources/execution-proof/index.js.map +1 -1
  342. package/dist/resources/execution-proof/sap-execution-record.resource.d.ts +5 -0
  343. package/dist/resources/execution-proof/sap-execution-record.resource.d.ts.map +1 -1
  344. package/dist/resources/execution-proof/sap-execution-record.resource.js +3 -4
  345. package/dist/resources/execution-proof/sap-execution-record.resource.js.map +1 -1
  346. package/dist/resources/index.d.ts +5 -0
  347. package/dist/resources/index.d.ts.map +1 -1
  348. package/dist/resources/index.js +5 -0
  349. package/dist/resources/index.js.map +1 -1
  350. package/dist/resources/memory/index.d.ts +5 -0
  351. package/dist/resources/memory/index.d.ts.map +1 -1
  352. package/dist/resources/memory/index.js +5 -0
  353. package/dist/resources/memory/index.js.map +1 -1
  354. package/dist/resources/memory/sap-memory.resource.d.ts +5 -0
  355. package/dist/resources/memory/sap-memory.resource.d.ts.map +1 -1
  356. package/dist/resources/memory/sap-memory.resource.js +3 -4
  357. package/dist/resources/memory/sap-memory.resource.js.map +1 -1
  358. package/dist/resources/profile/sap-active-profile.resource.d.ts +5 -0
  359. package/dist/resources/profile/sap-active-profile.resource.d.ts.map +1 -1
  360. package/dist/resources/profile/sap-active-profile.resource.js +2 -5
  361. package/dist/resources/profile/sap-active-profile.resource.js.map +1 -1
  362. package/dist/resources/register-resources.d.ts +5 -0
  363. package/dist/resources/register-resources.d.ts.map +1 -1
  364. package/dist/resources/register-resources.js +3 -1
  365. package/dist/resources/register-resources.js.map +1 -1
  366. package/dist/resources/registry/index.d.ts +5 -0
  367. package/dist/resources/registry/index.d.ts.map +1 -1
  368. package/dist/resources/registry/index.js +5 -0
  369. package/dist/resources/registry/index.js.map +1 -1
  370. package/dist/resources/registry/sap-agent.resource.d.ts +5 -0
  371. package/dist/resources/registry/sap-agent.resource.d.ts.map +1 -1
  372. package/dist/resources/registry/sap-agent.resource.js +3 -4
  373. package/dist/resources/registry/sap-agent.resource.js.map +1 -1
  374. package/dist/resources/registry/sap-global-registry.resource.d.ts +18 -4
  375. package/dist/resources/registry/sap-global-registry.resource.d.ts.map +1 -1
  376. package/dist/resources/registry/sap-global-registry.resource.js +18 -4
  377. package/dist/resources/registry/sap-global-registry.resource.js.map +1 -1
  378. package/dist/resources/reputation/index.d.ts +4 -1
  379. package/dist/resources/reputation/index.d.ts.map +1 -1
  380. package/dist/resources/reputation/index.js +4 -1
  381. package/dist/resources/reputation/index.js.map +1 -1
  382. package/dist/resources/reputation/sap-reputation.resource.d.ts +18 -4
  383. package/dist/resources/reputation/sap-reputation.resource.d.ts.map +1 -1
  384. package/dist/resources/reputation/sap-reputation.resource.js +18 -4
  385. package/dist/resources/reputation/sap-reputation.resource.js.map +1 -1
  386. package/dist/resources/tool-schema/index.d.ts +4 -1
  387. package/dist/resources/tool-schema/index.d.ts.map +1 -1
  388. package/dist/resources/tool-schema/index.js +4 -1
  389. package/dist/resources/tool-schema/index.js.map +1 -1
  390. package/dist/resources/tool-schema/sap-tool-schema.resource.d.ts +18 -4
  391. package/dist/resources/tool-schema/sap-tool-schema.resource.d.ts.map +1 -1
  392. package/dist/resources/tool-schema/sap-tool-schema.resource.js +18 -4
  393. package/dist/resources/tool-schema/sap-tool-schema.resource.js.map +1 -1
  394. package/dist/sap/index.d.ts +7 -1
  395. package/dist/sap/index.d.ts.map +1 -1
  396. package/dist/sap/index.js +7 -1
  397. package/dist/sap/index.js.map +1 -1
  398. package/dist/sap/sap-client-manager.d.ts +80 -13
  399. package/dist/sap/sap-client-manager.d.ts.map +1 -1
  400. package/dist/sap/sap-client-manager.js +80 -13
  401. package/dist/sap/sap-client-manager.js.map +1 -1
  402. package/dist/sap/sap-errors.d.ts +22 -3
  403. package/dist/sap/sap-errors.d.ts.map +1 -1
  404. package/dist/sap/sap-errors.js +22 -3
  405. package/dist/sap/sap-errors.js.map +1 -1
  406. package/dist/sap/sap-types.d.ts +75 -6
  407. package/dist/sap/sap-types.d.ts.map +1 -1
  408. package/dist/sap/sap-types.js +11 -1
  409. package/dist/sap/sap-types.js.map +1 -1
  410. package/dist/schemas/common.schema.d.ts +45 -8
  411. package/dist/schemas/common.schema.d.ts.map +1 -1
  412. package/dist/schemas/common.schema.js +45 -8
  413. package/dist/schemas/common.schema.js.map +1 -1
  414. package/dist/schemas/developer.schema.d.ts +22 -3
  415. package/dist/schemas/developer.schema.d.ts.map +1 -1
  416. package/dist/schemas/developer.schema.js +22 -3
  417. package/dist/schemas/developer.schema.js.map +1 -1
  418. package/dist/schemas/execution-proof.schema.d.ts +29 -4
  419. package/dist/schemas/execution-proof.schema.d.ts.map +1 -1
  420. package/dist/schemas/execution-proof.schema.js +29 -4
  421. package/dist/schemas/execution-proof.schema.js.map +1 -1
  422. package/dist/schemas/identity.schema.d.ts +23 -3
  423. package/dist/schemas/identity.schema.d.ts.map +1 -1
  424. package/dist/schemas/identity.schema.js +23 -3
  425. package/dist/schemas/identity.schema.js.map +1 -1
  426. package/dist/schemas/index.d.ts +11 -1
  427. package/dist/schemas/index.d.ts.map +1 -1
  428. package/dist/schemas/index.js +11 -1
  429. package/dist/schemas/index.js.map +1 -1
  430. package/dist/schemas/memory.schema.d.ts +23 -3
  431. package/dist/schemas/memory.schema.d.ts.map +1 -1
  432. package/dist/schemas/memory.schema.js +23 -3
  433. package/dist/schemas/memory.schema.js.map +1 -1
  434. package/dist/schemas/payments.schema.d.ts +24 -3
  435. package/dist/schemas/payments.schema.d.ts.map +1 -1
  436. package/dist/schemas/payments.schema.js +24 -3
  437. package/dist/schemas/payments.schema.js.map +1 -1
  438. package/dist/schemas/registry.schema.d.ts +36 -4
  439. package/dist/schemas/registry.schema.d.ts.map +1 -1
  440. package/dist/schemas/registry.schema.js +36 -4
  441. package/dist/schemas/registry.schema.js.map +1 -1
  442. package/dist/schemas/reputation.schema.d.ts +22 -3
  443. package/dist/schemas/reputation.schema.d.ts.map +1 -1
  444. package/dist/schemas/reputation.schema.js +22 -3
  445. package/dist/schemas/reputation.schema.js.map +1 -1
  446. package/dist/schemas/settlement.schema.d.ts +31 -4
  447. package/dist/schemas/settlement.schema.d.ts.map +1 -1
  448. package/dist/schemas/settlement.schema.js +31 -4
  449. package/dist/schemas/settlement.schema.js.map +1 -1
  450. package/dist/schemas/tool-schema.schema.d.ts +29 -3
  451. package/dist/schemas/tool-schema.schema.d.ts.map +1 -1
  452. package/dist/schemas/tool-schema.schema.js +29 -3
  453. package/dist/schemas/tool-schema.schema.js.map +1 -1
  454. package/dist/schemas/transaction.schema.d.ts +23 -3
  455. package/dist/schemas/transaction.schema.d.ts.map +1 -1
  456. package/dist/schemas/transaction.schema.js +23 -3
  457. package/dist/schemas/transaction.schema.js.map +1 -1
  458. package/dist/security/approval-required.d.ts +19 -2
  459. package/dist/security/approval-required.d.ts.map +1 -1
  460. package/dist/security/approval-required.js +19 -2
  461. package/dist/security/approval-required.js.map +1 -1
  462. package/dist/security/index.d.ts +7 -1
  463. package/dist/security/index.d.ts.map +1 -1
  464. package/dist/security/index.js +7 -1
  465. package/dist/security/index.js.map +1 -1
  466. package/dist/security/private-key-guard.d.ts +18 -2
  467. package/dist/security/private-key-guard.d.ts.map +1 -1
  468. package/dist/security/private-key-guard.js +19 -2
  469. package/dist/security/private-key-guard.js.map +1 -1
  470. package/dist/security/prompt-injection-notes.d.ts +10 -1
  471. package/dist/security/prompt-injection-notes.d.ts.map +1 -1
  472. package/dist/security/prompt-injection-notes.js +10 -1
  473. package/dist/security/prompt-injection-notes.js.map +1 -1
  474. package/dist/security/unsafe-action-guard.d.ts +36 -10
  475. package/dist/security/unsafe-action-guard.d.ts.map +1 -1
  476. package/dist/security/unsafe-action-guard.js +67 -15
  477. package/dist/security/unsafe-action-guard.js.map +1 -1
  478. package/dist/server/create-server.d.ts +18 -3
  479. package/dist/server/create-server.d.ts.map +1 -1
  480. package/dist/server/create-server.js +18 -3
  481. package/dist/server/create-server.js.map +1 -1
  482. package/dist/server/index.d.ts +6 -1
  483. package/dist/server/index.d.ts.map +1 -1
  484. package/dist/server/index.js +6 -1
  485. package/dist/server/index.js.map +1 -1
  486. package/dist/server/register-capabilities.d.ts +17 -2
  487. package/dist/server/register-capabilities.d.ts.map +1 -1
  488. package/dist/server/register-capabilities.js +17 -2
  489. package/dist/server/register-capabilities.js.map +1 -1
  490. package/dist/server/server-metadata.d.ts +35 -1
  491. package/dist/server/server-metadata.d.ts.map +1 -1
  492. package/dist/server/server-metadata.js +36 -2
  493. package/dist/server/server-metadata.js.map +1 -1
  494. package/dist/session/agent-session.d.ts +35 -4
  495. package/dist/session/agent-session.d.ts.map +1 -1
  496. package/dist/session/agent-session.js +35 -4
  497. package/dist/session/agent-session.js.map +1 -1
  498. package/dist/session/delegated-session.d.ts +31 -3
  499. package/dist/session/delegated-session.d.ts.map +1 -1
  500. package/dist/session/delegated-session.js +31 -3
  501. package/dist/session/delegated-session.js.map +1 -1
  502. package/dist/session/index.d.ts +7 -1
  503. package/dist/session/index.d.ts.map +1 -1
  504. package/dist/session/index.js +7 -1
  505. package/dist/session/index.js.map +1 -1
  506. package/dist/session/redis-session-store.d.ts +94 -21
  507. package/dist/session/redis-session-store.d.ts.map +1 -1
  508. package/dist/session/redis-session-store.js +87 -20
  509. package/dist/session/redis-session-store.js.map +1 -1
  510. package/dist/session/session-limits.d.ts +34 -4
  511. package/dist/session/session-limits.d.ts.map +1 -1
  512. package/dist/session/session-limits.js +34 -4
  513. package/dist/session/session-limits.js.map +1 -1
  514. package/dist/session/session-permissions.d.ts +57 -7
  515. package/dist/session/session-permissions.d.ts.map +1 -1
  516. package/dist/session/session-permissions.js +57 -7
  517. package/dist/session/session-permissions.js.map +1 -1
  518. package/dist/session/session-store.d.ts +9 -1
  519. package/dist/session/session-store.d.ts.map +1 -1
  520. package/dist/session/session-store.js +18 -3
  521. package/dist/session/session-store.js.map +1 -1
  522. package/dist/session/session-types.d.ts +33 -4
  523. package/dist/session/session-types.d.ts.map +1 -1
  524. package/dist/session/session-types.js +9 -1
  525. package/dist/session/session-types.js.map +1 -1
  526. package/dist/signer/index.d.ts +7 -1
  527. package/dist/signer/index.d.ts.map +1 -1
  528. package/dist/signer/index.js +7 -1
  529. package/dist/signer/index.js.map +1 -1
  530. package/dist/signer/load-keypair.d.ts +25 -4
  531. package/dist/signer/load-keypair.d.ts.map +1 -1
  532. package/dist/signer/load-keypair.js +25 -4
  533. package/dist/signer/load-keypair.js.map +1 -1
  534. package/dist/signer/local-keypair-signer.d.ts +16 -2
  535. package/dist/signer/local-keypair-signer.d.ts.map +1 -1
  536. package/dist/signer/local-keypair-signer.js +16 -2
  537. package/dist/signer/local-keypair-signer.js.map +1 -1
  538. package/dist/signer/signer-resolver.d.ts +19 -2
  539. package/dist/signer/signer-resolver.d.ts.map +1 -1
  540. package/dist/signer/signer-resolver.js +26 -3
  541. package/dist/signer/signer-resolver.js.map +1 -1
  542. package/dist/signer/signer-types.d.ts +47 -5
  543. package/dist/signer/signer-types.d.ts.map +1 -1
  544. package/dist/signer/signer-types.js +13 -1
  545. package/dist/signer/signer-types.js.map +1 -1
  546. package/dist/tools/agent-start-tool.js +20 -1
  547. package/dist/tools/agent-start-tool.js.map +1 -1
  548. package/dist/tools/client-sdk-tools.d.ts.map +1 -1
  549. package/dist/tools/client-sdk-tools.js +27 -2
  550. package/dist/tools/client-sdk-tools.js.map +1 -1
  551. package/dist/tools/estimate-tool-cost.d.ts +13 -0
  552. package/dist/tools/estimate-tool-cost.d.ts.map +1 -0
  553. package/dist/tools/estimate-tool-cost.js +139 -0
  554. package/dist/tools/estimate-tool-cost.js.map +1 -0
  555. package/dist/tools/index.d.ts +7 -0
  556. package/dist/tools/index.d.ts.map +1 -1
  557. package/dist/tools/index.js +9 -0
  558. package/dist/tools/index.js.map +1 -1
  559. package/dist/tools/magicblock-tools.d.ts +25 -0
  560. package/dist/tools/magicblock-tools.d.ts.map +1 -1
  561. package/dist/tools/magicblock-tools.js +116 -8
  562. package/dist/tools/magicblock-tools.js.map +1 -1
  563. package/dist/tools/perp-tools.d.ts +39 -0
  564. package/dist/tools/perp-tools.d.ts.map +1 -0
  565. package/dist/tools/perp-tools.js +1110 -0
  566. package/dist/tools/perp-tools.js.map +1 -0
  567. package/dist/tools/premium-tools.d.ts +8 -0
  568. package/dist/tools/premium-tools.d.ts.map +1 -0
  569. package/dist/tools/premium-tools.js +1096 -0
  570. package/dist/tools/premium-tools.js.map +1 -0
  571. package/dist/tools/quick-context-tool.d.ts +16 -0
  572. package/dist/tools/quick-context-tool.d.ts.map +1 -0
  573. package/dist/tools/quick-context-tool.js +228 -0
  574. package/dist/tools/quick-context-tool.js.map +1 -0
  575. package/dist/tools/register-tools.d.ts.map +1 -1
  576. package/dist/tools/register-tools.js +14 -0
  577. package/dist/tools/register-tools.js.map +1 -1
  578. package/dist/tools/sap-sdk-tools.d.ts.map +1 -1
  579. package/dist/tools/sap-sdk-tools.js +42 -32
  580. package/dist/tools/sap-sdk-tools.js.map +1 -1
  581. package/dist/tools/skills-tools.d.ts +6 -0
  582. package/dist/tools/skills-tools.d.ts.map +1 -1
  583. package/dist/tools/skills-tools.js +5 -4
  584. package/dist/tools/skills-tools.js.map +1 -1
  585. package/dist/tools/x402-paid-call-tool.js +2 -2
  586. package/dist/tools/x402-paid-call-tool.js.map +1 -1
  587. package/dist/transports/index.d.ts +6 -1
  588. package/dist/transports/index.d.ts.map +1 -1
  589. package/dist/transports/index.js +6 -1
  590. package/dist/transports/index.js.map +1 -1
  591. package/dist/transports/stdio.d.ts +17 -5
  592. package/dist/transports/stdio.d.ts.map +1 -1
  593. package/dist/transports/stdio.js +17 -5
  594. package/dist/transports/stdio.js.map +1 -1
  595. package/dist/tui/wizard-save.d.ts +88 -8
  596. package/dist/tui/wizard-save.d.ts.map +1 -1
  597. package/dist/tui/wizard-save.js +77 -8
  598. package/dist/tui/wizard-save.js.map +1 -1
  599. package/docs/06_PAYMENTS_X402_AND_PAYSH.md +3 -3
  600. package/docs/07_ENDPOINTS_AND_CLIENTS.md +4 -1
  601. package/docs/14_DESKTOP_WIZARD_RELEASE.md +3 -3
  602. package/docs/16_SAP_AGENT_IDENTITY_PIPELINE.md +6 -0
  603. package/docs/18_PREMIUM_PLUGIN_RUNTIME.md +108 -0
  604. package/docs/BRANCH_AND_CI.md +67 -0
  605. package/docs/README.md +12 -0
  606. package/package.json +8 -9
  607. package/server.json +3 -3
  608. package/skills/sap-agent-registry/SKILL.md +6 -0
  609. package/skills/sap-mcp/SKILL.md +27 -4
  610. package/skills/sap-mcp/TOOL_REFERENCE.md +4 -1
  611. package/skills/sap-payments-x402/SKILL.md +22 -8
@@ -0,0 +1 @@
1
+ {"version":3,"file":"premium-tools.js","sourceRoot":"","sources":["../../src/tools/premium-tools.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * @module quick-context-tool
3
+ * @description Single-call bootstrap tool that aggregates tools summary, pricing tiers,
4
+ * premium capabilities, and skills list into one compact response to reduce agent
5
+ * bootstrap from 5+ tool calls to 1.
6
+ */
7
+ import type { Server } from '@modelcontextprotocol/sdk/server/index.js';
8
+ import type { SapMcpContext } from '../core/types.js';
9
+ /**
10
+ * @name registerQuickContextTool
11
+ * @description Registers the free sap_quick_context bootstrap aggregation tool.
12
+ * @param server - MCP server receiving the tool definition and handler.
13
+ * @param context - Shared runtime context with SAP client, signer, policy, and configuration.
14
+ */
15
+ export declare function registerQuickContextTool(server: Server, context: SapMcpContext): void;
16
+ //# sourceMappingURL=quick-context-tool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quick-context-tool.d.ts","sourceRoot":"","sources":["../../src/tools/quick-context-tool.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAIxE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAmDtD;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI,CAyDrF"}
@@ -0,0 +1,228 @@
1
+ /**
2
+ * @module quick-context-tool
3
+ * @description Single-call bootstrap tool that aggregates tools summary, pricing tiers,
4
+ * premium capabilities, and skills list into one compact response to reduce agent
5
+ * bootstrap from 5+ tool calls to 1.
6
+ */
7
+ import { registerTool } from '../adapters/mcp/sdk-compat.js';
8
+ import { createStructuredJsonResponse } from '../adapters/mcp/tool-response.js';
9
+ import { MCP_SERVER_VERSION } from '../core/constants.js';
10
+ import { listPremiumPlugins, publicPremiumProviderStatus } from '../premium/index.js';
11
+ import { listBundledSkillNames } from './skills-tools.js';
12
+ import { CAPABILITIES } from '../server/server-metadata.js';
13
+ const ALL_SECTIONS = [
14
+ 'version',
15
+ 'tools',
16
+ 'pricing',
17
+ 'premium',
18
+ 'skills',
19
+ 'nextAction',
20
+ ];
21
+ const DEFAULT_MAX_CHARS = 4000;
22
+ /**
23
+ * @name registerQuickContextTool
24
+ * @description Registers the free sap_quick_context bootstrap aggregation tool.
25
+ * @param server - MCP server receiving the tool definition and handler.
26
+ * @param context - Shared runtime context with SAP client, signer, policy, and configuration.
27
+ */
28
+ export function registerQuickContextTool(server, context) {
29
+ registerTool(server, 'sap_quick_context', {
30
+ 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.',
32
+ inputSchema: {
33
+ type: 'object',
34
+ properties: {
35
+ include: {
36
+ type: 'array',
37
+ items: { type: 'string' },
38
+ description: 'Optional subset of section names to include (version, tools, pricing, premium, skills, nextAction). When omitted, all sections are returned.',
39
+ },
40
+ compact: {
41
+ type: 'boolean',
42
+ description: 'When true (default), the summary string is kept compact. When false, a more readable multi-line summary is returned.',
43
+ },
44
+ maxChars: {
45
+ type: 'number',
46
+ description: 'Maximum character length for the summary string. Defaults to 4000. The summary is truncated if it exceeds this length.',
47
+ },
48
+ },
49
+ },
50
+ outputSchema: {
51
+ type: 'object',
52
+ properties: {
53
+ success: { type: 'boolean', description: 'Whether the quick context summary was generated.' },
54
+ version: { type: 'string', description: 'SAP MCP server version.' },
55
+ totalTools: { type: 'number', description: 'Total number of registered MCP tools.' },
56
+ toolsByCategory: { type: 'object', description: 'Tool counts by category (sap, sns, agentKit, premium, etc.).' },
57
+ pricingTiers: { type: 'array', description: 'Pricing tier names available on the hosted server.', items: { type: 'string' } },
58
+ premiumPlugins: { type: 'number', description: 'Number of discoverable premium plugins.' },
59
+ premiumCapabilities: { type: 'number', description: 'Number of premium capabilities across all plugins.' },
60
+ premiumProvidersReady: { type: 'number', description: 'Number of premium providers with configured environment variables.' },
61
+ skills: { type: 'array', description: 'Bundled skill names available via sap_skills_bundle.', items: { type: 'string' } },
62
+ summary: { type: 'string', description: 'Compact markdown-like summary string suitable for agent context loading.' },
63
+ nextAction: { type: 'string', description: 'Concrete next action for the agent after loading this context.' },
64
+ truncated: { type: 'boolean', description: 'Whether the summary was truncated to fit within maxChars.' },
65
+ },
66
+ required: ['success', 'version', 'totalTools', 'toolsByCategory', 'pricingTiers', 'premiumPlugins', 'premiumCapabilities', 'premiumProvidersReady', 'skills', 'summary', 'nextAction', 'truncated'],
67
+ },
68
+ annotations: {
69
+ readOnlyHint: true,
70
+ destructiveHint: false,
71
+ idempotentHint: true,
72
+ openWorldHint: false,
73
+ },
74
+ }, async (input) => {
75
+ const parsed = parseQuickContextInput(input);
76
+ const payload = buildQuickContextPayload(context, parsed);
77
+ return createStructuredJsonResponse(payload);
78
+ });
79
+ }
80
+ /**
81
+ * @name parseQuickContextInput
82
+ * @description Narrows unknown MCP tool input into a typed QuickContextInput.
83
+ * @param input - Raw tool input from the MCP caller.
84
+ * @returns Parsed quick context input with defaults applied.
85
+ */
86
+ function parseQuickContextInput(input) {
87
+ const record = input && typeof input === 'object' && !Array.isArray(input)
88
+ ? input
89
+ : {};
90
+ const includeRaw = record.include;
91
+ const include = Array.isArray(includeRaw)
92
+ ? includeRaw.filter((item) => typeof item === 'string')
93
+ : [];
94
+ const compact = typeof record.compact === 'boolean' ? record.compact : true;
95
+ const maxChars = typeof record.maxChars === 'number' && record.maxChars > 0
96
+ ? Math.floor(record.maxChars)
97
+ : DEFAULT_MAX_CHARS;
98
+ return { include, compact, maxChars };
99
+ }
100
+ /**
101
+ * @name resolveSections
102
+ * @description Determines which sections to include based on the requested include list.
103
+ * @param requested - Optional list of section names; empty means all sections.
104
+ * @returns Set of section identifiers to include.
105
+ */
106
+ function resolveSections(requested) {
107
+ if (requested.length === 0) {
108
+ return new Set(ALL_SECTIONS);
109
+ }
110
+ const validSections = new Set(ALL_SECTIONS);
111
+ const resolved = new Set();
112
+ for (const raw of requested) {
113
+ const lower = raw.toLowerCase();
114
+ if (validSections.has(lower)) {
115
+ resolved.add(lower);
116
+ }
117
+ }
118
+ return resolved.size > 0 ? resolved : new Set(ALL_SECTIONS);
119
+ }
120
+ /**
121
+ * @name buildQuickContextPayload
122
+ * @description Assembles the structured quick context payload from server metadata, pricing, premium, and skills.
123
+ * @param context - Shared runtime SAP MCP context.
124
+ * @param input - Parsed tool input with include, compact, and maxChars.
125
+ * @returns Structured quick context payload.
126
+ */
127
+ function buildQuickContextPayload(context, input) {
128
+ const sections = resolveSections(input.include);
129
+ const plugins = listPremiumPlugins();
130
+ const providerStatus = publicPremiumProviderStatus();
131
+ const premiumCapabilitiesCount = plugins.reduce((sum, plugin) => sum + plugin.capabilities.length, 0);
132
+ const premiumProvidersReady = Object.values(providerStatus).filter(Boolean).length;
133
+ const skills = listBundledSkillNames();
134
+ const toolsByCategory = CAPABILITIES.tools.categories;
135
+ const totalTools = CAPABILITIES.tools.count;
136
+ const pricingTiers = [
137
+ 'free=$0',
138
+ 'read-premium=$0.001',
139
+ 'builder=$0.008',
140
+ 'value-action=$0.04',
141
+ 'heavy-value=$0.15',
142
+ 'batch=clamped sum',
143
+ ];
144
+ const summary = buildSummaryString({
145
+ sections,
146
+ compact: input.compact,
147
+ maxChars: input.maxChars,
148
+ version: MCP_SERVER_VERSION,
149
+ totalTools,
150
+ toolsByCategory,
151
+ pricingTiers,
152
+ premiumPlugins: plugins.length,
153
+ premiumCapabilities: premiumCapabilitiesCount,
154
+ premiumProvidersReady,
155
+ skills,
156
+ serverMode: context.config.mode,
157
+ });
158
+ return {
159
+ success: true,
160
+ version: MCP_SERVER_VERSION,
161
+ totalTools,
162
+ toolsByCategory,
163
+ pricingTiers,
164
+ premiumPlugins: plugins.length,
165
+ premiumCapabilities: premiumCapabilitiesCount,
166
+ premiumProvidersReady,
167
+ skills,
168
+ summary: summary.text,
169
+ nextAction: buildNextAction(sections),
170
+ truncated: summary.truncated,
171
+ };
172
+ }
173
+ /**
174
+ * @name buildSummaryString
175
+ * @description Builds a compact markdown-like summary and truncates it to maxChars.
176
+ * @param parts - Summary content inputs.
177
+ * @returns Object with the summary text and a truncated flag.
178
+ */
179
+ function buildSummaryString(parts) {
180
+ const separator = parts.compact ? ' | ' : '\n';
181
+ const lines = [];
182
+ if (parts.sections.has('version')) {
183
+ lines.push(`**SAP MCP v${parts.version}** (mode: ${parts.serverMode})`);
184
+ }
185
+ if (parts.sections.has('tools')) {
186
+ const categoryLines = Object.entries(parts.toolsByCategory)
187
+ .map(([category, count]) => `${category}:${count}`)
188
+ .join(', ');
189
+ lines.push(`Tools: ${parts.totalTools} total (${categoryLines})`);
190
+ }
191
+ if (parts.sections.has('pricing')) {
192
+ lines.push(`Pricing tiers: ${parts.pricingTiers.join(', ')}`);
193
+ }
194
+ if (parts.sections.has('premium')) {
195
+ lines.push(`Premium: ${parts.premiumPlugins} plugins, ${parts.premiumCapabilities} capabilities, ${parts.premiumProvidersReady} providers ready`);
196
+ }
197
+ if (parts.sections.has('skills')) {
198
+ const skillsList = parts.skills.length > 0 ? parts.skills.join(', ') : 'none';
199
+ lines.push(`Skills: ${skillsList}`);
200
+ }
201
+ if (parts.sections.has('nextAction')) {
202
+ lines.push(`Next: ${buildNextAction(parts.sections)}`);
203
+ }
204
+ const fullText = lines.join(separator);
205
+ const truncated = fullText.length > parts.maxChars;
206
+ const text = truncated
207
+ ? `${fullText.slice(0, Math.max(0, parts.maxChars - 3))}...`
208
+ : fullText;
209
+ return { text, truncated };
210
+ }
211
+ /**
212
+ * @name buildNextAction
213
+ * @description Returns concrete next-action guidance for the agent based on included sections.
214
+ * @param sections - Set of sections included in the response.
215
+ * @returns Next action string.
216
+ */
217
+ function buildNextAction(sections) {
218
+ if (!sections.has('nextAction')) {
219
+ return 'Call sap_agent_start for the full startup playbook, then sap_skills_bundle with includeContents:true to load bundled skills.';
220
+ }
221
+ return [
222
+ 'Call sap_agent_start for the full startup playbook.',
223
+ 'Then sap_skills_bundle with includeContents:true to load bundled skills.',
224
+ 'Use sap_estimate_tool_cost before any paid tool call.',
225
+ 'Use sap_payments_readiness before any write or paid workflow.',
226
+ ].join(' ');
227
+ }
228
+ //# sourceMappingURL=quick-context-tool.js.map
@@ -0,0 +1 @@
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;AAgBtD;;;;;;;GAOG;AACH,wBAAsB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CA+CzF"}
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;AAoBtD;;;;;;;GAOG;AACH,wBAAsB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CA6DzF"}
@@ -11,6 +11,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
13
  import { registerAgentStartTool } from './agent-start-tool.js';
14
+ import { registerEstimateToolCost } from './estimate-tool-cost.js';
15
+ import { registerQuickContextTool } from './quick-context-tool.js';
16
+ import { registerPremiumTools } from './premium-tools.js';
17
+ import { registerPerpTools } from './perp-tools.js';
14
18
  /**
15
19
  * Register all tools with the MCP server.
16
20
  *
@@ -48,6 +52,16 @@ export async function registerTools(server, context) {
48
52
  // Register the free agent bootstrap tool before skill tools so runtimes have
49
53
  // a single obvious entry point after tools/list.
50
54
  registerAgentStartTool(server, context);
55
+ // Register the free pre-call cost estimator so agents can plan USDC spending.
56
+ registerEstimateToolCost(server, context);
57
+ // Register the free single-call bootstrap context aggregator so agents can
58
+ // load version, tool counts, pricing tiers, premium capabilities, and skills
59
+ // in one tool call instead of 5+ separate discovery calls.
60
+ registerQuickContextTool(server, context);
61
+ // Register premium plugin/runtime discovery and session-planning tools.
62
+ registerPremiumTools(server, context);
63
+ // Register perp trading and chart analysis tools (Adrena + DexScreener + DeFiLlama).
64
+ registerPerpTools(server, context);
51
65
  // Register bundled agent skill pack tools.
52
66
  registerSkillsTools(server, context);
53
67
  // Register MagicBlock tools (20 tools: ER Router, Private Payments, VRF).
@@ -1 +1 @@
1
- {"version":3,"file":"register-tools.js","sourceRoot":"","sources":["../../src/tools/register-tools.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAElE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAE/D;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,MAAc,EAAE,OAAsB;IACxE,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;IAElC,IAAI,OAAO,CAAC,GAAG,CAAC,4BAA4B,KAAK,MAAM,EAAE,CAAC;QACxD,wBAAwB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC1C,MAAM,CAAC,KAAK,CAAC,kCAAkC,EAAE,EAAE,KAAK,EAAE,kBAAkB,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;QAC/F,OAAO;IACT,CAAC;IAED,wEAAwE;IACxE,mBAAmB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAErC,mEAAmE;IACnE,mBAAmB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAErC,4EAA4E;IAC5E,mBAAmB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAErC,uEAAuE;IACvE,MAAM,sBAAsB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAE9C,6BAA6B;IAC7B,wBAAwB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAE1C,8DAA8D;IAC9D,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEnC,0FAA0F;IAC1F,0EAA0E;IAC1E,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;QACtE,wBAAwB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5C,CAAC;IAED,gFAAgF;IAChF,oBAAoB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEtC,6EAA6E;IAC7E,iDAAiD;IACjD,sBAAsB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAExC,2CAA2C;IAC3C,mBAAmB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAErC,0EAA0E;IAC1E,uBAAuB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEzC,MAAM,CAAC,KAAK,CAAC,kBAAkB,EAAE,EAAE,KAAK,EAAE,kBAAkB,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;AACjF,CAAC"}
1
+ {"version":3,"file":"register-tools.js","sourceRoot":"","sources":["../../src/tools/register-tools.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"sap-sdk-tools.d.ts","sourceRoot":"","sources":["../../src/tools/sap-sdk-tools.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAInE,OAAO,EAaL,KAAK,iBAAiB,EACtB,KAAK,eAAe,EAOrB,MAAM,2CAA2C,CAAC;AAKnD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAWtD,KAAK,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAoB1C,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8BpC,CAAC;AAEX,eAAO,MAAM,mCAAmC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyEtC,CAAC;AAEX,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwClC,CAAC;AAEX,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwChC,CAAC;AAqtCX;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,UAAU,GAAG,iBAAiB,CAW3E;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,UAAU,GAAG,eAAe,CAWvE;AA+1DD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,GAAG,IAAI,CAkBjF"}
1
+ {"version":3,"file":"sap-sdk-tools.d.ts","sourceRoot":"","sources":["../../src/tools/sap-sdk-tools.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAInE,OAAO,EAaL,KAAK,iBAAiB,EACtB,KAAK,eAAe,EAOrB,MAAM,2CAA2C,CAAC;AAKnD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAYtD,KAAK,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAoB1C,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8BpC,CAAC;AAEX,eAAO,MAAM,mCAAmC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyEtC,CAAC;AAEX,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwClC,CAAC;AAEX,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwChC,CAAC;AAmuCX;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,UAAU,GAAG,iBAAiB,CAW3E;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,UAAU,GAAG,eAAe,CAWvE;AA+1DD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,GAAG,IAAI,CAkBjF"}
@@ -14,6 +14,7 @@ import { registerTool } from '../adapters/mcp/sdk-compat.js';
14
14
  import { getSapClient, isSapClientInitialized } from '../sap/sap-client-manager.js';
15
15
  import { logger } from '../core/logger.js';
16
16
  import { DEFAULT_SAP_PROGRAM_ID, SAP_PROTOCOL_TREASURY, SAP_REGISTRATION_FEE_LAMPORTS, } from '../core/constants.js';
17
+ import { classifyTool } from '../payments/pricing.js';
17
18
  const ESCROW_AMOUNT_DESCRIPTION = 'Amount in the escrow token smallest unit: lamports for SOL, micro-USDC for USDC, or base units for the configured SPL token.';
18
19
  const ESCROW_V2_COSIGNED_MODE = 1;
19
20
  const ESCROW_V2_DISPUTE_WINDOW_MODE = 2;
@@ -397,8 +398,6 @@ const escrowV2CloseBuilderInputSchema = {
397
398
  description: 'Optional escrow nonce as a decimal string. Defaults to 0.',
398
399
  },
399
400
  };
400
- const DIRECTORY_CACHE_TTL_MS = 10_000;
401
- const directoryPageCache = new Map();
402
401
  const directoryPageInflight = new Map();
403
402
  /**
404
403
  * @name jsonReplacer
@@ -422,9 +421,29 @@ function jsonReplacer(_key, value) {
422
421
  /**
423
422
  * @name ok
424
423
  * @description Wraps a successful tool result in the MCP text response shape.
424
+ * Includes hostedPricing metadata so agents know the tier and estimated cost.
425
425
  */
426
- function ok(payload) {
427
- return createTextResponse(JSON.stringify({ success: true, ...asObjectPayload(payload) }, jsonReplacer, 2));
426
+ function ok(payload, toolName) {
427
+ const pricingMeta = toolName ? buildHostedPricingMeta(toolName) : undefined;
428
+ return createTextResponse(JSON.stringify({ success: true, ...(pricingMeta ? { hostedPricing: pricingMeta } : {}), ...asObjectPayload(payload) }, jsonReplacer, 2));
429
+ }
430
+ /**
431
+ * @name buildHostedPricingMeta
432
+ * @description Returns a human-readable pricing hint for a SAP SDK tool.
433
+ * Uses the same classifyTool function as the hosted monetization gate.
434
+ */
435
+ function buildHostedPricingMeta(toolName) {
436
+ const tier = classifyTool(toolName);
437
+ if (tier === 'free')
438
+ return 'free — no x402 payment required';
439
+ const prices = {
440
+ 'read-premium': '~$0.001',
441
+ 'builder': '~$0.008',
442
+ 'value-action': '~$0.09 standard / ~$0.15 heavy',
443
+ 'batch': '~$0.09+',
444
+ };
445
+ const price = prices[tier] ?? '~$0.001';
446
+ return `${tier} tier — estimated ${price} USD per call. Use sap_estimate_tool_cost for exact pricing.`;
428
447
  }
429
448
  /**
430
449
  * @name asObjectPayload
@@ -675,6 +694,11 @@ async function buildAgentDirectoryPage(client, options) {
675
694
  const agents = options.view === 'compact' ? page.map(compactAgentDirectoryEntry) : page;
676
695
  return {
677
696
  source: 'program.account.agentAccount.all + program.account.protocolIndex.all',
697
+ freshness: {
698
+ status: 'fresh',
699
+ cache: 'disabled',
700
+ fetchedAt: new Date().toISOString(),
701
+ },
678
702
  overview,
679
703
  filters: {
680
704
  includeInactive: options.includeInactive,
@@ -710,37 +734,22 @@ async function buildAgentDirectoryPage(client, options) {
710
734
  agentGuidance: directoryAgentGuidance({ hasMore, nextCursor, filters: options }),
711
735
  };
712
736
  }
713
- async function getCachedAgentDirectoryPage(client, options) {
737
+ async function getFreshAgentDirectoryPage(client, options) {
714
738
  const cacheKey = stableJson(options);
715
- const now = Date.now();
716
- const cached = directoryPageCache.get(cacheKey);
717
- if (cached && cached.expiresAt > now) {
718
- return {
719
- ...cached.page,
720
- cache: {
721
- status: 'hit',
722
- ttlMs: Math.max(0, cached.expiresAt - now),
723
- key: cacheKey.slice(0, 24),
724
- },
725
- };
726
- }
727
739
  const inflight = directoryPageInflight.get(cacheKey);
728
740
  if (inflight) {
729
741
  const page = await inflight;
730
742
  return {
731
743
  ...page,
732
- cache: {
733
- status: 'joined_inflight',
734
- ttlMs: DIRECTORY_CACHE_TTL_MS,
744
+ freshness: {
745
+ ...page.freshness,
746
+ status: 'fresh_joined_inflight',
747
+ cache: 'disabled',
735
748
  key: cacheKey.slice(0, 24),
736
749
  },
737
750
  };
738
751
  }
739
752
  const load = buildAgentDirectoryPage(client, options)
740
- .then((page) => {
741
- directoryPageCache.set(cacheKey, { expiresAt: Date.now() + DIRECTORY_CACHE_TTL_MS, page });
742
- return page;
743
- })
744
753
  .finally(() => {
745
754
  directoryPageInflight.delete(cacheKey);
746
755
  });
@@ -748,9 +757,10 @@ async function getCachedAgentDirectoryPage(client, options) {
748
757
  const page = await load;
749
758
  return {
750
759
  ...page,
751
- cache: {
752
- status: 'miss',
753
- ttlMs: DIRECTORY_CACHE_TTL_MS,
760
+ freshness: {
761
+ ...page.freshness,
762
+ status: 'fresh',
763
+ cache: 'disabled',
754
764
  key: cacheKey.slice(0, 24),
755
765
  },
756
766
  };
@@ -780,7 +790,7 @@ async function buildSapAgentContext(input, client) {
780
790
  }
781
791
  const directory = wallet
782
792
  ? null
783
- : await getCachedAgentDirectoryPage(client, {
793
+ : await getFreshAgentDirectoryPage(client, {
784
794
  includeInactive: false,
785
795
  protocol: undefined,
786
796
  capability: undefined,
@@ -2073,7 +2083,7 @@ function registerSapTool(server, client, definition) {
2073
2083
  inputSchema: definition.inputSchema,
2074
2084
  }, async (rawInput) => {
2075
2085
  try {
2076
- return ok(await definition.handler(asRecord(rawInput), client));
2086
+ return ok(await definition.handler(asRecord(rawInput), client), definition.name);
2077
2087
  }
2078
2088
  catch (error) {
2079
2089
  logger.error(`SAP SDK tool failed: ${definition.name}`, { error });
@@ -2269,7 +2279,7 @@ const discoveryTools = [
2269
2279
  const limit = Math.max(1, Math.min(optionalNumber(input, 'limit') ?? 50, 500));
2270
2280
  const capability = optionalString(input, 'capability');
2271
2281
  const capabilities = parseOptionalStringArray(input, 'capabilities');
2272
- return getCachedAgentDirectoryPage(client, {
2282
+ return getFreshAgentDirectoryPage(client, {
2273
2283
  includeInactive: input.includeInactive === true,
2274
2284
  protocol: optionalString(input, 'protocol'),
2275
2285
  capability,
@@ -2294,7 +2304,7 @@ const discoveryTools = [
2294
2304
  handler: async (input, client) => {
2295
2305
  const limit = Math.max(1, Math.min(optionalNumber(input, 'limit') ?? 20, 500));
2296
2306
  const capability = optionalString(input, 'capability');
2297
- return getCachedAgentDirectoryPage(client, {
2307
+ return getFreshAgentDirectoryPage(client, {
2298
2308
  includeInactive: input.includeInactive === true,
2299
2309
  protocol: optionalString(input, 'protocol'),
2300
2310
  capability,
@@ -2319,7 +2329,7 @@ const discoveryTools = [
2319
2329
  handler: async (input, client) => {
2320
2330
  const limit = Math.max(1, Math.min(optionalNumber(input, 'limit') ?? 100, 500));
2321
2331
  const capability = optionalString(input, 'capability');
2322
- return getCachedAgentDirectoryPage(client, {
2332
+ return getFreshAgentDirectoryPage(client, {
2323
2333
  includeInactive: input.includeInactive === true,
2324
2334
  protocol: optionalString(input, 'protocol'),
2325
2335
  capability,