@gala-chain/launchpad-mcp-server 5.0.3 → 5.0.4-beta.1

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 (522) hide show
  1. package/README.md +49 -21
  2. package/dist/ai-docs.json +7357 -0
  3. package/dist/constants/mcpToolNames.d.ts +3 -1
  4. package/dist/constants/mcpToolNames.d.ts.map +1 -1
  5. package/dist/constants/mcpToolNames.js +2 -1
  6. package/dist/constants/mcpToolNames.js.map +1 -1
  7. package/dist/explain-sdk-usage-ai.json +3445 -0
  8. package/dist/generated/version.d.ts +1 -1
  9. package/dist/generated/version.d.ts.map +1 -1
  10. package/dist/generated/version.js +1 -1
  11. package/dist/generated/version.js.map +1 -1
  12. package/dist/prompts/account.d.ts +24 -0
  13. package/dist/prompts/account.d.ts.map +1 -0
  14. package/dist/prompts/account.js +89 -0
  15. package/dist/prompts/account.js.map +1 -0
  16. package/dist/prompts/api-keys.d.ts +36 -0
  17. package/dist/prompts/api-keys.d.ts.map +1 -0
  18. package/dist/prompts/api-keys.js +251 -0
  19. package/dist/prompts/api-keys.js.map +1 -0
  20. package/dist/prompts/auth.d.ts +29 -0
  21. package/dist/prompts/auth.d.ts.map +1 -0
  22. package/dist/prompts/auth.js +127 -0
  23. package/dist/prompts/auth.js.map +1 -0
  24. package/dist/prompts/balances.d.ts.map +1 -1
  25. package/dist/prompts/balances.js +17 -17
  26. package/dist/prompts/balances.js.map +1 -1
  27. package/dist/prompts/bans.d.ts +23 -0
  28. package/dist/prompts/bans.d.ts.map +1 -0
  29. package/dist/prompts/bans.js +82 -0
  30. package/dist/prompts/bans.js.map +1 -0
  31. package/dist/prompts/bridge.d.ts +2 -1
  32. package/dist/prompts/bridge.d.ts.map +1 -1
  33. package/dist/prompts/bridge.js +91 -227
  34. package/dist/prompts/bridge.js.map +1 -1
  35. package/dist/prompts/burns.d.ts +30 -0
  36. package/dist/prompts/burns.d.ts.map +1 -0
  37. package/dist/prompts/burns.js +127 -0
  38. package/dist/prompts/burns.js.map +1 -0
  39. package/dist/prompts/chat-messages.d.ts +21 -0
  40. package/dist/prompts/chat-messages.d.ts.map +1 -0
  41. package/dist/prompts/chat-messages.js +103 -0
  42. package/dist/prompts/chat-messages.js.map +1 -0
  43. package/dist/prompts/chat.d.ts +67 -0
  44. package/dist/prompts/chat.d.ts.map +1 -0
  45. package/dist/prompts/chat.js +355 -0
  46. package/dist/prompts/chat.js.map +1 -0
  47. package/dist/prompts/comments.d.ts +29 -0
  48. package/dist/prompts/comments.d.ts.map +1 -0
  49. package/dist/prompts/comments.js +133 -0
  50. package/dist/prompts/comments.js.map +1 -0
  51. package/dist/prompts/content-flags.d.ts +29 -0
  52. package/dist/prompts/content-flags.d.ts.map +1 -0
  53. package/dist/prompts/content-flags.js +248 -0
  54. package/dist/prompts/content-flags.js.map +1 -0
  55. package/dist/prompts/content-reactions.d.ts +29 -0
  56. package/dist/prompts/content-reactions.d.ts.map +1 -0
  57. package/dist/prompts/content-reactions.js +77 -0
  58. package/dist/prompts/content-reactions.js.map +1 -0
  59. package/dist/prompts/create-token.d.ts.map +1 -1
  60. package/dist/prompts/create-token.js +11 -18
  61. package/dist/prompts/create-token.js.map +1 -1
  62. package/dist/prompts/dex-trading.d.ts.map +1 -1
  63. package/dist/prompts/dex-trading.js +11 -42
  64. package/dist/prompts/dex-trading.js.map +1 -1
  65. package/dist/prompts/discover-tokens.d.ts.map +1 -1
  66. package/dist/prompts/discover-tokens.js +11 -26
  67. package/dist/prompts/discover-tokens.js.map +1 -1
  68. package/dist/prompts/event-subscriptions.d.ts +45 -0
  69. package/dist/prompts/event-subscriptions.d.ts.map +1 -0
  70. package/dist/prompts/event-subscriptions.js +330 -0
  71. package/dist/prompts/event-subscriptions.js.map +1 -0
  72. package/dist/prompts/explore-dex-pools.d.ts +2 -0
  73. package/dist/prompts/explore-dex-pools.d.ts.map +1 -1
  74. package/dist/prompts/explore-dex-pools.js +26 -104
  75. package/dist/prompts/explore-dex-pools.js.map +1 -1
  76. package/dist/prompts/factories/balance-prompt-factory.d.ts +102 -0
  77. package/dist/prompts/factories/balance-prompt-factory.d.ts.map +1 -0
  78. package/dist/prompts/factories/balance-prompt-factory.js +176 -0
  79. package/dist/prompts/factories/balance-prompt-factory.js.map +1 -0
  80. package/dist/prompts/factories/ban-management-factory.d.ts +90 -0
  81. package/dist/prompts/factories/ban-management-factory.d.ts.map +1 -0
  82. package/dist/prompts/factories/ban-management-factory.js +330 -0
  83. package/dist/prompts/factories/ban-management-factory.js.map +1 -0
  84. package/dist/prompts/factories/calculation-prompt-factory.d.ts +119 -0
  85. package/dist/prompts/factories/calculation-prompt-factory.d.ts.map +1 -0
  86. package/dist/prompts/factories/calculation-prompt-factory.js +183 -0
  87. package/dist/prompts/factories/calculation-prompt-factory.js.map +1 -0
  88. package/dist/prompts/factories/discovery-prompt-factory.d.ts +135 -0
  89. package/dist/prompts/factories/discovery-prompt-factory.d.ts.map +1 -0
  90. package/dist/prompts/factories/discovery-prompt-factory.js +240 -0
  91. package/dist/prompts/factories/discovery-prompt-factory.js.map +1 -0
  92. package/dist/prompts/factories/event-subscription-factory.d.ts +177 -0
  93. package/dist/prompts/factories/event-subscription-factory.d.ts.map +1 -0
  94. package/dist/prompts/factories/event-subscription-factory.js +329 -0
  95. package/dist/prompts/factories/event-subscription-factory.js.map +1 -0
  96. package/dist/prompts/factories/filtered-list-prompt-factory.d.ts +95 -0
  97. package/dist/prompts/factories/filtered-list-prompt-factory.d.ts.map +1 -0
  98. package/dist/prompts/factories/filtered-list-prompt-factory.js +147 -0
  99. package/dist/prompts/factories/filtered-list-prompt-factory.js.map +1 -0
  100. package/dist/prompts/factories/index.d.ts +33 -0
  101. package/dist/prompts/factories/index.d.ts.map +1 -0
  102. package/dist/prompts/factories/index.js +91 -0
  103. package/dist/prompts/factories/index.js.map +1 -0
  104. package/dist/prompts/factories/invite-management-factory.d.ts +88 -0
  105. package/dist/prompts/factories/invite-management-factory.d.ts.map +1 -0
  106. package/dist/prompts/factories/invite-management-factory.js +262 -0
  107. package/dist/prompts/factories/invite-management-factory.js.map +1 -0
  108. package/dist/prompts/factories/reaction-prompt-factory.d.ts +81 -0
  109. package/dist/prompts/factories/reaction-prompt-factory.d.ts.map +1 -0
  110. package/dist/prompts/factories/reaction-prompt-factory.js +188 -0
  111. package/dist/prompts/factories/reaction-prompt-factory.js.map +1 -0
  112. package/dist/prompts/factories/simple-operation-factory.d.ts +166 -0
  113. package/dist/prompts/factories/simple-operation-factory.d.ts.map +1 -0
  114. package/dist/prompts/factories/simple-operation-factory.js +218 -0
  115. package/dist/prompts/factories/simple-operation-factory.js.map +1 -0
  116. package/dist/prompts/index.d.ts +31 -6
  117. package/dist/prompts/index.d.ts.map +1 -1
  118. package/dist/prompts/index.js +136 -5
  119. package/dist/prompts/index.js.map +1 -1
  120. package/dist/prompts/locks.d.ts.map +1 -1
  121. package/dist/prompts/locks.js +32 -56
  122. package/dist/prompts/locks.js.map +1 -1
  123. package/dist/prompts/moderators.d.ts +22 -0
  124. package/dist/prompts/moderators.d.ts.map +1 -0
  125. package/dist/prompts/moderators.js +62 -0
  126. package/dist/prompts/moderators.js.map +1 -0
  127. package/dist/prompts/monitoring.d.ts +3 -1
  128. package/dist/prompts/monitoring.d.ts.map +1 -1
  129. package/dist/prompts/monitoring.js +52 -140
  130. package/dist/prompts/monitoring.js.map +1 -1
  131. package/dist/prompts/overseers.d.ts +34 -0
  132. package/dist/prompts/overseers.d.ts.map +1 -0
  133. package/dist/prompts/overseers.js +117 -0
  134. package/dist/prompts/overseers.js.map +1 -0
  135. package/dist/prompts/pools.d.ts +22 -20
  136. package/dist/prompts/pools.d.ts.map +1 -1
  137. package/dist/prompts/pools.js +150 -251
  138. package/dist/prompts/pools.js.map +1 -1
  139. package/dist/prompts/portfolio.d.ts.map +1 -1
  140. package/dist/prompts/portfolio.js +1 -9
  141. package/dist/prompts/portfolio.js.map +1 -1
  142. package/dist/prompts/prompt-factories.d.ts +179 -0
  143. package/dist/prompts/prompt-factories.d.ts.map +1 -0
  144. package/dist/prompts/prompt-factories.js +230 -0
  145. package/dist/prompts/prompt-factories.js.map +1 -0
  146. package/dist/prompts/referrals.d.ts +27 -0
  147. package/dist/prompts/referrals.d.ts.map +1 -0
  148. package/dist/prompts/referrals.js +176 -0
  149. package/dist/prompts/referrals.js.map +1 -0
  150. package/dist/prompts/streaming.d.ts +84 -0
  151. package/dist/prompts/streaming.d.ts.map +1 -0
  152. package/dist/prompts/streaming.js +411 -0
  153. package/dist/prompts/streaming.js.map +1 -0
  154. package/dist/prompts/tier1-bridge-operations.d.ts +30 -0
  155. package/dist/prompts/tier1-bridge-operations.d.ts.map +1 -0
  156. package/dist/prompts/tier1-bridge-operations.js +634 -0
  157. package/dist/prompts/tier1-bridge-operations.js.map +1 -0
  158. package/dist/prompts/tier1-liquidity-management.d.ts +30 -0
  159. package/dist/prompts/tier1-liquidity-management.d.ts.map +1 -0
  160. package/dist/prompts/tier1-liquidity-management.js +560 -0
  161. package/dist/prompts/tier1-liquidity-management.js.map +1 -0
  162. package/dist/prompts/tier1-pool-discovery.d.ts +30 -0
  163. package/dist/prompts/tier1-pool-discovery.d.ts.map +1 -0
  164. package/dist/prompts/tier1-pool-discovery.js +221 -0
  165. package/dist/prompts/tier1-pool-discovery.js.map +1 -0
  166. package/dist/prompts/tier1-price-history.d.ts +30 -0
  167. package/dist/prompts/tier1-price-history.d.ts.map +1 -0
  168. package/dist/prompts/tier1-price-history.js +429 -0
  169. package/dist/prompts/tier1-price-history.js.map +1 -0
  170. package/dist/prompts/tier1-token-analysis.d.ts +30 -0
  171. package/dist/prompts/tier1-token-analysis.d.ts.map +1 -0
  172. package/dist/prompts/tier1-token-analysis.js +376 -0
  173. package/dist/prompts/tier1-token-analysis.js.map +1 -0
  174. package/dist/prompts/tier2-account-setup.d.ts +24 -0
  175. package/dist/prompts/tier2-account-setup.d.ts.map +1 -0
  176. package/dist/prompts/tier2-account-setup.js +206 -0
  177. package/dist/prompts/tier2-account-setup.js.map +1 -0
  178. package/dist/prompts/tier2-advanced-liquidity.d.ts +24 -0
  179. package/dist/prompts/tier2-advanced-liquidity.d.ts.map +1 -0
  180. package/dist/prompts/tier2-advanced-liquidity.js +298 -0
  181. package/dist/prompts/tier2-advanced-liquidity.js.map +1 -0
  182. package/dist/prompts/tier2-asset-management.d.ts +25 -0
  183. package/dist/prompts/tier2-asset-management.d.ts.map +1 -0
  184. package/dist/prompts/tier2-asset-management.js +246 -0
  185. package/dist/prompts/tier2-asset-management.js.map +1 -0
  186. package/dist/prompts/tier2-token-lifecycle.d.ts +25 -0
  187. package/dist/prompts/tier2-token-lifecycle.d.ts.map +1 -0
  188. package/dist/prompts/tier2-token-lifecycle.js +241 -0
  189. package/dist/prompts/tier2-token-lifecycle.js.map +1 -0
  190. package/dist/prompts/tier3-community-engagement.d.ts +26 -0
  191. package/dist/prompts/tier3-community-engagement.d.ts.map +1 -0
  192. package/dist/prompts/tier3-community-engagement.js +610 -0
  193. package/dist/prompts/tier3-community-engagement.js.map +1 -0
  194. package/dist/prompts/tier3-moderation-workflows.d.ts +31 -0
  195. package/dist/prompts/tier3-moderation-workflows.d.ts.map +1 -0
  196. package/dist/prompts/tier3-moderation-workflows.js +511 -0
  197. package/dist/prompts/tier3-moderation-workflows.js.map +1 -0
  198. package/dist/prompts/tier3-streaming-management.d.ts +26 -0
  199. package/dist/prompts/tier3-streaming-management.d.ts.map +1 -0
  200. package/dist/prompts/tier3-streaming-management.js +797 -0
  201. package/dist/prompts/tier3-streaming-management.js.map +1 -0
  202. package/dist/prompts/token-bans.d.ts +27 -0
  203. package/dist/prompts/token-bans.d.ts.map +1 -0
  204. package/dist/prompts/token-bans.js +77 -0
  205. package/dist/prompts/token-bans.js.map +1 -0
  206. package/dist/prompts/trades.d.ts +22 -0
  207. package/dist/prompts/trades.d.ts.map +1 -0
  208. package/dist/prompts/trades.js +107 -0
  209. package/dist/prompts/trades.js.map +1 -0
  210. package/dist/prompts/trading-calculations.d.ts +3 -1
  211. package/dist/prompts/trading-calculations.d.ts.map +1 -1
  212. package/dist/prompts/trading-calculations.js +134 -270
  213. package/dist/prompts/trading-calculations.js.map +1 -1
  214. package/dist/prompts/trading.d.ts +10 -1
  215. package/dist/prompts/trading.d.ts.map +1 -1
  216. package/dist/prompts/trading.js +128 -2
  217. package/dist/prompts/trading.js.map +1 -1
  218. package/dist/prompts/transfers.d.ts +2 -1
  219. package/dist/prompts/transfers.d.ts.map +1 -1
  220. package/dist/prompts/transfers.js +26 -30
  221. package/dist/prompts/transfers.js.map +1 -1
  222. package/dist/prompts/uploads.d.ts +19 -0
  223. package/dist/prompts/uploads.d.ts.map +1 -0
  224. package/dist/prompts/uploads.js +114 -0
  225. package/dist/prompts/uploads.js.map +1 -0
  226. package/dist/prompts/utility-tools.d.ts.map +1 -1
  227. package/dist/prompts/utility-tools.js +27 -18
  228. package/dist/prompts/utility-tools.js.map +1 -1
  229. package/dist/prompts/utils/index.d.ts +21 -0
  230. package/dist/prompts/utils/index.d.ts.map +1 -0
  231. package/dist/prompts/utils/index.js +38 -0
  232. package/dist/prompts/utils/index.js.map +1 -0
  233. package/dist/prompts/utils/pagination-helpers.d.ts +95 -0
  234. package/dist/prompts/utils/pagination-helpers.d.ts.map +1 -0
  235. package/dist/prompts/utils/pagination-helpers.js +121 -0
  236. package/dist/prompts/utils/pagination-helpers.js.map +1 -0
  237. package/dist/prompts/utils/workflowTemplates.d.ts.map +1 -1
  238. package/dist/prompts/utils/workflowTemplates.js +4 -3
  239. package/dist/prompts/utils/workflowTemplates.js.map +1 -1
  240. package/dist/prompts/wallet.d.ts +24 -0
  241. package/dist/prompts/wallet.d.ts.map +1 -0
  242. package/dist/prompts/wallet.js +139 -0
  243. package/dist/prompts/wallet.js.map +1 -0
  244. package/dist/schemas/common-schemas.d.ts +890 -0
  245. package/dist/schemas/common-schemas.d.ts.map +1 -1
  246. package/dist/schemas/common-schemas.js +853 -1
  247. package/dist/schemas/common-schemas.js.map +1 -1
  248. package/dist/server.d.ts +31 -3
  249. package/dist/server.d.ts.map +1 -1
  250. package/dist/server.js +68 -7
  251. package/dist/server.js.map +1 -1
  252. package/dist/tools/api-keys/index.d.ts +41 -0
  253. package/dist/tools/api-keys/index.d.ts.map +1 -0
  254. package/dist/tools/api-keys/index.js +245 -0
  255. package/dist/tools/api-keys/index.js.map +1 -0
  256. package/dist/tools/auth/index.d.ts +19 -0
  257. package/dist/tools/auth/index.d.ts.map +1 -0
  258. package/dist/tools/auth/index.js +138 -0
  259. package/dist/tools/auth/index.js.map +1 -0
  260. package/dist/tools/balance/helpers/format-balance.d.ts +86 -0
  261. package/dist/tools/balance/helpers/format-balance.d.ts.map +1 -0
  262. package/dist/tools/balance/helpers/format-balance.js +87 -0
  263. package/dist/tools/balance/helpers/format-balance.js.map +1 -0
  264. package/dist/tools/balance/index.d.ts +4 -4
  265. package/dist/tools/balance/index.d.ts.map +1 -1
  266. package/dist/tools/balance/index.js +64 -176
  267. package/dist/tools/balance/index.js.map +1 -1
  268. package/dist/tools/ban/index.d.ts +37 -0
  269. package/dist/tools/ban/index.d.ts.map +1 -0
  270. package/dist/tools/ban/index.js +206 -0
  271. package/dist/tools/ban/index.js.map +1 -0
  272. package/dist/tools/bridge/helpers/bridgeable-token-tools.d.ts +87 -0
  273. package/dist/tools/bridge/helpers/bridgeable-token-tools.d.ts.map +1 -0
  274. package/dist/tools/bridge/helpers/bridgeable-token-tools.js +130 -0
  275. package/dist/tools/bridge/helpers/bridgeable-token-tools.js.map +1 -0
  276. package/dist/tools/bridge/helpers/external-chain-balance-tools.d.ts +87 -0
  277. package/dist/tools/bridge/helpers/external-chain-balance-tools.d.ts.map +1 -0
  278. package/dist/tools/bridge/helpers/external-chain-balance-tools.js +167 -0
  279. package/dist/tools/bridge/helpers/external-chain-balance-tools.js.map +1 -0
  280. package/dist/tools/bridge/index.d.ts +3 -7
  281. package/dist/tools/bridge/index.d.ts.map +1 -1
  282. package/dist/tools/bridge/index.js +89 -371
  283. package/dist/tools/bridge/index.js.map +1 -1
  284. package/dist/tools/burns/index.d.ts.map +1 -1
  285. package/dist/tools/burns/index.js +8 -36
  286. package/dist/tools/burns/index.js.map +1 -1
  287. package/dist/tools/chat/getPinnedChatMessage.d.ts +15 -0
  288. package/dist/tools/chat/getPinnedChatMessage.d.ts.map +1 -0
  289. package/dist/tools/chat/getPinnedChatMessage.js +37 -0
  290. package/dist/tools/chat/getPinnedChatMessage.js.map +1 -0
  291. package/dist/tools/chat/index.d.ts +73 -0
  292. package/dist/tools/chat/index.d.ts.map +1 -0
  293. package/dist/tools/chat/index.js +359 -0
  294. package/dist/tools/chat/index.js.map +1 -0
  295. package/dist/tools/chat/pinChatMessage.d.ts +16 -0
  296. package/dist/tools/chat/pinChatMessage.d.ts.map +1 -0
  297. package/dist/tools/chat/pinChatMessage.js +51 -0
  298. package/dist/tools/chat/pinChatMessage.js.map +1 -0
  299. package/dist/tools/chat/unpinChatMessage.d.ts +16 -0
  300. package/dist/tools/chat/unpinChatMessage.d.ts.map +1 -0
  301. package/dist/tools/chat/unpinChatMessage.js +39 -0
  302. package/dist/tools/chat/unpinChatMessage.js.map +1 -0
  303. package/dist/tools/chat-messages/index.d.ts +35 -0
  304. package/dist/tools/chat-messages/index.d.ts.map +1 -0
  305. package/dist/tools/chat-messages/index.js +165 -0
  306. package/dist/tools/chat-messages/index.js.map +1 -0
  307. package/dist/tools/comments/index.d.ts +44 -0
  308. package/dist/tools/comments/index.d.ts.map +1 -0
  309. package/dist/tools/comments/index.js +171 -0
  310. package/dist/tools/comments/index.js.map +1 -0
  311. package/dist/tools/content-flags/index.d.ts +38 -0
  312. package/dist/tools/content-flags/index.d.ts.map +1 -0
  313. package/dist/tools/content-flags/index.js +282 -0
  314. package/dist/tools/content-flags/index.js.map +1 -0
  315. package/dist/tools/content-reactions/index.d.ts +43 -0
  316. package/dist/tools/content-reactions/index.d.ts.map +1 -0
  317. package/dist/tools/content-reactions/index.js +135 -0
  318. package/dist/tools/content-reactions/index.js.map +1 -0
  319. package/dist/tools/creation/index.d.ts.map +1 -1
  320. package/dist/tools/creation/index.js +2 -5
  321. package/dist/tools/creation/index.js.map +1 -1
  322. package/dist/tools/dex/fetchAllDexPools.d.ts.map +1 -1
  323. package/dist/tools/dex/fetchAllDexPools.js +5 -21
  324. package/dist/tools/dex/fetchAllDexPools.js.map +1 -1
  325. package/dist/tools/dex/fetchDexPools.d.ts.map +1 -1
  326. package/dist/tools/dex/fetchDexPools.js +11 -28
  327. package/dist/tools/dex/fetchDexPools.js.map +1 -1
  328. package/dist/tools/dex/helpers.d.ts +479 -0
  329. package/dist/tools/dex/helpers.d.ts.map +1 -0
  330. package/dist/tools/dex/helpers.js +570 -0
  331. package/dist/tools/dex/helpers.js.map +1 -0
  332. package/dist/tools/dex/index.d.ts +50 -11
  333. package/dist/tools/dex/index.d.ts.map +1 -1
  334. package/dist/tools/dex/index.js +124 -486
  335. package/dist/tools/dex/index.js.map +1 -1
  336. package/dist/tools/dex/leaderboard.d.ts.map +1 -1
  337. package/dist/tools/dex/leaderboard.js +5 -70
  338. package/dist/tools/dex/leaderboard.js.map +1 -1
  339. package/dist/tools/dex/liquidity-positions.d.ts.map +1 -1
  340. package/dist/tools/dex/liquidity-positions.js +20 -91
  341. package/dist/tools/dex/liquidity-positions.js.map +1 -1
  342. package/dist/tools/dex/volume.d.ts.map +1 -1
  343. package/dist/tools/dex/volume.js +6 -21
  344. package/dist/tools/dex/volume.js.map +1 -1
  345. package/dist/tools/dex-analytics/index.d.ts +48 -0
  346. package/dist/tools/dex-analytics/index.d.ts.map +1 -0
  347. package/dist/tools/dex-analytics/index.js +111 -0
  348. package/dist/tools/dex-analytics/index.js.map +1 -0
  349. package/dist/tools/dex-liquidity/index.d.ts +22 -0
  350. package/dist/tools/dex-liquidity/index.d.ts.map +1 -0
  351. package/dist/tools/dex-liquidity/index.js +384 -0
  352. package/dist/tools/dex-liquidity/index.js.map +1 -0
  353. package/dist/tools/dex-pools/index.d.ts +60 -0
  354. package/dist/tools/dex-pools/index.d.ts.map +1 -0
  355. package/dist/tools/dex-pools/index.js +231 -0
  356. package/dist/tools/dex-pools/index.js.map +1 -0
  357. package/dist/tools/handler-factories.d.ts +1401 -0
  358. package/dist/tools/handler-factories.d.ts.map +1 -0
  359. package/dist/tools/handler-factories.js +1680 -0
  360. package/dist/tools/handler-factories.js.map +1 -0
  361. package/dist/tools/index.d.ts +1 -11
  362. package/dist/tools/index.d.ts.map +1 -1
  363. package/dist/tools/index.js +171 -27
  364. package/dist/tools/index.js.map +1 -1
  365. package/dist/tools/locks/index.d.ts +2 -0
  366. package/dist/tools/locks/index.d.ts.map +1 -1
  367. package/dist/tools/locks/index.js +9 -86
  368. package/dist/tools/locks/index.js.map +1 -1
  369. package/dist/tools/moderators/index.d.ts +53 -0
  370. package/dist/tools/moderators/index.d.ts.map +1 -0
  371. package/dist/tools/moderators/index.js +258 -0
  372. package/dist/tools/moderators/index.js.map +1 -0
  373. package/dist/tools/overseers/getOverseerUserSummary.d.ts +15 -0
  374. package/dist/tools/overseers/getOverseerUserSummary.d.ts.map +1 -0
  375. package/dist/tools/overseers/getOverseerUserSummary.js +40 -0
  376. package/dist/tools/overseers/getOverseerUserSummary.js.map +1 -0
  377. package/dist/tools/overseers/index.d.ts +58 -0
  378. package/dist/tools/overseers/index.d.ts.map +1 -0
  379. package/dist/tools/overseers/index.js +325 -0
  380. package/dist/tools/overseers/index.js.map +1 -0
  381. package/dist/tools/overseers/listOverseerUsers.d.ts +15 -0
  382. package/dist/tools/overseers/listOverseerUsers.d.ts.map +1 -0
  383. package/dist/tools/overseers/listOverseerUsers.js +76 -0
  384. package/dist/tools/overseers/listOverseerUsers.js.map +1 -0
  385. package/dist/tools/pagination-handler-factory.d.ts +131 -0
  386. package/dist/tools/pagination-handler-factory.d.ts.map +1 -0
  387. package/dist/tools/pagination-handler-factory.js +159 -0
  388. package/dist/tools/pagination-handler-factory.js.map +1 -0
  389. package/dist/tools/pools/checkPoolExists.d.ts +16 -0
  390. package/dist/tools/pools/checkPoolExists.d.ts.map +1 -0
  391. package/dist/tools/pools/checkPoolExists.js +48 -0
  392. package/dist/tools/pools/checkPoolExists.js.map +1 -0
  393. package/dist/tools/pools/fetchAllPools.d.ts.map +1 -1
  394. package/dist/tools/pools/fetchAllPools.js +51 -11
  395. package/dist/tools/pools/fetchAllPools.js.map +1 -1
  396. package/dist/tools/pools/fetchAllPriceHistory.d.ts.map +1 -1
  397. package/dist/tools/pools/fetchAllPriceHistory.js +11 -51
  398. package/dist/tools/pools/fetchAllPriceHistory.js.map +1 -1
  399. package/dist/tools/pools/fetchPoolDetails.d.ts.map +1 -1
  400. package/dist/tools/pools/fetchPoolDetails.js +4 -11
  401. package/dist/tools/pools/fetchPoolDetails.js.map +1 -1
  402. package/dist/tools/pools/fetchPools.d.ts.map +1 -1
  403. package/dist/tools/pools/fetchPools.js +40 -20
  404. package/dist/tools/pools/fetchPools.js.map +1 -1
  405. package/dist/tools/pools/fetchPriceHistory.d.ts.map +1 -1
  406. package/dist/tools/pools/fetchPriceHistory.js +10 -51
  407. package/dist/tools/pools/fetchPriceHistory.js.map +1 -1
  408. package/dist/tools/pools/fetchTokenDetails.d.ts.map +1 -1
  409. package/dist/tools/pools/fetchTokenDetails.js +4 -35
  410. package/dist/tools/pools/fetchTokenDetails.js.map +1 -1
  411. package/dist/tools/pools/index.d.ts +2 -0
  412. package/dist/tools/pools/index.d.ts.map +1 -1
  413. package/dist/tools/pools/index.js +103 -35
  414. package/dist/tools/pools/index.js.map +1 -1
  415. package/dist/tools/pools/onDexPoolCreation.d.ts +1 -2
  416. package/dist/tools/pools/onDexPoolCreation.d.ts.map +1 -1
  417. package/dist/tools/pools/onDexPoolCreation.js +14 -48
  418. package/dist/tools/pools/onDexPoolCreation.js.map +1 -1
  419. package/dist/tools/pools/onLaunchpadTokenCreation.d.ts +1 -2
  420. package/dist/tools/pools/onLaunchpadTokenCreation.d.ts.map +1 -1
  421. package/dist/tools/pools/onLaunchpadTokenCreation.js +9 -42
  422. package/dist/tools/pools/onLaunchpadTokenCreation.js.map +1 -1
  423. package/dist/tools/pools/priceHistoryFactory.d.ts +44 -0
  424. package/dist/tools/pools/priceHistoryFactory.d.ts.map +1 -0
  425. package/dist/tools/pools/priceHistoryFactory.js +154 -0
  426. package/dist/tools/pools/priceHistoryFactory.js.map +1 -0
  427. package/dist/tools/pools/updateTokenSocials.d.ts +16 -0
  428. package/dist/tools/pools/updateTokenSocials.d.ts.map +1 -0
  429. package/dist/tools/pools/updateTokenSocials.js +84 -0
  430. package/dist/tools/pools/updateTokenSocials.js.map +1 -0
  431. package/dist/tools/referrals/index.d.ts +12 -0
  432. package/dist/tools/referrals/index.d.ts.map +1 -0
  433. package/dist/tools/referrals/index.js +110 -0
  434. package/dist/tools/referrals/index.js.map +1 -0
  435. package/dist/tools/streaming/index.d.ts +94 -0
  436. package/dist/tools/streaming/index.d.ts.map +1 -0
  437. package/dist/tools/streaming/index.js +549 -0
  438. package/dist/tools/streaming/index.js.map +1 -0
  439. package/dist/tools/streaming/setNextLiveStreamCountdown.d.ts +16 -0
  440. package/dist/tools/streaming/setNextLiveStreamCountdown.d.ts.map +1 -0
  441. package/dist/tools/streaming/setNextLiveStreamCountdown.js +62 -0
  442. package/dist/tools/streaming/setNextLiveStreamCountdown.js.map +1 -0
  443. package/dist/tools/token-ban/index.d.ts +39 -0
  444. package/dist/tools/token-ban/index.d.ts.map +1 -0
  445. package/dist/tools/token-ban/index.js +177 -0
  446. package/dist/tools/token-ban/index.js.map +1 -0
  447. package/dist/tools/tool-factory.d.ts +84 -0
  448. package/dist/tools/tool-factory.d.ts.map +1 -0
  449. package/dist/tools/tool-factory.js +135 -0
  450. package/dist/tools/tool-factory.js.map +1 -0
  451. package/dist/tools/trades/index.d.ts +20 -0
  452. package/dist/tools/trades/index.d.ts.map +1 -0
  453. package/dist/tools/trades/index.js +113 -0
  454. package/dist/tools/trades/index.js.map +1 -0
  455. package/dist/tools/trading/helpers/arg-extractors.d.ts +128 -0
  456. package/dist/tools/trading/helpers/arg-extractors.d.ts.map +1 -0
  457. package/dist/tools/trading/helpers/arg-extractors.js +215 -0
  458. package/dist/tools/trading/helpers/arg-extractors.js.map +1 -0
  459. package/dist/tools/trading/helpers/index.d.ts +8 -0
  460. package/dist/tools/trading/helpers/index.d.ts.map +1 -0
  461. package/dist/tools/trading/helpers/index.js +24 -0
  462. package/dist/tools/trading/helpers/index.js.map +1 -0
  463. package/dist/tools/trading/helpers/trading-schemas.d.ts +276 -0
  464. package/dist/tools/trading/helpers/trading-schemas.d.ts.map +1 -0
  465. package/dist/tools/trading/helpers/trading-schemas.js +310 -0
  466. package/dist/tools/trading/helpers/trading-schemas.js.map +1 -0
  467. package/dist/tools/trading/index.d.ts +2 -0
  468. package/dist/tools/trading/index.d.ts.map +1 -1
  469. package/dist/tools/trading/index.js +148 -371
  470. package/dist/tools/trading/index.js.map +1 -1
  471. package/dist/tools/transfers/index.d.ts +3 -0
  472. package/dist/tools/transfers/index.d.ts.map +1 -1
  473. package/dist/tools/transfers/index.js +72 -52
  474. package/dist/tools/transfers/index.js.map +1 -1
  475. package/dist/tools/utils/cleanup.d.ts.map +1 -1
  476. package/dist/tools/utils/cleanup.js +2 -9
  477. package/dist/tools/utils/cleanup.js.map +1 -1
  478. package/dist/tools/utils/clearCache.d.ts.map +1 -1
  479. package/dist/tools/utils/clearCache.js +5 -7
  480. package/dist/tools/utils/clearCache.js.map +1 -1
  481. package/dist/tools/utils/explainSdkUsage.d.ts +52 -0
  482. package/dist/tools/utils/explainSdkUsage.d.ts.map +1 -1
  483. package/dist/tools/utils/explainSdkUsage.js +1905 -93
  484. package/dist/tools/utils/explainSdkUsage.js.map +1 -1
  485. package/dist/tools/utils/getEthereumAddressFromPrivateKey.d.ts.map +1 -1
  486. package/dist/tools/utils/getEthereumAddressFromPrivateKey.js +2 -1
  487. package/dist/tools/utils/getEthereumAddressFromPrivateKey.js.map +1 -1
  488. package/dist/tools/utils/index.d.ts +2 -0
  489. package/dist/tools/utils/index.d.ts.map +1 -1
  490. package/dist/tools/utils/index.js +2 -12
  491. package/dist/tools/utils/index.js.map +1 -1
  492. package/dist/tools/wallet/index.d.ts +7 -0
  493. package/dist/tools/wallet/index.d.ts.map +1 -0
  494. package/dist/tools/wallet/index.js +24 -0
  495. package/dist/tools/wallet/index.js.map +1 -0
  496. package/dist/utils/date-converter.d.ts +58 -0
  497. package/dist/utils/date-converter.d.ts.map +1 -0
  498. package/dist/utils/date-converter.js +83 -0
  499. package/dist/utils/date-converter.js.map +1 -0
  500. package/dist/utils/pool-filter-builder.d.ts +78 -0
  501. package/dist/utils/pool-filter-builder.d.ts.map +1 -0
  502. package/dist/utils/pool-filter-builder.js +130 -0
  503. package/dist/utils/pool-filter-builder.js.map +1 -0
  504. package/dist/utils/safe-parsers.d.ts +87 -0
  505. package/dist/utils/safe-parsers.d.ts.map +1 -0
  506. package/dist/utils/safe-parsers.js +134 -0
  507. package/dist/utils/safe-parsers.js.map +1 -0
  508. package/dist/utils/validation.d.ts +5 -5
  509. package/dist/utils/validation.d.ts.map +1 -1
  510. package/dist/utils/validation.js +23 -21
  511. package/dist/utils/validation.js.map +1 -1
  512. package/package.json +23 -15
  513. package/.env.example +0 -21
  514. package/.eslintrc.json +0 -88
  515. package/CHANGELOG.md +0 -2161
  516. package/DOCS_AUDIT_REPORT.md +0 -189
  517. package/DRY_REFACTORING_GUIDE.md +0 -271
  518. package/MCP_COVERAGE_REPORT.md +0 -164
  519. package/MCP_TEST_ANALYSIS.md +0 -317
  520. package/jest.integration.config.js +0 -70
  521. package/scripts/inject-version.ts +0 -31
  522. package/scripts/validate-mcp-test-analysis.ts +0 -250
