@oobe-protocol-labs/synapse-client-sdk 1.2.2 → 2.0.0

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 (763) hide show
  1. package/CHANGELOG.md +176 -0
  2. package/README.md +230 -17
  3. package/dist/cjs/ai/actions/blinks.d.ts +158 -0
  4. package/dist/cjs/ai/actions/blinks.d.ts.map +1 -0
  5. package/dist/cjs/ai/actions/blinks.js +232 -0
  6. package/dist/cjs/ai/actions/blinks.js.map +1 -0
  7. package/dist/cjs/ai/actions/index.d.ts +51 -0
  8. package/dist/cjs/ai/actions/index.d.ts.map +1 -0
  9. package/dist/cjs/ai/actions/index.js +61 -0
  10. package/dist/cjs/ai/actions/index.js.map +1 -0
  11. package/dist/cjs/ai/actions/server.d.ts +188 -0
  12. package/dist/cjs/ai/actions/server.d.ts.map +1 -0
  13. package/dist/cjs/ai/actions/server.js +404 -0
  14. package/dist/cjs/ai/actions/server.js.map +1 -0
  15. package/dist/cjs/ai/actions/types.d.ts +251 -0
  16. package/dist/cjs/ai/actions/types.d.ts.map +1 -0
  17. package/dist/cjs/ai/actions/types.js +16 -0
  18. package/dist/cjs/ai/actions/types.js.map +1 -0
  19. package/dist/cjs/ai/gateway/index.d.ts +1 -0
  20. package/dist/cjs/ai/gateway/index.d.ts.map +1 -1
  21. package/dist/cjs/ai/gateway/index.js +6 -1
  22. package/dist/cjs/ai/gateway/index.js.map +1 -1
  23. package/dist/cjs/ai/gateway/monetize.d.ts +222 -0
  24. package/dist/cjs/ai/gateway/monetize.d.ts.map +1 -0
  25. package/dist/cjs/ai/gateway/monetize.js +316 -0
  26. package/dist/cjs/ai/gateway/monetize.js.map +1 -0
  27. package/dist/cjs/ai/index.d.ts +7 -2
  28. package/dist/cjs/ai/index.d.ts.map +1 -1
  29. package/dist/cjs/ai/index.js +78 -2
  30. package/dist/cjs/ai/index.js.map +1 -1
  31. package/dist/cjs/ai/intents/executor.d.ts +102 -0
  32. package/dist/cjs/ai/intents/executor.d.ts.map +1 -0
  33. package/dist/cjs/ai/intents/executor.js +335 -0
  34. package/dist/cjs/ai/intents/executor.js.map +1 -0
  35. package/dist/cjs/ai/intents/index.d.ts +52 -0
  36. package/dist/cjs/ai/intents/index.d.ts.map +1 -0
  37. package/dist/cjs/ai/intents/index.js +60 -0
  38. package/dist/cjs/ai/intents/index.js.map +1 -0
  39. package/dist/cjs/ai/intents/parser.d.ts +106 -0
  40. package/dist/cjs/ai/intents/parser.d.ts.map +1 -0
  41. package/dist/cjs/ai/intents/parser.js +189 -0
  42. package/dist/cjs/ai/intents/parser.js.map +1 -0
  43. package/dist/cjs/ai/intents/planner.d.ts +96 -0
  44. package/dist/cjs/ai/intents/planner.d.ts.map +1 -0
  45. package/dist/cjs/ai/intents/planner.js +270 -0
  46. package/dist/cjs/ai/intents/planner.js.map +1 -0
  47. package/dist/cjs/ai/intents/types.d.ts +281 -0
  48. package/dist/cjs/ai/intents/types.d.ts.map +1 -0
  49. package/dist/cjs/ai/intents/types.js +70 -0
  50. package/dist/cjs/ai/intents/types.js.map +1 -0
  51. package/dist/cjs/ai/mcp/client.d.ts +71 -0
  52. package/dist/cjs/ai/mcp/client.d.ts.map +1 -0
  53. package/dist/cjs/ai/mcp/client.js +675 -0
  54. package/dist/cjs/ai/mcp/client.js.map +1 -0
  55. package/dist/cjs/ai/mcp/index.d.ts +16 -0
  56. package/dist/cjs/ai/mcp/index.d.ts.map +1 -0
  57. package/dist/cjs/ai/mcp/index.js +27 -0
  58. package/dist/cjs/ai/mcp/index.js.map +1 -0
  59. package/dist/cjs/ai/mcp/server.d.ts +115 -0
  60. package/dist/cjs/ai/mcp/server.d.ts.map +1 -0
  61. package/dist/cjs/ai/mcp/server.js +624 -0
  62. package/dist/cjs/ai/mcp/server.js.map +1 -0
  63. package/dist/cjs/ai/mcp/types.d.ts +215 -0
  64. package/dist/cjs/ai/mcp/types.d.ts.map +1 -0
  65. package/dist/cjs/ai/mcp/types.js +17 -0
  66. package/dist/cjs/ai/mcp/types.js.map +1 -0
  67. package/dist/cjs/ai/plugins/blinks/index.d.ts +22 -0
  68. package/dist/cjs/ai/plugins/blinks/index.d.ts.map +1 -0
  69. package/dist/cjs/ai/plugins/blinks/index.js +202 -0
  70. package/dist/cjs/ai/plugins/blinks/index.js.map +1 -0
  71. package/dist/cjs/ai/plugins/blinks/schemas.d.ts +4 -0
  72. package/dist/cjs/ai/plugins/blinks/schemas.d.ts.map +1 -0
  73. package/dist/cjs/ai/plugins/blinks/schemas.js +103 -0
  74. package/dist/cjs/ai/plugins/blinks/schemas.js.map +1 -0
  75. package/dist/cjs/ai/plugins/defi/index.d.ts +44 -0
  76. package/dist/cjs/ai/plugins/defi/index.d.ts.map +1 -0
  77. package/dist/cjs/ai/plugins/defi/index.js +490 -0
  78. package/dist/cjs/ai/plugins/defi/index.js.map +1 -0
  79. package/dist/cjs/ai/plugins/defi/schemas.d.ts +13 -0
  80. package/dist/cjs/ai/plugins/defi/schemas.d.ts.map +1 -0
  81. package/dist/cjs/ai/plugins/defi/schemas.js +573 -0
  82. package/dist/cjs/ai/plugins/defi/schemas.js.map +1 -0
  83. package/dist/cjs/ai/plugins/index.d.ts +30 -0
  84. package/dist/cjs/ai/plugins/index.d.ts.map +1 -0
  85. package/dist/cjs/ai/plugins/index.js +40 -0
  86. package/dist/cjs/ai/plugins/index.js.map +1 -0
  87. package/dist/cjs/ai/plugins/misc/index.d.ts +28 -0
  88. package/dist/cjs/ai/plugins/misc/index.d.ts.map +1 -0
  89. package/dist/cjs/ai/plugins/misc/index.js +445 -0
  90. package/dist/cjs/ai/plugins/misc/index.js.map +1 -0
  91. package/dist/cjs/ai/plugins/misc/schemas.d.ts +9 -0
  92. package/dist/cjs/ai/plugins/misc/schemas.d.ts.map +1 -0
  93. package/dist/cjs/ai/plugins/misc/schemas.js +318 -0
  94. package/dist/cjs/ai/plugins/misc/schemas.js.map +1 -0
  95. package/dist/cjs/ai/plugins/nft/index.d.ts +24 -0
  96. package/dist/cjs/ai/plugins/nft/index.d.ts.map +1 -0
  97. package/dist/cjs/ai/plugins/nft/index.js +70 -0
  98. package/dist/cjs/ai/plugins/nft/index.js.map +1 -0
  99. package/dist/cjs/ai/plugins/nft/schemas.d.ts +6 -0
  100. package/dist/cjs/ai/plugins/nft/schemas.d.ts.map +1 -0
  101. package/dist/cjs/ai/plugins/nft/schemas.js +272 -0
  102. package/dist/cjs/ai/plugins/nft/schemas.js.map +1 -0
  103. package/dist/cjs/ai/plugins/registry.d.ts +157 -0
  104. package/dist/cjs/ai/plugins/registry.d.ts.map +1 -0
  105. package/dist/cjs/ai/plugins/registry.js +369 -0
  106. package/dist/cjs/ai/plugins/registry.js.map +1 -0
  107. package/dist/cjs/ai/plugins/token/index.d.ts +35 -0
  108. package/dist/cjs/ai/plugins/token/index.d.ts.map +1 -0
  109. package/dist/cjs/ai/plugins/token/index.js +187 -0
  110. package/dist/cjs/ai/plugins/token/index.js.map +1 -0
  111. package/dist/cjs/ai/plugins/token/schemas.d.ts +5 -0
  112. package/dist/cjs/ai/plugins/token/schemas.d.ts.map +1 -0
  113. package/dist/cjs/ai/plugins/token/schemas.js +268 -0
  114. package/dist/cjs/ai/plugins/token/schemas.js.map +1 -0
  115. package/dist/cjs/ai/plugins/types.d.ts +176 -0
  116. package/dist/cjs/ai/plugins/types.d.ts.map +1 -0
  117. package/dist/cjs/ai/plugins/types.js +3 -0
  118. package/dist/cjs/ai/plugins/types.js.map +1 -0
  119. package/dist/cjs/ai/sap/adapter.d.ts +140 -0
  120. package/dist/cjs/ai/sap/adapter.d.ts.map +1 -0
  121. package/dist/cjs/ai/sap/adapter.js +181 -0
  122. package/dist/cjs/ai/sap/adapter.js.map +1 -0
  123. package/dist/cjs/ai/sap/discovery.d.ts +165 -0
  124. package/dist/cjs/ai/sap/discovery.d.ts.map +1 -0
  125. package/dist/cjs/ai/sap/discovery.js +316 -0
  126. package/dist/cjs/ai/sap/discovery.js.map +1 -0
  127. package/dist/cjs/ai/sap/index.d.ts +61 -0
  128. package/dist/cjs/ai/sap/index.d.ts.map +1 -0
  129. package/dist/cjs/ai/sap/index.js +89 -0
  130. package/dist/cjs/ai/sap/index.js.map +1 -0
  131. package/dist/cjs/ai/sap/pda.d.ts +205 -0
  132. package/dist/cjs/ai/sap/pda.d.ts.map +1 -0
  133. package/dist/cjs/ai/sap/pda.js +547 -0
  134. package/dist/cjs/ai/sap/pda.js.map +1 -0
  135. package/dist/cjs/ai/sap/program.d.ts +153 -0
  136. package/dist/cjs/ai/sap/program.d.ts.map +1 -0
  137. package/dist/cjs/ai/sap/program.js +227 -0
  138. package/dist/cjs/ai/sap/program.js.map +1 -0
  139. package/dist/cjs/ai/sap/registry.d.ts +218 -0
  140. package/dist/cjs/ai/sap/registry.d.ts.map +1 -0
  141. package/dist/cjs/ai/sap/registry.js +519 -0
  142. package/dist/cjs/ai/sap/registry.js.map +1 -0
  143. package/dist/cjs/ai/sap/scoring.d.ts +138 -0
  144. package/dist/cjs/ai/sap/scoring.d.ts.map +1 -0
  145. package/dist/cjs/ai/sap/scoring.js +266 -0
  146. package/dist/cjs/ai/sap/scoring.js.map +1 -0
  147. package/dist/cjs/ai/sap/subnetwork.d.ts +201 -0
  148. package/dist/cjs/ai/sap/subnetwork.d.ts.map +1 -0
  149. package/dist/cjs/ai/sap/subnetwork.js +365 -0
  150. package/dist/cjs/ai/sap/subnetwork.js.map +1 -0
  151. package/dist/cjs/ai/sap/types.d.ts +418 -0
  152. package/dist/cjs/ai/sap/types.d.ts.map +1 -0
  153. package/dist/cjs/ai/sap/types.js +217 -0
  154. package/dist/cjs/ai/sap/types.js.map +1 -0
  155. package/dist/cjs/ai/sap/validator.d.ts +160 -0
  156. package/dist/cjs/ai/sap/validator.d.ts.map +1 -0
  157. package/dist/cjs/ai/sap/validator.js +619 -0
  158. package/dist/cjs/ai/sap/validator.js.map +1 -0
  159. package/dist/docs/assets/highlight.css +13 -6
  160. package/dist/docs/classes/AccountReader.html +18 -18
  161. package/dist/docs/classes/AccountsClient.html +10 -10
  162. package/dist/docs/classes/AsyncProviderError.html +4 -4
  163. package/dist/docs/classes/CircularDependencyError.html +4 -4
  164. package/dist/docs/classes/DasClient.html +13 -13
  165. package/dist/docs/classes/GeyserParser.html +17 -17
  166. package/dist/docs/classes/GrpcTransport.html +6 -6
  167. package/dist/docs/classes/HttpTransport.html +4 -4
  168. package/dist/docs/classes/InstructionWriter.html +11 -11
  169. package/dist/docs/classes/MemoryGuard.html +9 -9
  170. package/dist/docs/classes/NetworkError.html +5 -5
  171. package/dist/docs/classes/RefRegistry.html +11 -11
  172. package/dist/docs/classes/RefReleasedError.html +4 -4
  173. package/dist/docs/classes/RpcMethodNotFoundError.html +4 -4
  174. package/dist/docs/classes/ServiceNotFoundError.html +4 -4
  175. package/dist/docs/classes/ServiceRef.html +13 -13
  176. package/dist/docs/classes/SolanaRpc.html +55 -55
  177. package/dist/docs/classes/SynapseClient.html +16 -16
  178. package/dist/docs/classes/SynapseContext.html +27 -27
  179. package/dist/docs/classes/SynapseError.html +4 -4
  180. package/dist/docs/classes/TimeoutError.html +4 -4
  181. package/dist/docs/classes/UpstreamError.html +6 -6
  182. package/dist/docs/classes/WeakServiceRef.html +4 -4
  183. package/dist/docs/classes/WsClient.html +10 -10
  184. package/dist/docs/enums/SynapseNetwork.html +2 -2
  185. package/dist/docs/enums/SynapseRegion.html +2 -2
  186. package/dist/docs/enums/TokenExtensionType.html +2 -2
  187. package/dist/docs/functions/Epoch-1.html +1 -1
  188. package/dist/docs/functions/Lamports-2.html +1 -1
  189. package/dist/docs/functions/Pubkey-1.html +1 -1
  190. package/dist/docs/functions/Sig.html +1 -1
  191. package/dist/docs/functions/Slot-1.html +1 -1
  192. package/dist/docs/functions/UnixTs.html +1 -1
  193. package/dist/docs/functions/autoSelectRegion.html +1 -1
  194. package/dist/docs/functions/autoWire.html +1 -1
  195. package/dist/docs/functions/base58Encode.html +1 -1
  196. package/dist/docs/functions/base64ToBytes.html +1 -1
  197. package/dist/docs/functions/bigIntReplacer.html +1 -1
  198. package/dist/docs/functions/chunk.html +1 -1
  199. package/dist/docs/functions/computeBalanceChanges.html +1 -1
  200. package/dist/docs/functions/computeTokenBalanceChanges.html +1 -1
  201. package/dist/docs/functions/createBareContext.html +1 -1
  202. package/dist/docs/functions/createBinding.html +1 -1
  203. package/dist/docs/functions/createBoundHook.html +1 -1
  204. package/dist/docs/functions/createReactAdapter.html +1 -1
  205. package/dist/docs/functions/createRefHook.html +1 -1
  206. package/dist/docs/functions/createServerMiddleware.html +1 -1
  207. package/dist/docs/functions/createServiceHook.html +1 -1
  208. package/dist/docs/functions/createSingleton.html +1 -1
  209. package/dist/docs/functions/createSynapse.html +1 -1
  210. package/dist/docs/functions/createSynapseContext.html +1 -1
  211. package/dist/docs/functions/createToken.html +1 -1
  212. package/dist/docs/functions/decodeBase58.html +1 -1
  213. package/dist/docs/functions/decodeLookupTable.html +1 -1
  214. package/dist/docs/functions/decodeMint.html +1 -1
  215. package/dist/docs/functions/decodeMultisig.html +1 -1
  216. package/dist/docs/functions/decodeNonceAccount.html +1 -1
  217. package/dist/docs/functions/decodeStakeAccount.html +1 -1
  218. package/dist/docs/functions/decodeToken2022Account.html +1 -1
  219. package/dist/docs/functions/decodeToken2022Mint.html +1 -1
  220. package/dist/docs/functions/decodeTokenAccount.html +1 -1
  221. package/dist/docs/functions/encodeBase58.html +1 -1
  222. package/dist/docs/functions/fetchLookupTable.html +2 -2
  223. package/dist/docs/functions/fetchMint.html +2 -2
  224. package/dist/docs/functions/fetchNonceAccount.html +2 -2
  225. package/dist/docs/functions/fetchStakeAccount.html +2 -2
  226. package/dist/docs/functions/fetchTokenAccount.html +2 -2
  227. package/dist/docs/functions/fetchTokenAccountsByOwner.html +2 -2
  228. package/dist/docs/functions/fromKitAddress.html +1 -1
  229. package/dist/docs/functions/getAccountInfo.html +2 -2
  230. package/dist/docs/functions/getAsset.html +1 -1
  231. package/dist/docs/functions/getAssetBatch.html +1 -1
  232. package/dist/docs/functions/getAssetProof.html +1 -1
  233. package/dist/docs/functions/getAssetProofBatch.html +1 -1
  234. package/dist/docs/functions/getAssetsByAuthority.html +1 -1
  235. package/dist/docs/functions/getAssetsByCreator.html +1 -1
  236. package/dist/docs/functions/getAssetsByGroup.html +1 -1
  237. package/dist/docs/functions/getAssetsByOwner.html +1 -1
  238. package/dist/docs/functions/getBalance.html +1 -1
  239. package/dist/docs/functions/getBlock.html +2 -2
  240. package/dist/docs/functions/getBlockCommitment.html +1 -1
  241. package/dist/docs/functions/getBlockHeight.html +1 -1
  242. package/dist/docs/functions/getBlockProduction.html +1 -1
  243. package/dist/docs/functions/getBlockTime.html +1 -1
  244. package/dist/docs/functions/getBlocks.html +1 -1
  245. package/dist/docs/functions/getBlocksWithLimit.html +2 -2
  246. package/dist/docs/functions/getClusterNodes.html +2 -2
  247. package/dist/docs/functions/getContext.html +1 -1
  248. package/dist/docs/functions/getDecodedAccount.html +2 -2
  249. package/dist/docs/functions/getDecodedAccounts.html +1 -1
  250. package/dist/docs/functions/getEnvironment.html +1 -1
  251. package/dist/docs/functions/getEpochInfo.html +2 -2
  252. package/dist/docs/functions/getEpochSchedule.html +2 -2
  253. package/dist/docs/functions/getFeeForMessage.html +1 -1
  254. package/dist/docs/functions/getFirstAvailableBlock.html +1 -1
  255. package/dist/docs/functions/getGenesisHash.html +1 -1
  256. package/dist/docs/functions/getHealth.html +1 -1
  257. package/dist/docs/functions/getHighestSnapshotSlot.html +1 -1
  258. package/dist/docs/functions/getIdentity.html +1 -1
  259. package/dist/docs/functions/getInflationGovernor.html +2 -2
  260. package/dist/docs/functions/getInflationRate.html +2 -2
  261. package/dist/docs/functions/getInflationReward.html +2 -2
  262. package/dist/docs/functions/getLargestAccounts.html +2 -2
  263. package/dist/docs/functions/getLatestBlockhash.html +2 -2
  264. package/dist/docs/functions/getLeaderSchedule.html +1 -1
  265. package/dist/docs/functions/getMaxRetransmitSlot.html +1 -1
  266. package/dist/docs/functions/getMaxShredInsertSlot.html +1 -1
  267. package/dist/docs/functions/getMinimumBalanceForRentExemption.html +1 -1
  268. package/dist/docs/functions/getMultipleAccounts.html +1 -1
  269. package/dist/docs/functions/getProgramAccounts.html +1 -1
  270. package/dist/docs/functions/getProgramCategory.html +1 -1
  271. package/dist/docs/functions/getRecentPerformanceSamples.html +1 -1
  272. package/dist/docs/functions/getRecentPrioritizationFees.html +1 -1
  273. package/dist/docs/functions/getSignatureStatuses.html +1 -1
  274. package/dist/docs/functions/getSignaturesForAddress.html +1 -1
  275. package/dist/docs/functions/getSignaturesForAsset.html +1 -1
  276. package/dist/docs/functions/getSlot.html +1 -1
  277. package/dist/docs/functions/getSlotLeader.html +1 -1
  278. package/dist/docs/functions/getSlotLeaders.html +1 -1
  279. package/dist/docs/functions/getStakeActivation.html +1 -1
  280. package/dist/docs/functions/getStakeMinimumDelegation.html +1 -1
  281. package/dist/docs/functions/getSupply.html +1 -1
  282. package/dist/docs/functions/getTokenAccountBalance.html +1 -1
  283. package/dist/docs/functions/getTokenAccounts.html +1 -1
  284. package/dist/docs/functions/getTokenAccountsByDelegate.html +1 -1
  285. package/dist/docs/functions/getTokenAccountsByOwner.html +1 -1
  286. package/dist/docs/functions/getTokenLargestAccounts.html +1 -1
  287. package/dist/docs/functions/getTokenSupply.html +1 -1
  288. package/dist/docs/functions/getTransaction.html +1 -1
  289. package/dist/docs/functions/getTransactionCount.html +1 -1
  290. package/dist/docs/functions/getVersion.html +1 -1
  291. package/dist/docs/functions/getVoteAccounts.html +1 -1
  292. package/dist/docs/functions/isBlockhashValid.html +1 -1
  293. package/dist/docs/functions/isBrowser.html +1 -1
  294. package/dist/docs/functions/isDisposable.html +1 -1
  295. package/dist/docs/functions/isProgramInCategory.html +1 -1
  296. package/dist/docs/functions/isServer.html +1 -1
  297. package/dist/docs/functions/isValidPubkey.html +1 -1
  298. package/dist/docs/functions/isValidSignature.html +1 -1
  299. package/dist/docs/functions/lamportsToSol.html +1 -1
  300. package/dist/docs/functions/listEndpoints.html +1 -1
  301. package/dist/docs/functions/listNetworks.html +1 -1
  302. package/dist/docs/functions/listRegions.html +1 -1
  303. package/dist/docs/functions/minimumLedgerSlot.html +1 -1
  304. package/dist/docs/functions/parseAccountUpdate.html +1 -1
  305. package/dist/docs/functions/parseBlockMeta.html +1 -1
  306. package/dist/docs/functions/parseEntry.html +1 -1
  307. package/dist/docs/functions/parseGeyserUpdate.html +1 -1
  308. package/dist/docs/functions/parseSlotUpdate.html +1 -1
  309. package/dist/docs/functions/parseTimestamp.html +1 -1
  310. package/dist/docs/functions/parseTransaction.html +1 -1
  311. package/dist/docs/functions/probeLatency.html +1 -1
  312. package/dist/docs/functions/rawBufferToBase58.html +1 -1
  313. package/dist/docs/functions/rawBufferToBase64.html +1 -1
  314. package/dist/docs/functions/rawBufferToBytes.html +1 -1
  315. package/dist/docs/functions/rawBufferToHex.html +1 -1
  316. package/dist/docs/functions/readonly.html +1 -1
  317. package/dist/docs/functions/readonlySigner.html +1 -1
  318. package/dist/docs/functions/requestAirdrop.html +1 -1
  319. package/dist/docs/functions/resolveEndpoint.html +1 -1
  320. package/dist/docs/functions/resolveProgram.html +1 -1
  321. package/dist/docs/functions/resolveProgramBatch.html +1 -1
  322. package/dist/docs/functions/retry.html +1 -1
  323. package/dist/docs/functions/searchAssets.html +1 -1
  324. package/dist/docs/functions/sendAndConfirmDurableNonceTransactionFactory.html +1 -1
  325. package/dist/docs/functions/sendTransaction.html +1 -1
  326. package/dist/docs/functions/setGlobalContext.html +1 -1
  327. package/dist/docs/functions/simulateTransaction.html +1 -1
  328. package/dist/docs/functions/sleep.html +1 -1
  329. package/dist/docs/functions/solToLamports.html +1 -1
  330. package/dist/docs/functions/toClientConfig.html +1 -1
  331. package/dist/docs/functions/toJsonSafe.html +1 -1
  332. package/dist/docs/functions/toKitAddress.html +1 -1
  333. package/dist/docs/functions/toKitInstruction.html +1 -1
  334. package/dist/docs/functions/toKitLamports.html +1 -1
  335. package/dist/docs/functions/toKitSignatureString.html +1 -1
  336. package/dist/docs/functions/tryGetContext.html +1 -1
  337. package/dist/docs/functions/tryUseService.html +1 -1
  338. package/dist/docs/functions/useBoundServices.html +1 -1
  339. package/dist/docs/functions/useService.html +1 -1
  340. package/dist/docs/functions/useSharedRef.html +1 -1
  341. package/dist/docs/functions/withRef.html +1 -1
  342. package/dist/docs/functions/withRefAsync.html +1 -1
  343. package/dist/docs/functions/writable.html +1 -1
  344. package/dist/docs/functions/writableSigner.html +1 -1
  345. package/dist/docs/index.html +174 -8
  346. package/dist/docs/interfaces/AccountInfo.html +7 -7
  347. package/dist/docs/interfaces/AccountMeta.html +4 -4
  348. package/dist/docs/interfaces/AccountNotification.html +2 -2
  349. package/dist/docs/interfaces/AccountSubParams.html +2 -2
  350. package/dist/docs/interfaces/AddMemoParams.html +5 -5
  351. package/dist/docs/interfaces/AdvanceNonceParams.html +3 -3
  352. package/dist/docs/interfaces/AliasProvider.html +2 -2
  353. package/dist/docs/interfaces/AllocateParams.html +3 -3
  354. package/dist/docs/interfaces/ApproveCheckedParams.html +9 -9
  355. package/dist/docs/interfaces/ApproveParams.html +7 -7
  356. package/dist/docs/interfaces/AssetSignatureInfo.html +2 -2
  357. package/dist/docs/interfaces/AssetSignaturesPage.html +2 -2
  358. package/dist/docs/interfaces/AssignParams.html +3 -3
  359. package/dist/docs/interfaces/AsyncFactoryProvider.html +2 -2
  360. package/dist/docs/interfaces/AuthorizeNonceParams.html +4 -4
  361. package/dist/docs/interfaces/BalanceChange.html +6 -6
  362. package/dist/docs/interfaces/BlockProduction.html +3 -3
  363. package/dist/docs/interfaces/BlockResult.html +2 -2
  364. package/dist/docs/interfaces/BlockReward.html +2 -2
  365. package/dist/docs/interfaces/BlockhashResult.html +2 -2
  366. package/dist/docs/interfaces/BurnCheckedParams.html +8 -8
  367. package/dist/docs/interfaces/BurnParams.html +7 -7
  368. package/dist/docs/interfaces/CallOptions.html +6 -6
  369. package/dist/docs/interfaces/ClassProvider.html +2 -2
  370. package/dist/docs/interfaces/CloseAccountParams.html +6 -6
  371. package/dist/docs/interfaces/ConfirmedTransaction.html +6 -6
  372. package/dist/docs/interfaces/ContactInfo.html +2 -2
  373. package/dist/docs/interfaces/ContextAdapter.html +5 -5
  374. package/dist/docs/interfaces/ContextEvents.html +6 -6
  375. package/dist/docs/interfaces/ContextModule.html +3 -3
  376. package/dist/docs/interfaces/CreateATAParams.html +6 -6
  377. package/dist/docs/interfaces/CreateAccountParams.html +6 -6
  378. package/dist/docs/interfaces/CreateAccountWithSeedParams.html +8 -8
  379. package/dist/docs/interfaces/CreateSynapseContextOpts.html +4 -4
  380. package/dist/docs/interfaces/DasAsset.html +2 -2
  381. package/dist/docs/interfaces/DasAssetProof.html +2 -2
  382. package/dist/docs/interfaces/DasAuthority.html +2 -2
  383. package/dist/docs/interfaces/DasCompression.html +2 -2
  384. package/dist/docs/interfaces/DasContent.html +2 -2
  385. package/dist/docs/interfaces/DasCreator.html +2 -2
  386. package/dist/docs/interfaces/DasFile.html +2 -2
  387. package/dist/docs/interfaces/DasGrouping.html +2 -2
  388. package/dist/docs/interfaces/DasOpts.html +2 -2
  389. package/dist/docs/interfaces/DasOwnership.html +2 -2
  390. package/dist/docs/interfaces/DasPage.html +2 -2
  391. package/dist/docs/interfaces/DasRoyalty.html +2 -2
  392. package/dist/docs/interfaces/DasSearchParams.html +2 -2
  393. package/dist/docs/interfaces/DasSupply.html +2 -2
  394. package/dist/docs/interfaces/DataSlice.html +3 -3
  395. package/dist/docs/interfaces/DecodedAccountResult.html +4 -4
  396. package/dist/docs/interfaces/DecodedLookupTable.html +9 -9
  397. package/dist/docs/interfaces/DecodedMint.html +7 -7
  398. package/dist/docs/interfaces/DecodedMultisig.html +6 -6
  399. package/dist/docs/interfaces/DecodedNonceAccount.html +7 -7
  400. package/dist/docs/interfaces/DecodedStakeAccount.html +2 -2
  401. package/dist/docs/interfaces/DecodedToken2022Account.html +9 -9
  402. package/dist/docs/interfaces/DecodedToken2022Mint.html +6 -6
  403. package/dist/docs/interfaces/DecodedTokenAccount.html +10 -10
  404. package/dist/docs/interfaces/DefaultAccountStateExt.html +2 -2
  405. package/dist/docs/interfaces/Disposable.html +2 -2
  406. package/dist/docs/interfaces/EndpointConnectConfig.html +5 -5
  407. package/dist/docs/interfaces/EpochInfo.html +7 -7
  408. package/dist/docs/interfaces/EpochSchedule.html +2 -2
  409. package/dist/docs/interfaces/FactoryProvider.html +2 -2
  410. package/dist/docs/interfaces/FetchedMint.html +6 -6
  411. package/dist/docs/interfaces/FetchedTokenAccount.html +6 -6
  412. package/dist/docs/interfaces/FreezeThawParams.html +6 -6
  413. package/dist/docs/interfaces/GetAccountInfoOpts.html +6 -6
  414. package/dist/docs/interfaces/GetAssetsByAuthorityParams.html +2 -2
  415. package/dist/docs/interfaces/GetAssetsByCreatorParams.html +2 -2
  416. package/dist/docs/interfaces/GetAssetsByGroupParams.html +2 -2
  417. package/dist/docs/interfaces/GetAssetsByOwnerParams.html +2 -2
  418. package/dist/docs/interfaces/GetBlockOpts.html +6 -6
  419. package/dist/docs/interfaces/GetBlockProductionOpts.html +6 -6
  420. package/dist/docs/interfaces/GetMultipleAccountsOpts.html +6 -6
  421. package/dist/docs/interfaces/GetProgramAccountsOpts.html +6 -6
  422. package/dist/docs/interfaces/GetSignatureStatusesOpts.html +6 -6
  423. package/dist/docs/interfaces/GetSignaturesOpts.html +7 -7
  424. package/dist/docs/interfaces/GetTokenAccountsParams.html +2 -2
  425. package/dist/docs/interfaces/GetTransactionOpts.html +6 -6
  426. package/dist/docs/interfaces/GeyserParserConfig.html +6 -6
  427. package/dist/docs/interfaces/GeyserParserEvents.html +9 -9
  428. package/dist/docs/interfaces/GeyserParserStats.html +2 -2
  429. package/dist/docs/interfaces/GrpcCallOptions.html +2 -2
  430. package/dist/docs/interfaces/GrpcTransportConfig.html +6 -6
  431. package/dist/docs/interfaces/ImmutableOwnerExt.html +2 -2
  432. package/dist/docs/interfaces/InflationGovernor.html +2 -2
  433. package/dist/docs/interfaces/InflationRate.html +2 -2
  434. package/dist/docs/interfaces/InflationReward.html +2 -2
  435. package/dist/docs/interfaces/InitializeAccountParams.html +5 -5
  436. package/dist/docs/interfaces/InitializeMintParams.html +6 -6
  437. package/dist/docs/interfaces/InitializeNonceParams.html +3 -3
  438. package/dist/docs/interfaces/InterestBearingConfigExt.html +2 -2
  439. package/dist/docs/interfaces/LatencyProbeResult.html +2 -2
  440. package/dist/docs/interfaces/LeakReport.html +5 -5
  441. package/dist/docs/interfaces/LogsNotification.html +2 -2
  442. package/dist/docs/interfaces/LogsSubParams.html +2 -2
  443. package/dist/docs/interfaces/MemoTransferExt.html +2 -2
  444. package/dist/docs/interfaces/MemoryGuardConfig.html +4 -4
  445. package/dist/docs/interfaces/MetadataPointerExt.html +2 -2
  446. package/dist/docs/interfaces/MintCloseAuthorityExt.html +2 -2
  447. package/dist/docs/interfaces/MintToCheckedParams.html +8 -8
  448. package/dist/docs/interfaces/MintToParams.html +7 -7
  449. package/dist/docs/interfaces/NonTransferableExt.html +2 -2
  450. package/dist/docs/interfaces/PaginationOpts.html +2 -2
  451. package/dist/docs/interfaces/ParsedAccountUpdate.html +16 -16
  452. package/dist/docs/interfaces/ParsedBlockMeta.html +2 -2
  453. package/dist/docs/interfaces/ParsedEntry.html +2 -2
  454. package/dist/docs/interfaces/ParsedInstruction.html +9 -9
  455. package/dist/docs/interfaces/ParsedSlotUpdate.html +3 -3
  456. package/dist/docs/interfaces/ParsedTransaction.html +19 -19
  457. package/dist/docs/interfaces/PerfSample.html +2 -2
  458. package/dist/docs/interfaces/PermanentDelegateExt.html +2 -2
  459. package/dist/docs/interfaces/ProgramAccount.html +2 -2
  460. package/dist/docs/interfaces/ProgramNotification.html +2 -2
  461. package/dist/docs/interfaces/ProgramSubParams.html +2 -2
  462. package/dist/docs/interfaces/ProgramsBundle.html +33 -33
  463. package/dist/docs/interfaces/RawAccountInfo.html +2 -2
  464. package/dist/docs/interfaces/RawBlockMeta.html +2 -2
  465. package/dist/docs/interfaces/RawBuffer.html +2 -2
  466. package/dist/docs/interfaces/RawCompiledInstruction.html +2 -2
  467. package/dist/docs/interfaces/RawEntry.html +2 -2
  468. package/dist/docs/interfaces/RawGeyserUpdate.html +2 -2
  469. package/dist/docs/interfaces/RawInnerInstruction.html +2 -2
  470. package/dist/docs/interfaces/RawSlotInfo.html +2 -2
  471. package/dist/docs/interfaces/RawTimestamp.html +2 -2
  472. package/dist/docs/interfaces/RawTokenBalance.html +2 -2
  473. package/dist/docs/interfaces/RawTransactionInfo.html +2 -2
  474. package/dist/docs/interfaces/ReactAdapterConfig.html +2 -2
  475. package/dist/docs/interfaces/RecoverNestedParams.html +7 -7
  476. package/dist/docs/interfaces/RefRegistryConfig.html +2 -2
  477. package/dist/docs/interfaces/RefStats.html +7 -7
  478. package/dist/docs/interfaces/RequestHeapFrameParams.html +2 -2
  479. package/dist/docs/interfaces/ResolveMiddleware.html +1 -1
  480. package/dist/docs/interfaces/RevokeParams.html +5 -5
  481. package/dist/docs/interfaces/RootNotification.html +2 -2
  482. package/dist/docs/interfaces/RootSubParams.html +1 -1
  483. package/dist/docs/interfaces/RpcContext.html +2 -2
  484. package/dist/docs/interfaces/RpcError.html +4 -4
  485. package/dist/docs/interfaces/RpcRequest.html +3 -3
  486. package/dist/docs/interfaces/RpcResponse.html +2 -2
  487. package/dist/docs/interfaces/SendTransactionOpts.html +6 -6
  488. package/dist/docs/interfaces/ServerAdapterConfig.html +3 -3
  489. package/dist/docs/interfaces/ServiceBinding.html +6 -6
  490. package/dist/docs/interfaces/ServiceRegistration.html +3 -3
  491. package/dist/docs/interfaces/ServiceResolver.html +6 -6
  492. package/dist/docs/interfaces/ServiceToken.html +4 -4
  493. package/dist/docs/interfaces/SetComputeUnitLimitParams.html +2 -2
  494. package/dist/docs/interfaces/SetComputeUnitPriceParams.html +2 -2
  495. package/dist/docs/interfaces/SetLoadedAccountsDataSizeLimitParams.html +2 -2
  496. package/dist/docs/interfaces/SignatureInfo.html +7 -7
  497. package/dist/docs/interfaces/SignatureNotification.html +2 -2
  498. package/dist/docs/interfaces/SignatureStatus.html +5 -5
  499. package/dist/docs/interfaces/SignatureSubParams.html +2 -2
  500. package/dist/docs/interfaces/SignaturesForAssetParams.html +2 -2
  501. package/dist/docs/interfaces/SimulateResult.html +2 -2
  502. package/dist/docs/interfaces/SimulateTransactionOpts.html +7 -7
  503. package/dist/docs/interfaces/SingletonOptions.html +2 -2
  504. package/dist/docs/interfaces/SlotNotification.html +2 -2
  505. package/dist/docs/interfaces/SlotSubParams.html +1 -1
  506. package/dist/docs/interfaces/SortOpts.html +2 -2
  507. package/dist/docs/interfaces/StakeAuthorized.html +2 -2
  508. package/dist/docs/interfaces/StakeDelegation.html +3 -3
  509. package/dist/docs/interfaces/StakeLockup.html +4 -4
  510. package/dist/docs/interfaces/StakeMeta.html +2 -2
  511. package/dist/docs/interfaces/Supply.html +5 -5
  512. package/dist/docs/interfaces/SynapseClientConfig.html +9 -9
  513. package/dist/docs/interfaces/SynapseClientLike.html +2 -2
  514. package/dist/docs/interfaces/SynapseEndpoint.html +7 -7
  515. package/dist/docs/interfaces/SyncNativeParams.html +3 -3
  516. package/dist/docs/interfaces/SystemTransferParams.html +4 -4
  517. package/dist/docs/interfaces/TokenAccount.html +3 -3
  518. package/dist/docs/interfaces/TokenAccountsByOwnerResult.html +2 -2
  519. package/dist/docs/interfaces/TokenAmount.html +5 -5
  520. package/dist/docs/interfaces/TokenBalanceChange.html +2 -2
  521. package/dist/docs/interfaces/TokenTransferParams.html +7 -7
  522. package/dist/docs/interfaces/TransactionInstruction.html +4 -4
  523. package/dist/docs/interfaces/TransactionMeta.html +11 -11
  524. package/dist/docs/interfaces/TransferCheckedParams.html +9 -9
  525. package/dist/docs/interfaces/TransferFeeAmount.html +2 -2
  526. package/dist/docs/interfaces/TransferFeeConfig.html +2 -2
  527. package/dist/docs/interfaces/TransportConfig.html +7 -7
  528. package/dist/docs/interfaces/UnknownExtension.html +2 -2
  529. package/dist/docs/interfaces/ValueProvider.html +2 -2
  530. package/dist/docs/interfaces/VoteAccount.html +9 -9
  531. package/dist/docs/interfaces/VoteAccountsResult.html +3 -3
  532. package/dist/docs/interfaces/WithdrawNonceParams.html +5 -5
  533. package/dist/docs/interfaces/WsConfig.html +6 -6
  534. package/dist/docs/media/10_PLUGINS.md +454 -0
  535. package/dist/docs/media/11_MCP.md +459 -0
  536. package/dist/docs/media/CHANGELOG.md +176 -0
  537. package/dist/docs/types/AccountFetchOpts.html +1 -1
  538. package/dist/docs/types/AccountFilter.html +1 -1
  539. package/dist/docs/types/Base58.html +1 -1
  540. package/dist/docs/types/Brand.html +1 -1
  541. package/dist/docs/types/Commitment.html +1 -1
  542. package/dist/docs/types/DasSortBy.html +1 -1
  543. package/dist/docs/types/DasSortDirection.html +1 -1
  544. package/dist/docs/types/DataSizeFilter.html +1 -1
  545. package/dist/docs/types/DecodedExtension.html +1 -1
  546. package/dist/docs/types/Encoding.html +1 -1
  547. package/dist/docs/types/Epoch.html +1 -1
  548. package/dist/docs/types/Lamports.html +1 -1
  549. package/dist/docs/types/LogsFilter.html +1 -1
  550. package/dist/docs/types/MemcmpFilter.html +1 -1
  551. package/dist/docs/types/NonceState.html +1 -1
  552. package/dist/docs/types/ParsedGeyserUpdate.html +1 -1
  553. package/dist/docs/types/Pubkey.html +1 -1
  554. package/dist/docs/types/RuntimeEnv.html +1 -1
  555. package/dist/docs/types/ServiceLifecycle.html +1 -1
  556. package/dist/docs/types/ServiceProvider.html +1 -1
  557. package/dist/docs/types/Signature.html +1 -1
  558. package/dist/docs/types/Slot.html +1 -1
  559. package/dist/docs/types/StakeAccountType.html +1 -1
  560. package/dist/docs/types/SubscriptionId.html +1 -1
  561. package/dist/docs/types/TokenAccountState.html +1 -1
  562. package/dist/docs/types/TransactionDetail.html +1 -1
  563. package/dist/docs/types/UnaryMethod.html +1 -1
  564. package/dist/docs/types/UnixTimestamp.html +1 -1
  565. package/dist/docs/types/WsNotification.html +1 -1
  566. package/dist/docs/variables/ASSOCIATED_TOKEN_PROGRAM.html +1 -1
  567. package/dist/docs/variables/AssociatedToken.html +4 -4
  568. package/dist/docs/variables/COMPUTE_BUDGET_PROGRAM.html +1 -1
  569. package/dist/docs/variables/ComputeBudget.html +5 -5
  570. package/dist/docs/variables/JUPITER_PROGRAMS.html +1 -1
  571. package/dist/docs/variables/KNOWN_PROGRAMS.html +1 -1
  572. package/dist/docs/variables/KNOWN_PROGRAMS_COUNT.html +1 -1
  573. package/dist/docs/variables/LOOKUP_TABLE_HEADER_SIZE.html +1 -1
  574. package/dist/docs/variables/LOOKUP_TABLE_PROGRAM_ID.html +1 -1
  575. package/dist/docs/variables/MARINADE_PROGRAMS.html +1 -1
  576. package/dist/docs/variables/MAX_MULTISIG_SIGNERS.html +1 -1
  577. package/dist/docs/variables/MEMO_PROGRAM_V1.html +1 -1
  578. package/dist/docs/variables/MEMO_PROGRAM_V2.html +1 -1
  579. package/dist/docs/variables/METAPLEX_PROGRAMS.html +1 -1
  580. package/dist/docs/variables/METEORA_PROGRAMS.html +1 -1
  581. package/dist/docs/variables/MINT_SIZE.html +1 -1
  582. package/dist/docs/variables/MULTISIG_SIZE.html +1 -1
  583. package/dist/docs/variables/Memo.html +2 -2
  584. package/dist/docs/variables/NONCE_ACCOUNT_SIZE.html +1 -1
  585. package/dist/docs/variables/ORCA_PROGRAMS.html +1 -1
  586. package/dist/docs/variables/OTHER_PROGRAMS.html +1 -1
  587. package/dist/docs/variables/RAYDIUM_PROGRAMS.html +1 -1
  588. package/dist/docs/variables/SDK_USER_AGENT.html +1 -1
  589. package/dist/docs/variables/SPL_PROGRAMS.html +1 -1
  590. package/dist/docs/variables/STAKE_PROGRAM_ID.html +1 -1
  591. package/dist/docs/variables/SYNAPSE_DEVNET_EU.html +1 -1
  592. package/dist/docs/variables/SYNAPSE_DEVNET_US.html +1 -1
  593. package/dist/docs/variables/SYNAPSE_ENDPOINTS.html +1 -1
  594. package/dist/docs/variables/SYNAPSE_MAINNET_EU.html +1 -1
  595. package/dist/docs/variables/SYNAPSE_MAINNET_US.html +1 -1
  596. package/dist/docs/variables/SYSTEM_PROGRAM.html +1 -1
  597. package/dist/docs/variables/SYSTEM_PROGRAMS.html +1 -1
  598. package/dist/docs/variables/SYSTEM_PROGRAM_ID.html +1 -1
  599. package/dist/docs/variables/SplToken.html +16 -16
  600. package/dist/docs/variables/SystemProgram.html +10 -10
  601. package/dist/docs/variables/TOKEN_2022_PROGRAM.html +1 -1
  602. package/dist/docs/variables/TOKEN_2022_PROGRAM_ID.html +1 -1
  603. package/dist/docs/variables/TOKEN_ACCOUNT_SIZE.html +1 -1
  604. package/dist/docs/variables/TOKEN_PROGRAM.html +1 -1
  605. package/dist/docs/variables/TOKEN_PROGRAM_ID.html +1 -1
  606. package/dist/docs/variables/Tokens.html +1 -1
  607. package/dist/esm/ai/actions/blinks.d.ts +158 -0
  608. package/dist/esm/ai/actions/blinks.d.ts.map +1 -0
  609. package/dist/esm/ai/actions/blinks.js +227 -0
  610. package/dist/esm/ai/actions/blinks.js.map +1 -0
  611. package/dist/esm/ai/actions/index.d.ts +51 -0
  612. package/dist/esm/ai/actions/index.d.ts.map +1 -0
  613. package/dist/esm/ai/actions/index.js +52 -0
  614. package/dist/esm/ai/actions/index.js.map +1 -0
  615. package/dist/esm/ai/actions/server.d.ts +188 -0
  616. package/dist/esm/ai/actions/server.d.ts.map +1 -0
  617. package/dist/esm/ai/actions/server.js +399 -0
  618. package/dist/esm/ai/actions/server.js.map +1 -0
  619. package/dist/esm/ai/actions/types.d.ts +251 -0
  620. package/dist/esm/ai/actions/types.d.ts.map +1 -0
  621. package/dist/esm/ai/actions/types.js +15 -0
  622. package/dist/esm/ai/actions/types.js.map +1 -0
  623. package/dist/esm/ai/gateway/index.d.ts +1 -0
  624. package/dist/esm/ai/gateway/index.d.ts.map +1 -1
  625. package/dist/esm/ai/gateway/index.js +2 -0
  626. package/dist/esm/ai/gateway/index.js.map +1 -1
  627. package/dist/esm/ai/gateway/monetize.d.ts +222 -0
  628. package/dist/esm/ai/gateway/monetize.d.ts.map +1 -0
  629. package/dist/esm/ai/gateway/monetize.js +277 -0
  630. package/dist/esm/ai/gateway/monetize.js.map +1 -0
  631. package/dist/esm/ai/index.d.ts +7 -2
  632. package/dist/esm/ai/index.d.ts.map +1 -1
  633. package/dist/esm/ai/index.js +41 -1
  634. package/dist/esm/ai/index.js.map +1 -1
  635. package/dist/esm/ai/intents/executor.d.ts +102 -0
  636. package/dist/esm/ai/intents/executor.d.ts.map +1 -0
  637. package/dist/esm/ai/intents/executor.js +331 -0
  638. package/dist/esm/ai/intents/executor.js.map +1 -0
  639. package/dist/esm/ai/intents/index.d.ts +52 -0
  640. package/dist/esm/ai/intents/index.d.ts.map +1 -0
  641. package/dist/esm/ai/intents/index.js +50 -0
  642. package/dist/esm/ai/intents/index.js.map +1 -0
  643. package/dist/esm/ai/intents/parser.d.ts +106 -0
  644. package/dist/esm/ai/intents/parser.d.ts.map +1 -0
  645. package/dist/esm/ai/intents/parser.js +185 -0
  646. package/dist/esm/ai/intents/parser.js.map +1 -0
  647. package/dist/esm/ai/intents/planner.d.ts +96 -0
  648. package/dist/esm/ai/intents/planner.d.ts.map +1 -0
  649. package/dist/esm/ai/intents/planner.js +266 -0
  650. package/dist/esm/ai/intents/planner.js.map +1 -0
  651. package/dist/esm/ai/intents/types.d.ts +281 -0
  652. package/dist/esm/ai/intents/types.d.ts.map +1 -0
  653. package/dist/esm/ai/intents/types.js +63 -0
  654. package/dist/esm/ai/intents/types.js.map +1 -0
  655. package/dist/esm/ai/mcp/client.d.ts +71 -0
  656. package/dist/esm/ai/mcp/client.d.ts.map +1 -0
  657. package/dist/esm/ai/mcp/client.js +638 -0
  658. package/dist/esm/ai/mcp/client.js.map +1 -0
  659. package/dist/esm/ai/mcp/index.d.ts +16 -0
  660. package/dist/esm/ai/mcp/index.d.ts.map +1 -0
  661. package/dist/esm/ai/mcp/index.js +19 -0
  662. package/dist/esm/ai/mcp/index.js.map +1 -0
  663. package/dist/esm/ai/mcp/server.d.ts +115 -0
  664. package/dist/esm/ai/mcp/server.d.ts.map +1 -0
  665. package/dist/esm/ai/mcp/server.js +586 -0
  666. package/dist/esm/ai/mcp/server.js.map +1 -0
  667. package/dist/esm/ai/mcp/types.d.ts +215 -0
  668. package/dist/esm/ai/mcp/types.d.ts.map +1 -0
  669. package/dist/esm/ai/mcp/types.js +14 -0
  670. package/dist/esm/ai/mcp/types.js.map +1 -0
  671. package/dist/esm/ai/plugins/blinks/index.d.ts +22 -0
  672. package/dist/esm/ai/plugins/blinks/index.d.ts.map +1 -0
  673. package/dist/esm/ai/plugins/blinks/index.js +197 -0
  674. package/dist/esm/ai/plugins/blinks/index.js.map +1 -0
  675. package/dist/esm/ai/plugins/blinks/schemas.d.ts +4 -0
  676. package/dist/esm/ai/plugins/blinks/schemas.d.ts.map +1 -0
  677. package/dist/esm/ai/plugins/blinks/schemas.js +103 -0
  678. package/dist/esm/ai/plugins/blinks/schemas.js.map +1 -0
  679. package/dist/esm/ai/plugins/defi/index.d.ts +44 -0
  680. package/dist/esm/ai/plugins/defi/index.d.ts.map +1 -0
  681. package/dist/esm/ai/plugins/defi/index.js +476 -0
  682. package/dist/esm/ai/plugins/defi/index.js.map +1 -0
  683. package/dist/esm/ai/plugins/defi/schemas.d.ts +13 -0
  684. package/dist/esm/ai/plugins/defi/schemas.d.ts.map +1 -0
  685. package/dist/esm/ai/plugins/defi/schemas.js +564 -0
  686. package/dist/esm/ai/plugins/defi/schemas.js.map +1 -0
  687. package/dist/esm/ai/plugins/index.d.ts +30 -0
  688. package/dist/esm/ai/plugins/index.d.ts.map +1 -0
  689. package/dist/esm/ai/plugins/index.js +31 -0
  690. package/dist/esm/ai/plugins/index.js.map +1 -0
  691. package/dist/esm/ai/plugins/misc/index.d.ts +28 -0
  692. package/dist/esm/ai/plugins/misc/index.d.ts.map +1 -0
  693. package/dist/esm/ai/plugins/misc/index.js +435 -0
  694. package/dist/esm/ai/plugins/misc/index.js.map +1 -0
  695. package/dist/esm/ai/plugins/misc/schemas.d.ts +9 -0
  696. package/dist/esm/ai/plugins/misc/schemas.d.ts.map +1 -0
  697. package/dist/esm/ai/plugins/misc/schemas.js +313 -0
  698. package/dist/esm/ai/plugins/misc/schemas.js.map +1 -0
  699. package/dist/esm/ai/plugins/nft/index.d.ts +24 -0
  700. package/dist/esm/ai/plugins/nft/index.d.ts.map +1 -0
  701. package/dist/esm/ai/plugins/nft/index.js +63 -0
  702. package/dist/esm/ai/plugins/nft/index.js.map +1 -0
  703. package/dist/esm/ai/plugins/nft/schemas.d.ts +6 -0
  704. package/dist/esm/ai/plugins/nft/schemas.d.ts.map +1 -0
  705. package/dist/esm/ai/plugins/nft/schemas.js +270 -0
  706. package/dist/esm/ai/plugins/nft/schemas.js.map +1 -0
  707. package/dist/esm/ai/plugins/registry.d.ts +157 -0
  708. package/dist/esm/ai/plugins/registry.d.ts.map +1 -0
  709. package/dist/esm/ai/plugins/registry.js +365 -0
  710. package/dist/esm/ai/plugins/registry.js.map +1 -0
  711. package/dist/esm/ai/plugins/token/index.d.ts +35 -0
  712. package/dist/esm/ai/plugins/token/index.d.ts.map +1 -0
  713. package/dist/esm/ai/plugins/token/index.js +180 -0
  714. package/dist/esm/ai/plugins/token/index.js.map +1 -0
  715. package/dist/esm/ai/plugins/token/schemas.d.ts +5 -0
  716. package/dist/esm/ai/plugins/token/schemas.d.ts.map +1 -0
  717. package/dist/esm/ai/plugins/token/schemas.js +265 -0
  718. package/dist/esm/ai/plugins/token/schemas.js.map +1 -0
  719. package/dist/esm/ai/plugins/types.d.ts +176 -0
  720. package/dist/esm/ai/plugins/types.d.ts.map +1 -0
  721. package/dist/esm/ai/plugins/types.js +2 -0
  722. package/dist/esm/ai/plugins/types.js.map +1 -0
  723. package/dist/esm/ai/sap/adapter.d.ts +140 -0
  724. package/dist/esm/ai/sap/adapter.d.ts.map +1 -0
  725. package/dist/esm/ai/sap/adapter.js +177 -0
  726. package/dist/esm/ai/sap/adapter.js.map +1 -0
  727. package/dist/esm/ai/sap/discovery.d.ts +165 -0
  728. package/dist/esm/ai/sap/discovery.d.ts.map +1 -0
  729. package/dist/esm/ai/sap/discovery.js +311 -0
  730. package/dist/esm/ai/sap/discovery.js.map +1 -0
  731. package/dist/esm/ai/sap/index.d.ts +61 -0
  732. package/dist/esm/ai/sap/index.d.ts.map +1 -0
  733. package/dist/esm/ai/sap/index.js +58 -0
  734. package/dist/esm/ai/sap/index.js.map +1 -0
  735. package/dist/esm/ai/sap/pda.d.ts +205 -0
  736. package/dist/esm/ai/sap/pda.d.ts.map +1 -0
  737. package/dist/esm/ai/sap/pda.js +535 -0
  738. package/dist/esm/ai/sap/pda.js.map +1 -0
  739. package/dist/esm/ai/sap/program.d.ts +153 -0
  740. package/dist/esm/ai/sap/program.d.ts.map +1 -0
  741. package/dist/esm/ai/sap/program.js +222 -0
  742. package/dist/esm/ai/sap/program.js.map +1 -0
  743. package/dist/esm/ai/sap/registry.d.ts +218 -0
  744. package/dist/esm/ai/sap/registry.d.ts.map +1 -0
  745. package/dist/esm/ai/sap/registry.js +515 -0
  746. package/dist/esm/ai/sap/registry.js.map +1 -0
  747. package/dist/esm/ai/sap/scoring.d.ts +138 -0
  748. package/dist/esm/ai/sap/scoring.d.ts.map +1 -0
  749. package/dist/esm/ai/sap/scoring.js +262 -0
  750. package/dist/esm/ai/sap/scoring.js.map +1 -0
  751. package/dist/esm/ai/sap/subnetwork.d.ts +201 -0
  752. package/dist/esm/ai/sap/subnetwork.d.ts.map +1 -0
  753. package/dist/esm/ai/sap/subnetwork.js +361 -0
  754. package/dist/esm/ai/sap/subnetwork.js.map +1 -0
  755. package/dist/esm/ai/sap/types.d.ts +418 -0
  756. package/dist/esm/ai/sap/types.d.ts.map +1 -0
  757. package/dist/esm/ai/sap/types.js +210 -0
  758. package/dist/esm/ai/sap/types.js.map +1 -0
  759. package/dist/esm/ai/sap/validator.d.ts +160 -0
  760. package/dist/esm/ai/sap/validator.d.ts.map +1 -0
  761. package/dist/esm/ai/sap/validator.js +614 -0
  762. package/dist/esm/ai/sap/validator.js.map +1 -0
  763. package/package.json +67 -2