@@ -1,235 +1,130 @@
1
1
  "use strict";
2
2
  /**
3
3
  * Trading Operations Tools
4
+ *
5
+ * MCP tools for bonding curve trading: buy, sell, calculate amounts, and graduation.
4
6
  */
5
7
  Object.defineProperty(exports, "__esModule", { value: true });
6
8
  exports.tradingTools = exports.calculateSellAmountExternalTool = exports.calculateSellAmountLocalTool = exports.calculateBuyAmountExternalTool = exports.calculateBuyAmountLocalTool = exports.graduateTokenTool = exports.calculateBuyAmountForGraduationTool = exports.getBundlerTransactionResultTool = exports.calculateInitialBuyTool = exports.fetchTradesTool = exports.sellTokensTool = exports.buyTokensTool = exports.calculateSellAmountTool = exports.calculateBuyAmountTool = void 0;
7
- const launchpad_sdk_1 = require("@gala-chain/launchpad-sdk");
8
- const response_formatter_js_1 = require("../../utils/response-formatter.js");
9
- const error_handler_js_1 = require("../../utils/error-handler.js");
9
+ const handler_factories_js_1 = require("../handler-factories.js");
10
10
  const common_schemas_js_1 = require("../../schemas/common-schemas.js");
11
11
  const default_values_js_1 = require("../../utils/default-values.js");
12
+ const date_converter_js_1 = require("../../utils/date-converter.js");
13
+ const index_js_1 = require("./helpers/index.js");
14
+ // =============================================================================
15
+ // Calculate Amount Tools
16
+ // =============================================================================
12
17
  // 1. Calculate Buy Amount
13
18
  exports.calculateBuyAmountTool = {
14
19
  name: 'gala_launchpad_calculate_buy_amount',
15
- description: 'Calculate token amounts for buying with fee breakdown',
20
+ description: `Calculate token amounts for buying with fee breakdown.
21
+
22
+ PARAMETERS:
23
+ - type: 'native' (spend GALA) or 'exact' (buy token amount)
24
+ - amount: Spend amount (native) or token quantity (exact)
25
+
26
+ RETURNS:
27
+ - amount: Exact token amount to receive
28
+ - totalCost: GALA needed (amount + all fees)
29
+ - transactionFee: Gas fee (1 GALA)
30
+ - reverseBondingCurveFee: Dynamic pool fee (min-max range)`,
16
31
  inputSchema: {
17
32
  type: 'object',
18
33
  properties: {
19
34
  tokenName: common_schemas_js_1.TOKEN_NAME_SCHEMA,
20
- amount: {
21
- ...common_schemas_js_1.DECIMAL_AMOUNT_SCHEMA,
22
- description: 'Amount in standard decimal format (e.g., "1" for 1 GALA)',
23
- },
24
- type: {
25
- type: 'string',
26
- enum: Object.values(launchpad_sdk_1.TRADING_TYPES),
27
- description: `Trade calculation type:
28
-
29
- - 'native': You specify GALA amount to spend
30
- Example: "I want to spend 10 GALA to buy tokens" → type: 'native', amount: '10'
31
-
32
- - 'exact': You specify exact token amount to buy
33
- Example: "I want to buy exactly 1000 WOO tokens" → type: 'exact', amount: '1000'
34
-
35
- Most common: Use 'native' when you know how much GALA to spend`,
36
- },
35
+ amount: index_js_1.TRADE_AMOUNT_SCHEMA,
36
+ type: index_js_1.BUY_CALCULATION_TYPE_SCHEMA,
37
37
  },
38
38
  required: ['tokenName', 'amount', 'type'],
39
39
  },
40
- handler: (0, error_handler_js_1.withErrorHandling)(async (sdk, args) => {
41
- const result = await sdk.calculateBuyAmount({
42
- tokenName: args.tokenName,
43
- amount: args.amount,
44
- type: args.type,
45
- });
46
- return (0, response_formatter_js_1.formatSuccess)(result);
47
- }),
40
+ handler: (0, handler_factories_js_1.createSimpleHandler)('calculateBuyAmount', index_js_1.extractCalculationArgs),
48
41
  };