@@ -0,0 +1,624 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.SynapseMcpServer = exports.McpServerError = void 0;
37
+ const types_1 = require("./types");
38
+ /* ═══════════════════════════════════════════════════════════════
39
+ * MCP Errors
40
+ * ═══════════════════════════════════════════════════════════════ */
41
+ const MCP_ERRORS = {
42
+ PARSE_ERROR: { code: -32700, message: 'Parse error' },
43
+ INVALID_REQUEST: { code: -32600, message: 'Invalid Request' },
44
+ METHOD_NOT_FOUND: { code: -32601, message: 'Method not found' },
45
+ INVALID_PARAMS: { code: -32602, message: 'Invalid params' },
46
+ INTERNAL_ERROR: { code: -32603, message: 'Internal error' },
47
+ };
48
+ class McpServerError extends Error {
49
+ code;
50
+ data;
51
+ constructor(message, code = -32603, data) {
52
+ super(message);
53
+ this.code = code;
54
+ this.data = data;
55
+ this.name = 'McpServerError';
56
+ }
57
+ }
58
+ exports.McpServerError = McpServerError;
59
+ /* ═══════════════════════════════════════════════════════════════
60
+ * Zod → JSON Schema (deep conversion)
61
+ * ═══════════════════════════════════════════════════════════════ */
62
+ function zodToMcpSchema(schema) {
63
+ const result = convertZod(schema);
64
+ if (result.type === 'object')
65
+ return result;
66
+ return { type: 'object', properties: { value: result } };
67
+ }
68
+ function convertZod(z) {
69
+ if (!z || typeof z !== 'object')
70
+ return { type: 'string' };
71
+ const def = z?._def ?? z?.def;
72
+ if (!def)
73
+ return { type: 'string' };
74
+ const typeName = def.typeName ?? def.type;
75
+ const description = z?.description ?? def?.description;
76
+ switch (typeName) {
77
+ case 'ZodString': {
78
+ const base = { type: 'string' };
79
+ if (description)
80
+ base.description = description;
81
+ if (def.checks) {
82
+ for (const check of def.checks) {
83
+ if (check.kind === 'min')
84
+ base.minLength = check.value;
85
+ if (check.kind === 'max')
86
+ base.maxLength = check.value;
87
+ if (check.kind === 'url')
88
+ base.format = 'uri';
89
+ if (check.kind === 'email')
90
+ base.format = 'email';
91
+ }
92
+ }
93
+ return base;
94
+ }
95
+ case 'ZodNumber': {
96
+ const base = { type: 'number' };
97
+ if (description)
98
+ base.description = description;
99
+ if (def.checks) {
100
+ for (const check of def.checks) {
101
+ if (check.kind === 'min')
102
+ base.minimum = check.value;
103
+ if (check.kind === 'max')
104
+ base.maximum = check.value;
105
+ if (check.kind === 'int')
106
+ base.type = 'integer';
107
+ }
108
+ }
109
+ return base;
110
+ }
111
+ case 'ZodBoolean': {
112
+ const base = { type: 'boolean' };
113
+ if (description)
114
+ base.description = description;
115
+ return base;
116
+ }
117
+ case 'ZodArray': {
118
+ const base = {
119
+ type: 'array',
120
+ items: convertZod(def.type),
121
+ };
122
+ if (description)
123
+ base.description = description;
124
+ return base;
125
+ }
126
+ case 'ZodObject': {
127
+ const shape = z.shape ?? def.shape?.();
128
+ const properties = {};
129
+ const required = [];
130
+ if (shape) {
131
+ for (const [key, val] of Object.entries(shape)) {
132
+ properties[key] = convertZod(val);
133
+ const v = val;
134
+ const isOpt = v?._def?.typeName === 'ZodOptional' ||
135
+ v?._def?.typeName === 'ZodDefault' ||
136
+ v?.isOptional?.() === true;
137
+ if (!isOpt)
138
+ required.push(key);
139
+ }
140
+ }
141
+ const base = { type: 'object', properties };
142
+ if (required.length > 0)
143
+ base.required = required;
144
+ if (description)
145
+ base.description = description;
146
+ return base;
147
+ }
148
+ case 'ZodEnum': {
149
+ const values = def.values ?? def.entries;
150
+ const base = { type: 'string' };
151
+ if (Array.isArray(values))
152
+ base.enum = values;
153
+ if (description)
154
+ base.description = description;
155
+ return base;
156
+ }
157
+ case 'ZodOptional':
158
+ return convertZod(def.innerType);
159
+ case 'ZodDefault':
160
+ return { ...convertZod(def.innerType), default: def.defaultValue?.() };
161
+ case 'ZodNullable': {
162
+ const inner = convertZod(def.innerType);
163
+ return { ...inner, nullable: true };
164
+ }
165
+ case 'ZodRecord': {
166
+ const base = {
167
+ type: 'object',
168
+ additionalProperties: convertZod(def.valueType),
169
+ };
170
+ if (description)
171
+ base.description = description;
172
+ return base;
173
+ }
174
+ case 'ZodTuple': {
175
+ const items = (def.items ?? []).map((i) => convertZod(i));
176
+ const base = { type: 'array', items, minItems: items.length, maxItems: items.length };
177
+ if (description)
178
+ base.description = description;
179
+ return base;
180
+ }
181
+ case 'ZodLiteral': {
182
+ return { type: typeof def.value === 'number' ? 'number' : 'string', const: def.value };
183
+ }
184
+ case 'ZodUnion': {
185
+ const options = (def.options ?? []).map((o) => convertZod(o));
186
+ return { oneOf: options };
187
+ }
188
+ default: {
189
+ const base = { type: 'string' };
190
+ if (description)
191
+ base.description = description;
192
+ return base;
193
+ }
194
+ }
195
+ }
196
+ /* ═══════════════════════════════════════════════════════════════
197
+ * SynapseMcpServer
198
+ * ═══════════════════════════════════════════════════════════════ */
199
+ class SynapseMcpServer {
200
+ kit;
201
+ config;
202
+ toolDefs;
203
+ resourceDefs;
204
+ resourceTemplates;
205
+ _initialized = false;
206
+ _running = false;
207
+ _stdinBuffer = '';
208
+ // SSE state
209
+ _httpServer = null;
210
+ _sseClients = new Map();
211
+ constructor(kit, config = {}) {
212
+ this.kit = kit;
213
+ this.config = {
214
+ name: config.name ?? 'synapse-solana-mcp',
215
+ version: config.version ?? '2.0.0',
216
+ ...config,
217
+ };
218
+ // Pre-build tool definitions from kit
219
+ this.toolDefs = this.buildToolDefinitions();
220
+ this.resourceDefs = this.buildResourceDefinitions();
221
+ this.resourceTemplates = this.buildResourceTemplates();
222
+ }
223
+ /* ── Lifecycle ────────────────────────────────────────────── */
224
+ /**
225
+ * Start the MCP server on the configured transport.
226
+ */
227
+ async start() {
228
+ if (this._running)
229
+ return;
230
+ this._running = true;
231
+ const transport = this.config.transport ?? 'stdio';
232
+ if (transport === 'stdio') {
233
+ await this.startStdio();
234
+ }
235
+ else if (transport === 'sse') {
236
+ await this.startSse();
237
+ }
238
+ else {
239
+ throw new McpServerError(`Unknown transport: ${transport}`);
240
+ }
241
+ }
242
+ /**
243
+ * Stop the MCP server.
244
+ */
245
+ async stop() {
246
+ this._running = false;
247
+ if (this._httpServer) {
248
+ await new Promise((resolve) => {
249
+ this._httpServer.close(() => resolve());
250
+ });
251
+ this._httpServer = null;
252
+ }
253
+ // Cleanup SSE clients
254
+ for (const [, client] of this._sseClients) {
255
+ try {
256
+ client.res.end();
257
+ }
258
+ catch { /* noop */ }
259
+ }
260
+ this._sseClients.clear();
261
+ }
262
+ /* ── stdio Transport ──────────────────────────────────────── */
263
+ async startStdio() {
264
+ const stdin = process.stdin;
265
+ const stdout = process.stdout;
266
+ stdin.setEncoding('utf8');
267
+ stdin.resume();
268
+ stdin.on('data', (chunk) => {
269
+ this._stdinBuffer += chunk;
270
+ this.processStdinBuffer(stdout);
271
+ });
272
+ stdin.on('end', () => {
273
+ this._running = false;
274
+ });
275
+ if (this.config.debug) {
276
+ process.stderr.write(`[MCP] ${this.config.name} listening on stdio\n`);
277
+ }
278
+ }
279
+ processStdinBuffer(stdout) {
280
+ // MCP uses newline-delimited JSON
281
+ while (true) {
282
+ const newlineIdx = this._stdinBuffer.indexOf('\n');
283
+ if (newlineIdx === -1)
284
+ break;
285
+ const line = this._stdinBuffer.slice(0, newlineIdx).trim();
286
+ this._stdinBuffer = this._stdinBuffer.slice(newlineIdx + 1);
287
+ if (!line)
288
+ continue;
289
+ this.handleMessage(line)
290
+ .then((response) => {
291
+ if (response) {
292
+ stdout.write(JSON.stringify(response) + '\n');
293
+ }
294
+ })
295
+ .catch((err) => {
296
+ if (this.config.debug) {
297
+ process.stderr.write(`[MCP] Error: ${err}\n`);
298
+ }
299
+ });
300
+ }
301
+ }
302
+ /* ── SSE Transport ────────────────────────────────────────── */
303
+ async startSse() {
304
+ const http = await Promise.resolve().then(() => __importStar(require('http')));
305
+ const port = this.config.ssePort ?? 3001;
306
+ const basePath = (this.config.ssePath ?? '/mcp').replace(/\/$/, '');
307
+ this._httpServer = http.createServer(async (req, res) => {
308
+ const url = new URL(req.url ?? '/', `http://localhost:${port}`);
309
+ const path = url.pathname;
310
+ // CORS headers
311
+ res.setHeader('Access-Control-Allow-Origin', '*');
312
+ res.setHeader('Access-Control-Allow-Methods', 'GET, POST, OPTIONS');
313
+ res.setHeader('Access-Control-Allow-Headers', 'Content-Type, Authorization');
314
+ if (req.method === 'OPTIONS') {
315
+ res.writeHead(204);
316
+ res.end();
317
+ return;
318
+ }
319
+ // SSE endpoint — client subscribes here
320
+ if (path === `${basePath}/sse` && req.method === 'GET') {
321
+ const clientId = crypto.randomUUID();
322
+ res.writeHead(200, {
323
+ 'Content-Type': 'text/event-stream',
324
+ 'Cache-Control': 'no-cache',
325
+ Connection: 'keep-alive',
326
+ });
327
+ // Send the endpoint URL for posting messages
328
+ const messageUrl = `${basePath}/message?sessionId=${clientId}`;
329
+ res.write(`event: endpoint\ndata: ${messageUrl}\n\n`);
330
+ this._sseClients.set(clientId, { res, id: clientId });
331
+ req.on('close', () => {
332
+ this._sseClients.delete(clientId);
333
+ });
334
+ if (this.config.debug) {
335
+ process.stderr.write(`[MCP] SSE client connected: ${clientId}\n`);
336
+ }
337
+ return;
338
+ }
339
+ // Message endpoint — client sends JSON-RPC messages here
340
+ if (path === `${basePath}/message` && req.method === 'POST') {
341
+ const sessionId = url.searchParams.get('sessionId');
342
+ const client = sessionId ? this._sseClients.get(sessionId) : undefined;
343
+ if (!client) {
344
+ res.writeHead(404, { 'Content-Type': 'application/json' });
345
+ res.end(JSON.stringify({ error: 'Session not found' }));
346
+ return;
347
+ }
348
+ let body = '';
349
+ for await (const chunk of req) {
350
+ body += chunk;
351
+ }
352
+ try {
353
+ const response = await this.handleMessage(body);
354
+ if (response) {
355
+ // Send response via SSE
356
+ client.res.write(`event: message\ndata: ${JSON.stringify(response)}\n\n`);
357
+ }
358
+ res.writeHead(202, { 'Content-Type': 'application/json' });
359
+ res.end(JSON.stringify({ ok: true }));
360
+ }
361
+ catch (err) {
362
+ res.writeHead(400, { 'Content-Type': 'application/json' });
363
+ res.end(JSON.stringify({ error: String(err) }));
364
+ }
365
+ return;
366
+ }
367
+ // Health check
368
+ if (path === `${basePath}/health`) {
369
+ res.writeHead(200, { 'Content-Type': 'application/json' });
370
+ res.end(JSON.stringify({
371
+ status: 'ok',
372
+ server: this.config.name,
373
+ version: this.config.version,
374
+ tools: this.toolDefs.length,
375
+ resources: this.resourceDefs.length,
376
+ connectedClients: this._sseClients.size,
377
+ }));
378
+ return;
379
+ }
380
+ res.writeHead(404);
381
+ res.end('Not found');
382
+ });
383
+ await new Promise((resolve) => {
384
+ this._httpServer.listen(port, () => {
385
+ if (this.config.debug) {
386
+ process.stderr.write(`[MCP] ${this.config.name} SSE server on http://localhost:${port}${basePath}\n`);
387
+ }
388
+ resolve();
389
+ });
390
+ });
391
+ }
392
+ /* ── Message Handling ─────────────────────────────────────── */
393
+ async handleMessage(raw) {
394
+ let parsed;
395
+ try {
396
+ parsed = JSON.parse(raw);
397
+ }
398
+ catch {
399
+ return this.errorResponse(null, MCP_ERRORS.PARSE_ERROR.code, MCP_ERRORS.PARSE_ERROR.message);
400
+ }
401
+ if (!parsed.jsonrpc || parsed.jsonrpc !== '2.0') {
402
+ return this.errorResponse(parsed.id ?? null, MCP_ERRORS.INVALID_REQUEST.code, MCP_ERRORS.INVALID_REQUEST.message);
403
+ }
404
+ // Notifications (no id) — don't respond
405
+ if (parsed.id === undefined || parsed.id === null) {
406
+ await this.handleNotification(parsed);
407
+ return null;
408
+ }
409
+ if (this.config.debug) {
410
+ process.stderr.write(`[MCP] ← ${parsed.method}\n`);
411
+ }
412
+ try {
413
+ const result = await this.dispatch(parsed);
414
+ return {
415
+ jsonrpc: types_1.MCP_JSONRPC_VERSION,
416
+ id: parsed.id,
417
+ result,
418
+ };
419
+ }
420
+ catch (err) {
421
+ const mcpErr = err instanceof McpServerError ? err : new McpServerError(String(err));
422
+ return this.errorResponse(parsed.id, mcpErr.code, mcpErr.message, mcpErr.data);
423
+ }
424
+ }
425
+ async dispatch(req) {
426
+ switch (req.method) {
427
+ case 'initialize':
428
+ return this.handleInitialize(req.params);
429
+ case 'initialized':
430
+ return {}; // acknowledgment
431
+ case 'ping':
432
+ return {}; // pong
433
+ case 'tools/list':
434
+ return this.handleToolsList(req.params);
435
+ case 'tools/call':
436
+ return this.handleToolsCall(req.params);
437
+ case 'resources/list':
438
+ return this.handleResourcesList(req.params);
439
+ case 'resources/read':
440
+ return this.handleResourcesRead(req.params);
441
+ case 'resources/templates/list':
442
+ return this.handleResourceTemplatesList();
443
+ case 'prompts/list':
444
+ return { prompts: [] }; // No prompts for now
445
+ case 'prompts/get':
446
+ throw new McpServerError('Prompt not found', MCP_ERRORS.INVALID_PARAMS.code);
447
+ case 'completion/complete':
448
+ return { completion: { values: [], hasMore: false, total: 0 } };
449
+ case 'logging/setLevel':
450
+ return {};
451
+ default:
452
+ throw new McpServerError(`Unknown method: ${req.method}`, MCP_ERRORS.METHOD_NOT_FOUND.code);
453
+ }
454
+ }
455
+ async handleNotification(notif) {
456
+ switch (notif.method) {
457
+ case 'notifications/initialized':
458
+ this._initialized = true;
459
+ break;
460
+ case 'notifications/cancelled':
461
+ // Handle cancellation if needed
462
+ break;
463
+ default:
464
+ if (this.config.debug) {
465
+ process.stderr.write(`[MCP] Unhandled notification: ${notif.method}\n`);
466
+ }
467
+ }
468
+ }
469
+ /* ── MCP Method Handlers ──────────────────────────────────── */
470
+ handleInitialize(params) {
471
+ this._initialized = true;
472
+ const capabilities = {
473
+ tools: { listChanged: false },
474
+ resources: { subscribe: false, listChanged: false },
475
+ ...this.config.capabilities,
476
+ };
477
+ const summary = this.kit.summary();
478
+ return {
479
+ protocolVersion: types_1.MCP_PROTOCOL_VERSION,
480
+ capabilities,
481
+ serverInfo: {
482
+ name: this.config.name,
483
+ version: this.config.version,
484
+ },
485
+ instructions: this.config.instructions ??
486
+ `Synapse Solana MCP Server — ${summary.totalTools} tools across ${summary.totalProtocols} protocols. ` +
487
+ `Plugins: ${summary.plugins.map((p) => p.name).join(', ')}. ` +
488
+ `Provides full Solana blockchain access: tokens, NFTs, DeFi, staking, domains, oracles, and more.`,
489
+ };
490
+ }
491
+ handleToolsList(_params) {
492
+ return { tools: this.toolDefs };
493
+ }
494
+ async handleToolsCall(params) {
495
+ const { name, arguments: args } = params;
496
+ if (!name) {
497
+ throw new McpServerError('Tool name is required', MCP_ERRORS.INVALID_PARAMS.code);
498
+ }
499
+ // Find the tool in the kit
500
+ const toolMap = this.kit.getToolMap();
501
+ const tool = toolMap[name];
502
+ if (!tool) {
503
+ throw new McpServerError(`Tool not found: "${name}". Available: ${Object.keys(toolMap).slice(0, 10).join(', ')}...`, MCP_ERRORS.INVALID_PARAMS.code);
504
+ }
505
+ try {
506
+ // Invoke the LangChain tool
507
+ const result = await tool.invoke(args ?? {});
508
+ const text = typeof result === 'string' ? result : JSON.stringify(result, null, 2);
509
+ return {
510
+ content: [{ type: 'text', text }],
511
+ isError: false,
512
+ };
513
+ }
514
+ catch (err) {
515
+ const errMsg = err instanceof Error ? err.message : String(err);
516
+ return {
517
+ content: [{ type: 'text', text: `Error executing ${name}: ${errMsg}` }],
518
+ isError: true,
519
+ };
520
+ }
521
+ }
522
+ handleResourcesList(_params) {
523
+ return { resources: this.resourceDefs };
524
+ }
525
+ async handleResourcesRead(params) {
526
+ const { uri } = params;
527
+ // Try to match resource templates and execute
528
+ // For now, return a description of the resource
529
+ return {
530
+ contents: [{
531
+ uri,
532
+ mimeType: 'application/json',
533
+ text: JSON.stringify({
534
+ uri,
535
+ message: `Resource ${uri} — use the corresponding tool to fetch actual data.`,
536
+ availableTools: Object.keys(this.kit.getToolMap()).slice(0, 20),
537
+ }, null, 2),
538
+ }],
539
+ };
540
+ }
541
+ handleResourceTemplatesList() {
542
+ return { resourceTemplates: this.resourceTemplates };
543
+ }
544
+ /* ── Builders ─────────────────────────────────────────────── */
545
+ buildToolDefinitions() {
546
+ const defs = [];
547
+ const descriptors = this.kit.getMcpToolDescriptors();
548
+ for (const desc of descriptors) {
549
+ // Find the matching protocol method for deep schema conversion
550
+ const pluginTools = this.kit.getPluginTools(desc.plugin);
551
+ const method = pluginTools
552
+ ? this.findMethodByName(desc.plugin, desc.name)
553
+ : undefined;
554
+ defs.push({
555
+ name: desc.name,
556
+ description: desc.description,
557
+ inputSchema: method
558
+ ? zodToMcpSchema(method.input)
559
+ : desc.inputSchema,
560
+ });
561
+ }
562
+ return defs;
563
+ }
564
+ buildResourceDefinitions() {
565
+ return this.kit.getMcpResourceDescriptors().map((r) => ({
566
+ uri: r.uri,
567
+ name: r.name,
568
+ description: r.description,
569
+ mimeType: r.mimeType,
570
+ }));
571
+ }
572
+ buildResourceTemplates() {
573
+ // Convert resource URIs with {param} into templates
574
+ return this.kit.getMcpResourceDescriptors()
575
+ .filter((r) => r.uri.includes('{'))
576
+ .map((r) => ({
577
+ uriTemplate: r.uri,
578
+ name: r.name,
579
+ description: r.description,
580
+ mimeType: r.mimeType,
581
+ }));
582
+ }
583
+ findMethodByName(pluginId, toolName) {
584
+ const summary = this.kit.summary();
585
+ const pluginInfo = summary.plugins.find((p) => p.id === pluginId);
586
+ if (!pluginInfo)
587
+ return undefined;
588
+ for (const protoId of pluginInfo.protocols) {
589
+ const toolkit = this.kit.getProtocolToolkit(pluginId, protoId);
590
+ if (toolkit) {
591
+ const method = toolkit.methods.find((m) => `${protoId}_${m.name}` === toolName);
592
+ if (method)
593
+ return method;
594
+ }
595
+ }
596
+ return undefined;
597
+ }
598
+ /* ── Response Helpers ─────────────────────────────────────── */
599
+ errorResponse(id, code, message, data) {
600
+ return {
601
+ jsonrpc: types_1.MCP_JSONRPC_VERSION,
602
+ id: id ?? 0,
603
+ error: { code, message, ...(data !== undefined ? { data } : {}) },
604
+ };
605
+ }
606
+ /* ── Introspection ────────────────────────────────────────── */
607
+ /**
608
+ * Get server info and stats.
609
+ */
610
+ info() {
611
+ return {
612
+ name: this.config.name,
613
+ version: this.config.version,
614
+ transport: this.config.transport ?? 'stdio',
615
+ tools: this.toolDefs.length,
616
+ resources: this.resourceDefs.length,
617
+ resourceTemplates: this.resourceTemplates.length,
618
+ running: this._running,
619
+ initialized: this._initialized,
620
+ };
621
+ }
622
+ }
623
+ exports.SynapseMcpServer = SynapseMcpServer;
624
+ //# sourceMappingURL=server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../../src/ai/mcp/server.ts"],"names":[],"mappings":"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"}