49
42
  // 2. Calculate Sell Amount
50
43
  exports.calculateSellAmountTool = {
51
44
  name: 'gala_launchpad_calculate_sell_amount',
52
- description: 'Calculate GALA amounts for selling tokens',
45
+ description: `Calculate GALA amounts for selling tokens.
46
+
47
+ PARAMETERS:
48
+ - type: 'native' (receive GALA amount) or 'exact' (sell token amount)
49
+ - amount: GALA desired (native) or tokens to sell (exact)
50
+
51
+ RETURNS:
52
+ - amount: GALA received after all deductions
53
+ - totalCost: Tokens needed (amount + reverse fee)
54
+ - transactionFee: Gas fee (1 GALA deducted from amount)
55
+ - reverseBondingCurveFee: Dynamic pool fee applied to sale`,
53
56
  inputSchema: {
54
57
  type: 'object',
55
58
  properties: {
56
59
  tokenName: common_schemas_js_1.TOKEN_NAME_SCHEMA,
57
60
  amount: common_schemas_js_1.DECIMAL_AMOUNT_SCHEMA,
58
- type: {
59
- type: 'string',
60
- enum: Object.values(launchpad_sdk_1.TRADING_TYPES),
61
- description: `Trade calculation type:
62
-
63
- - 'native': You specify GALA amount you want to receive
64
- Example: "I want to receive 10 GALA from selling tokens" → type: 'native', amount: '10'
65
-
66
- - 'exact': You specify exact token amount to sell
67
- Example: "I want to sell exactly 1000 WOO tokens" → type: 'exact', amount: '1000'
68
-
69
- Most common: Use 'native' when you know how much GALA you want to receive`,
70
- },
61
+ type: index_js_1.SELL_CALCULATION_TYPE_SCHEMA,
71
62
  },
72
63
  required: ['tokenName', 'amount', 'type'],
73
64
  },
74
- handler: (0, error_handler_js_1.withErrorHandling)(async (sdk, args) => {
75
- const result = await sdk.calculateSellAmount({
76
- tokenName: args.tokenName,
77
- amount: args.amount,
78
- type: args.type,
79
- });
80
- return (0, response_formatter_js_1.formatSuccess)(result);
81
- }),
65
+ handler: (0, handler_factories_js_1.createSimpleHandler)('calculateSellAmount', index_js_1.extractCalculationArgs),
82
66
  };
83
- // 3. Buy Tokens
67
+ // =============================================================================
68
+ // Trade Execution Tools
69
+ // =============================================================================
70
+ // 3. Buy Tokens (calls SDK buy() method)
84
71
  exports.buyTokensTool = {
85
- name: 'gala_launchpad_buy_tokens',
72
+ name: 'gala_launchpad_buy',
86
73
  description: `Execute token purchase with slippage protection.
87
74
 
88
75
  WORKFLOW:
89
- 1. calculateBuyAmount() Get expected output (result.amount AND result.reverseBondingCurveFee)
90
- 2. buy() Execute trade with BOTH expectedAmount AND maxAcceptableReverseBondingCurveFee
91
- 3. fetchTrades() Verify trade completed
76
+ 1. calculateBuyAmount() -> Get expected output (result.amount AND result.reverseBondingCurveFee)
77
+ 2. buy() -> Execute trade with BOTH expectedAmount AND maxAcceptableReverseBondingCurveFee
78
+ 3. fetchTrades() -> Verify trade completed
92
79
 
93
80
  CRITICAL: Extract BOTH parameters from calculateBuyAmount:
94
- - result.amount expectedAmount
95
- - result.reverseBondingCurveFee maxAcceptableReverseBondingCurveFee
81
+ - result.amount -> expectedAmount
82
+ - result.reverseBondingCurveFee -> maxAcceptableReverseBondingCurveFee
96
83
  Omitting reverseBondingCurveFee may cause transaction failures!
97
84
 
98
85
  RETURNS: Transaction details including input/output amounts and transaction ID`,
99
- inputSchema: {
100
- type: 'object',
101
- properties: {
102
- tokenName: common_schemas_js_1.TOKEN_NAME_SCHEMA,
103
- amount: {
104
- ...common_schemas_js_1.DECIMAL_AMOUNT_SCHEMA,
105
- description: 'Amount to spend/buy',
106
- },
107
- type: {
108
- type: 'string',
109
- enum: Object.values(launchpad_sdk_1.TRADING_TYPES),
110
- description: `Trade type (must match what you used in calculateBuyAmount):
111
-
112
- - 'native': Spending GALA amount
113
- - 'exact': Buying exact token amount`,
114
- },
115
- expectedAmount: {
116
- ...common_schemas_js_1.DECIMAL_AMOUNT_SCHEMA,
117
- description: `Expected token output amount from calculateBuyAmount (REQUIRED).
118
-
119
- CRITICAL: This is the 'amount' field from calculateBuyAmount result, NOT your input amount.
120
-
121
- WORKFLOW:
122
- 1. Call calculateBuyAmount({ tokenName, amount, type })
123
- 2. Extract result.amount from the response
124
- 3. Use result.amount as this expectedAmount parameter
125
-
126
- EXAMPLE:
127
- const calc = await calculateBuyAmount({ tokenName: 'woohoo', amount: '10', type: 'native' });
128
- // calc.amount = "16843.7579794843252"
129
- await buy({ tokenName: 'woohoo', amount: '10', type: 'native', expectedAmount: calc.amount, ... });
130
- // Use calc.amount ("16843.7579794843252"), NOT the input '10'`,
131
- },
132
- maxAcceptableReverseBondingCurveFee: {
133
- ...common_schemas_js_1.DECIMAL_AMOUNT_SCHEMA,
134
- description: 'RECOMMENDED: Base reverse bonding curve fee from calculateBuyAmount (GALA). Use result.reverseBondingCurveFee. Omitting this may cause transaction failures. Works with maxAcceptableReverseBondingCurveFeeSlippageFactor for automatic slippage adjustment.',
135
- },
136
- maxAcceptableReverseBondingCurveFeeSlippageFactor: common_schemas_js_1.RBC_FEE_SLIPPAGE_SCHEMA,
137
- slippageToleranceFactor: common_schemas_js_1.SLIPPAGE_TOLERANCE_SCHEMA,
138
- privateKey: common_schemas_js_1.PRIVATE_KEY_SCHEMA,
139
- },
140
- required: ['tokenName', 'amount', 'type', 'expectedAmount', 'slippageToleranceFactor'],
141
- },
142
- handler: (0, error_handler_js_1.withErrorHandling)(async (sdk, args) => {
143
- const result = await sdk.buy({
144
- tokenName: args.tokenName,
145
- amount: args.amount,
146
- type: args.type,
147
- expectedAmount: args.expectedAmount,
148
- maxAcceptableReverseBondingCurveFee: args.maxAcceptableReverseBondingCurveFee,
149
- maxAcceptableReverseBondingCurveFeeSlippageFactor: args.maxAcceptableReverseBondingCurveFeeSlippageFactor,
150
- slippageToleranceFactor: args.slippageToleranceFactor,
151
- privateKey: args.privateKey,
152
- });
153
- return (0, response_formatter_js_1.formatSuccess)(result);
154
- }),
86
+ inputSchema: (0, index_js_1.createTradeExecutionSchema)({ direction: 'buy' }),
87
+ handler: (0, handler_factories_js_1.createSimpleHandler)('buy', index_js_1.extractTradeArgs),
155
88
  };
156
- // 4. Sell Tokens
89
+ // 4. Sell Tokens (calls SDK sell() method)
157
90
  exports.sellTokensTool = {
158
- name: 'gala_launchpad_sell_tokens',
91
+ name: 'gala_launchpad_sell',
159
92
  description: `Execute token sale with slippage protection.
160
93
 
161
94
  WORKFLOW:
162
- 1. calculateSellAmount() Get expected output (result.amount AND result.reverseBondingCurveFee)
163
- 2. sell() Execute trade with BOTH expectedAmount AND maxAcceptableReverseBondingCurveFee
164
- 3. fetchTrades() Verify trade completed
95
+ 1. calculateSellAmount() -> Get expected output (result.amount AND result.reverseBondingCurveFee)
96
+ 2. sell() -> Execute trade with BOTH expectedAmount AND maxAcceptableReverseBondingCurveFee
97
+ 3. fetchTrades() -> Verify trade completed
165
98
 
166
99
  CRITICAL: Extract BOTH parameters from calculateSellAmount:
167
- - result.amount expectedAmount
168
- - result.reverseBondingCurveFee maxAcceptableReverseBondingCurveFee
100
+ - result.amount -> expectedAmount
101
+ - result.reverseBondingCurveFee -> maxAcceptableReverseBondingCurveFee
169
102
  Omitting reverseBondingCurveFee may cause transaction failures!
170
103
 
171
104
  RETURNS: Transaction details including input/output amounts and transaction ID`,
172
- inputSchema: {
173
- type: 'object',
174
- properties: {
175
- tokenName: common_schemas_js_1.TOKEN_NAME_SCHEMA,
176
- amount: {
177
- ...common_schemas_js_1.DECIMAL_AMOUNT_SCHEMA,
178
- description: 'Amount to sell/receive',
179
- },
180
- type: {
181
- type: 'string',
182
- enum: Object.values(launchpad_sdk_1.TRADING_TYPES),
183
- description: `Trade type (must match what you used in calculateSellAmount):
184
-
185
- - 'native': Receiving GALA amount
186
- - 'exact': Selling exact token amount`,
187
- },
188
- expectedAmount: {
189
- ...common_schemas_js_1.DECIMAL_AMOUNT_SCHEMA,
190
- description: `Expected GALA output amount from calculateSellAmount (REQUIRED).
191
-
192
- CRITICAL: This is the 'amount' field from calculateSellAmount result, NOT your input amount.
193
-
194
- WORKFLOW:
195
- 1. Call calculateSellAmount({ tokenName, amount, type })
196
- 2. Extract result.amount from the response
197
- 3. Use result.amount as this expectedAmount parameter
198
-
199
- EXAMPLE:
200
- const calc = await calculateSellAmount({ tokenName: 'woohoo', amount: '10', type: 'native' });
201
- // calc.amount = "16843.7579794843252"
202
- await sell({ tokenName: 'woohoo', amount: '10', type: 'native', expectedAmount: calc.amount, ... });
203
- // Use calc.amount ("16843.7579794843252"), NOT the input '10'`,
204
- },
205
- maxAcceptableReverseBondingCurveFee: {
206
- ...common_schemas_js_1.DECIMAL_AMOUNT_SCHEMA,
207
- description: 'RECOMMENDED: Base reverse bonding curve fee from calculateSellAmount (GALA). Use result.reverseBondingCurveFee. Omitting this may cause transaction failures. Works with maxAcceptableReverseBondingCurveFeeSlippageFactor for automatic slippage adjustment.',
208
- },
209
- maxAcceptableReverseBondingCurveFeeSlippageFactor: common_schemas_js_1.RBC_FEE_SLIPPAGE_SCHEMA,
210
- slippageToleranceFactor: common_schemas_js_1.SLIPPAGE_TOLERANCE_SCHEMA,
211
- privateKey: common_schemas_js_1.PRIVATE_KEY_SCHEMA,
212
- },
213
- required: ['tokenName', 'amount', 'type', 'expectedAmount', 'slippageToleranceFactor'],
214
- },
215
- handler: (0, error_handler_js_1.withErrorHandling)(async (sdk, args) => {
216
- const result = await sdk.sell({
217
- tokenName: args.tokenName,
218
- amount: args.amount,
219
- type: args.type,
220
- expectedAmount: args.expectedAmount,
221
- maxAcceptableReverseBondingCurveFee: args.maxAcceptableReverseBondingCurveFee,
222
- maxAcceptableReverseBondingCurveFeeSlippageFactor: args.maxAcceptableReverseBondingCurveFeeSlippageFactor,
223
- slippageToleranceFactor: args.slippageToleranceFactor,
224
- privateKey: args.privateKey,
225
- });
226
- return (0, response_formatter_js_1.formatSuccess)(result);
227
- }),
105
+ inputSchema: (0, index_js_1.createTradeExecutionSchema)({ direction: 'sell' }),
106
+ handler: (0, handler_factories_js_1.createSimpleHandler)('sell', index_js_1.extractTradeArgs),
228
107
  };
108
+ // =============================================================================
109
+ // Trade History & Utilities
110
+ // =============================================================================
229
111
  // 5. Fetch Trades
230
112
  exports.fetchTradesTool = {
231
113
  name: 'gala_launchpad_fetch_trades',
232
- description: 'Get trade history with filtering',
114
+ description: `Get trade history with optional filtering and pagination.
115
+
116
+ PARAMETERS:
117
+ - tradeType: 'buy' (purchases only) or 'sell' (sales only) - optional filter
118
+ - userAddress: Filter by specific wallet address (optional)
119
+ - startDate/endDate: Filter by date range (optional, ISO 8601 format)
120
+
121
+ RETURNS:
122
+ - trades[]: Array of trades with:
123
+ - txHash: Transaction ID
124
+ - type: 'buy' or 'sell'
125
+ - amount: Token quantity
126
+ - price: GALA paid/received
127
+ - timestamp: When executed`,
233
128
  inputSchema: {
234
129
  type: 'object',
235
130
  properties: {
@@ -237,7 +132,7 @@ exports.fetchTradesTool = {
237
132
  tradeType: {
238
133
  type: 'string',
239
134
  enum: ['buy', 'sell'],
240
- description: 'Filter by trade type',
135
+ description: "Filter by trade type: 'buy' (purchases) or 'sell' (sales)",
241
136
  },
242
137
  userAddress: {
243
138
  ...common_schemas_js_1.ADDRESS_SCHEMA,
@@ -256,18 +151,10 @@ exports.fetchTradesTool = {
256
151
  sortOrder: common_schemas_js_1.SORT_ORDER_SCHEMA,
257
152
  },
258
153
  },
259
- handler: (0, error_handler_js_1.withErrorHandling)(async (sdk, args) => {
154
+ handler: (0, handler_factories_js_1.createSimpleHandler)('fetchTrades', (args) => {
260
155
  const pagination = (0, default_values_js_1.applyOperationPaginationDefaults)(args, 'trade');
261
- const result = await sdk.fetchTrades({
262
- tokenName: args.tokenName,
263
- tradeType: args.tradeType,
264
- userAddress: args.userAddress,
265
- ...pagination,
266
- startDate: args.startDate,
267
- endDate: args.endDate,
268
- sortOrder: args.sortOrder || 'desc',
269
- });
270
- return (0, response_formatter_js_1.formatSuccess)(result);
156
+ const options = (0, index_js_1.extractTradeHistoryArgs)(args, pagination);
157
+ return (0, date_converter_js_1.addParsedStartEndDates)(options, args.startDate, args.endDate);
271
158
  }),
272
159
  };
273
160
  // 6. Calculate Initial Buy
@@ -284,10 +171,7 @@ exports.calculateInitialBuyTool = {
284
171
  },
285
172
  required: ['amount'],
286
173
  },
287
- handler: (0, error_handler_js_1.withErrorHandling)(async (sdk, args) => {
288
- const result = await sdk.calculateInitialBuyAmount(args.amount);
289
- return (0, response_formatter_js_1.formatSuccess)(result);
290
- }),
174
+ handler: (0, handler_factories_js_1.createSimpleHandler)('calculateInitialBuyAmount', (args) => args.amount),
291
175
  };
292
176
  // 7. Get Bundler Transaction Result
293
177
  exports.getBundlerTransactionResultTool = {
@@ -311,11 +195,11 @@ Note: This is a synchronous HTTP call, not WebSocket monitoring.`,
311
195
  },
312
196
  required: ['transactionId'],
313
197
  },
314
- handler: (0, error_handler_js_1.withErrorHandling)(async (sdk, args) => {
315
- const result = await sdk.getBundlerTransactionResult(args.transactionId);
316
- return (0, response_formatter_js_1.formatSuccess)(result);
317
- }),
198
+ handler: (0, handler_factories_js_1.createSimpleHandler)('getBundlerTransactionResult', (args) => args.transactionId),
318
199
  };
200
+ // =============================================================================
201
+ // Graduation Tools
202
+ // =============================================================================
319
203
  // 8. Calculate Buy Amount for Graduation
320
204
  exports.calculateBuyAmountForGraduationTool = {
321
205
  name: 'gala_launchpad_calculate_buy_amount_for_graduation',
@@ -339,18 +223,7 @@ totalCost, amount, transactionFee, gasFee, reverseBondingCurveFee`,
339
223
  },
340
224
  required: ['tokenName'],
341
225
  },
342
- handler: (0, error_handler_js_1.withErrorHandling)(async (sdk, args) => {
343
- // Build options object only if mode or supply provided
344
- const options = args.calculateAmountMode || args.currentSupply
345
- ? {
346
- tokenName: args.tokenName,
347
- calculateAmountMode: args.calculateAmountMode,
348
- currentSupply: args.currentSupply,
349
- }
350
- : args.tokenName;
351
- const result = await sdk.calculateBuyAmountForGraduation(options);
352
- return (0, response_formatter_js_1.formatSuccess)(result);
353
- }),
226
+ handler: (0, handler_factories_js_1.createSimpleHandler)('calculateBuyAmountForGraduation', index_js_1.extractGraduationCalcArgs),
354
227
  };
355
228
  // 9. Graduate Token
356
229
  exports.graduateTokenTool = {
@@ -373,193 +246,97 @@ RETURNS: TradeResult with transaction details including amounts and transaction
373
246
  type: 'object',
374
247
  properties: {
375
248
  tokenName: common_schemas_js_1.TOKEN_NAME_SCHEMA,
376
- slippageToleranceFactor: common_schemas_js_1.SLIPPAGE_TOLERANCE_SCHEMA,
377
- maxAcceptableReverseBondingCurveFeeSlippageFactor: common_schemas_js_1.RBC_FEE_SLIPPAGE_SCHEMA,
378
- privateKey: common_schemas_js_1.PRIVATE_KEY_SCHEMA,
379
- calculateAmountMode: common_schemas_js_1.CALCULATION_MODE_SCHEMA,
380
- currentSupply: common_schemas_js_1.CURRENT_SUPPLY_SCHEMA,
249
+ ...index_js_1.TRADE_EXECUTION_PROPERTIES,
250
+ ...index_js_1.GRADUATION_OPTIONAL_PROPERTIES,
381
251
  },
382
- required: ['tokenName'], // Only tokenName is required
252
+ required: ['tokenName'],
383
253
  },
384
- handler: (0, error_handler_js_1.withErrorHandling)(async (sdk, args) => {
385
- const result = await sdk.graduateToken({
386
- tokenName: args.tokenName,
387
- slippageToleranceFactor: args.slippageToleranceFactor,
388
- maxAcceptableReverseBondingCurveFeeSlippageFactor: args.maxAcceptableReverseBondingCurveFeeSlippageFactor,
389
- privateKey: args.privateKey,
390
- calculateAmountMode: args.calculateAmountMode,
391
- currentSupply: args.currentSupply,
392
- });
393
- return (0, response_formatter_js_1.formatSuccess)(result);
394
- }),
254
+ handler: (0, handler_factories_js_1.createSimpleHandler)('graduateToken', index_js_1.extractGraduationArgs),
395
255
  };
396
- // 10. Calculate Buy Amount (Local)
397
- exports.calculateBuyAmountLocalTool = {
398
- name: 'gala_launchpad_calculate_buy_amount_local',
399
- description: `Calculate buy amounts using LOCAL bonding curve formulas (instant, no network call).
256
+ // =============================================================================
257
+ // Local/External Calculation Tools (Using Factory Pattern)
258
+ // =============================================================================
259
+ // Shared descriptions for calculation tools
260
+ const BUY_LOCAL_DESCRIPTION = `Calculate buy amounts using LOCAL bonding curve formulas (instant, no network call).
400
261
 
401
262
  Uses client-side exponential bonding curve calculations for instant quotes.
402
263
  Perfect for price discovery, UI updates, and offline scenarios.
403
264
 
404
265
  ACCURACY: Matches external calculations with <0.01% difference.
405
266
 
406
- RETURNS: { amount, reverseBondingCurveFee: "0", transactionFee, gasFee }`,
407
- inputSchema: {
408
- type: 'object',
409
- properties: {
410
- tokenName: common_schemas_js_1.TOKEN_NAME_SCHEMA,
411
- amount: {
412
- ...common_schemas_js_1.DECIMAL_AMOUNT_SCHEMA,
413
- description: 'Amount in standard decimal format (e.g., "1" for 1 GALA)',
414
- },
415
- type: {
416
- type: 'string',
417
- enum: Object.values(launchpad_sdk_1.TRADING_TYPES),
418
- description: `Trade calculation type:
419
- - 'native': Spend GALA amount
420
- - 'exact': Buy exact token amount`,
421
- },
422
- },
423
- required: ['tokenName', 'amount', 'type'],
424
- },
425
- handler: (0, error_handler_js_1.withErrorHandling)(async (sdk, args) => {
426
- const result = await sdk.calculateBuyAmountLocal({
427
- tokenName: args.tokenName,
428
- amount: args.amount,
429
- type: args.type,
430
- });
431
- return (0, response_formatter_js_1.formatSuccess)(result);
432
- }),
433
- };
434
- // 11. Calculate Buy Amount (External)
435
- exports.calculateBuyAmountExternalTool = {
436
- name: 'gala_launchpad_calculate_buy_amount_external',
437
- description: `Calculate buy amounts using EXTERNAL GalaChain network call (real-time).
267
+ RETURNS: { amount, reverseBondingCurveFee: "0", transactionFee, gasFee }`;
268
+ const BUY_EXTERNAL_DESCRIPTION = `Calculate buy amounts using EXTERNAL GalaChain network call (real-time).
438
269
 
439
270
  Explicit external calculation - queries GalaChain network for real-time pricing.
440
271
  Identical to calculateBuyAmount but makes the network dependency explicit.
441
272
 
442
- RETURNS: { amount, reverseBondingCurveFee, transactionFee, gasFee }`,
443
- inputSchema: {
444
- type: 'object',
445
- properties: {
446
- tokenName: common_schemas_js_1.TOKEN_NAME_SCHEMA,
447
- amount: {
448
- ...common_schemas_js_1.DECIMAL_AMOUNT_SCHEMA,
449
- description: 'Amount in standard decimal format',
450
- },
451
- type: {
452
- type: 'string',
453
- enum: Object.values(launchpad_sdk_1.TRADING_TYPES),
454
- description: `Trade calculation type:
455
- - 'native': Spend GALA amount
456
- - 'exact': Buy exact token amount`,
457
- },
458
- },
459
- required: ['tokenName', 'amount', 'type'],
460
- },
461
- handler: (0, error_handler_js_1.withErrorHandling)(async (sdk, args) => {
462
- const result = await sdk.calculateBuyAmountExternal({
463
- tokenName: args.tokenName,
464
- amount: args.amount,
465
- type: args.type,
466
- });
467
- return (0, response_formatter_js_1.formatSuccess)(result);
468
- }),
469
- };
470
- // 12. Calculate Sell Amount (Local)
471
- exports.calculateSellAmountLocalTool = {
472
- name: 'gala_launchpad_calculate_sell_amount_local',
473
- description: `Calculate sell amounts using LOCAL bonding curve formulas (instant, no network call).
273
+ RETURNS: { amount, reverseBondingCurveFee, transactionFee, gasFee }`;
274
+ const SELL_LOCAL_DESCRIPTION = `Calculate sell amounts using LOCAL bonding curve formulas (instant, no network call).
474
275
 
475
276
  Uses client-side calculations with reverse bonding curve fee support.
476
277
  Requires pool details (maxSupply, fee parameters) to calculate accurately.
477
278
 
478
279
  ACCURACY: Matches external calculations with <0.01% difference.
479
280
 
480
- RETURNS: { amount, reverseBondingCurveFee, transactionFee, gasFee }`,
481
- inputSchema: {
482
- type: 'object',
483
- properties: {
484
- tokenName: common_schemas_js_1.TOKEN_NAME_SCHEMA,
485
- amount: {
486
- ...common_schemas_js_1.DECIMAL_AMOUNT_SCHEMA,
487
- description: 'Amount to sell/receive',
488
- },
489
- type: {
490
- type: 'string',
491
- enum: Object.values(launchpad_sdk_1.TRADING_TYPES),
492
- description: `Trade calculation type:
493
- - 'native': Receive GALA amount
494
- - 'exact': Sell exact token amount`,
495
- },
496
- maxSupply: {
497
- ...common_schemas_js_1.DECIMAL_AMOUNT_SCHEMA,
498
- description: 'Token maximum supply (get from fetchPoolDetails)',
499
- },
500
- reverseBondingCurveMinFeeFactor: {
501
- type: 'number',
502
- minimum: 0,
503
- maximum: 1,
504
- description: 'Min reverse bonding curve fee factor (get from poolDetails.reverseBondingCurveMinFeeFactor)',
505
- },
506
- reverseBondingCurveMaxFeeFactor: {
507
- type: 'number',
508
- minimum: 0,
509
- maximum: 1,
510
- description: 'Max reverse bonding curve fee factor (get from poolDetails.reverseBondingCurveMaxFeeFactor)',
511
- },
512
- },
513
- required: ['tokenName', 'amount', 'type', 'maxSupply', 'reverseBondingCurveMinFeeFactor', 'reverseBondingCurveMaxFeeFactor'],
514
- },
515
- handler: (0, error_handler_js_1.withErrorHandling)(async (sdk, args) => {
516
- const result = await sdk.calculateSellAmountLocal({
517
- tokenName: args.tokenName,
518
- amount: args.amount,
519
- type: args.type,
520
- maxSupply: args.maxSupply,
521
- reverseBondingCurveMinFeeFactor: args.reverseBondingCurveMinFeeFactor,
522
- reverseBondingCurveMaxFeeFactor: args.reverseBondingCurveMaxFeeFactor,
523
- });
524
- return (0, response_formatter_js_1.formatSuccess)(result);
281
+ RETURNS: { amount, reverseBondingCurveFee, transactionFee, gasFee }`;
282
+ const SELL_EXTERNAL_DESCRIPTION = `Calculate sell amounts using EXTERNAL GalaChain network call (real-time).
283
+
284
+ Explicit external calculation - queries GalaChain network for real-time pricing.
285
+ Identical to calculateSellAmount but makes the network dependency explicit.
286
+
287
+ RETURNS: { amount, reverseBondingCurveFee, transactionFee, gasFee }`;
288
+ // 10. Calculate Buy Amount (Local)
289
+ exports.calculateBuyAmountLocalTool = {
290
+ name: 'gala_launchpad_calculate_buy_amount_local',
291
+ description: BUY_LOCAL_DESCRIPTION,
292
+ ...(0, index_js_1.createCalculationToolSchema)({
293
+ name: 'gala_launchpad_calculate_buy_amount_local',
294
+ description: BUY_LOCAL_DESCRIPTION,
295
+ direction: 'buy',
296
+ mode: 'local',
525
297
  }),
298
+ handler: (0, handler_factories_js_1.createSimpleHandler)('calculateBuyAmountLocal', index_js_1.extractLocalCalculationArgs),
299
+ };
300
+ // 11. Calculate Buy Amount (External)
301
+ exports.calculateBuyAmountExternalTool = {
302
+ name: 'gala_launchpad_calculate_buy_amount_external',
303
+ description: BUY_EXTERNAL_DESCRIPTION,
304
+ ...(0, index_js_1.createCalculationToolSchema)({
305
+ name: 'gala_launchpad_calculate_buy_amount_external',
306
+ description: BUY_EXTERNAL_DESCRIPTION,
307
+ direction: 'buy',
308
+ mode: 'external',
309
+ }),
310
+ handler: (0, handler_factories_js_1.createSimpleHandler)('calculateBuyAmountExternal', index_js_1.extractCalculationArgs),
311
+ };
312
+ // 12. Calculate Sell Amount (Local)
313
+ exports.calculateSellAmountLocalTool = {
314
+ name: 'gala_launchpad_calculate_sell_amount_local',
315
+ description: SELL_LOCAL_DESCRIPTION,
316
+ ...(0, index_js_1.createCalculationToolSchema)({
317
+ name: 'gala_launchpad_calculate_sell_amount_local',
318
+ description: SELL_LOCAL_DESCRIPTION,
319
+ direction: 'sell',
320
+ mode: 'local',
321
+ includeLocalSellProperties: true,
322
+ }),
323
+ handler: (0, handler_factories_js_1.createSimpleHandler)('calculateSellAmountLocal', index_js_1.extractLocalSellArgs),
526
324
  };
527
325
  // 13. Calculate Sell Amount (External)
528
326
  exports.calculateSellAmountExternalTool = {
529
327
  name: 'gala_launchpad_calculate_sell_amount_external',
530
- description: `Calculate sell amounts using EXTERNAL GalaChain network call (real-time).
531
-
532
- Explicit external calculation - queries GalaChain network for real-time pricing.
533
- Identical to calculateSellAmount but makes the network dependency explicit.
534
-
535
- RETURNS: { amount, reverseBondingCurveFee, transactionFee, gasFee }`,
536
- inputSchema: {
537
- type: 'object',
538
- properties: {
539
- tokenName: common_schemas_js_1.TOKEN_NAME_SCHEMA,
540
- amount: {
541
- ...common_schemas_js_1.DECIMAL_AMOUNT_SCHEMA,
542
- description: 'Amount to sell/receive',
543
- },
544
- type: {
545
- type: 'string',
546
- enum: Object.values(launchpad_sdk_1.TRADING_TYPES),
547
- description: `Trade calculation type:
548
- - 'native': Receive GALA amount
549
- - 'exact': Sell exact token amount`,
550
- },
551
- },
552
- required: ['tokenName', 'amount', 'type'],
553
- },
554
- handler: (0, error_handler_js_1.withErrorHandling)(async (sdk, args) => {
555
- const result = await sdk.calculateSellAmountExternal({
556
- tokenName: args.tokenName,
557
- amount: args.amount,
558
- type: args.type,
559
- });
560
- return (0, response_formatter_js_1.formatSuccess)(result);
328
+ description: SELL_EXTERNAL_DESCRIPTION,
329
+ ...(0, index_js_1.createCalculationToolSchema)({
330
+ name: 'gala_launchpad_calculate_sell_amount_external',
331
+ description: SELL_EXTERNAL_DESCRIPTION,
332
+ direction: 'sell',
333
+ mode: 'external',
561
334
  }),
335
+ handler: (0, handler_factories_js_1.createSimpleHandler)('calculateSellAmountExternal', index_js_1.extractCalculationArgs),
562
336
  };
337
+ // =============================================================================
338
+ // Tool Export
339
+ // =============================================================================
563
340
  exports.tradingTools = [
564
341
  exports.calculateBuyAmountTool,
565
342
  exports.calculateSellAmountTool,