@catalyst-team/poly-sdk 0.1.0 → 0.2.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 (201) hide show
  1. package/LICENSE +21 -0
  2. package/README.en.md +538 -0
  3. package/README.md +357 -78
  4. package/docs/00-design.md +1 -1
  5. package/docs/02-API.md +21 -21
  6. package/docs/arb/test-plan.md +387 -0
  7. package/docs/arb/test-results.md +336 -0
  8. package/docs/arbitrage.md +754 -0
  9. package/docs/reports/smart-money-analysis-2025-12-23-cn.md +840 -0
  10. package/examples/13-arbitrage-service.ts +211 -0
  11. package/examples/README.md +1 -1
  12. package/package.json +19 -19
  13. package/scripts/arb/faze-bo3-arb.ts +385 -0
  14. package/scripts/arb/settle-position.ts +190 -0
  15. package/scripts/arb/token-rebalancer.ts +420 -0
  16. package/scripts/arb-tests/01-unit-tests.ts +495 -0
  17. package/scripts/arb-tests/02-integration-tests.ts +412 -0
  18. package/scripts/arb-tests/03-e2e-tests.ts +503 -0
  19. package/scripts/arb-tests/README.md +109 -0
  20. package/scripts/verify/verify-all-apis.ts +1 -1
  21. package/src/clients/clob-api.ts +1 -1
  22. package/src/clients/gamma-api.ts +1 -1
  23. package/src/core/cache-adapter-bridge.ts +1 -1
  24. package/src/core/types.ts +3 -3
  25. package/src/core/unified-cache.ts +1 -1
  26. package/src/index.ts +25 -19
  27. package/src/services/arbitrage-service.ts +1807 -0
  28. package/.env +0 -0
  29. package/dist/__tests__/clob-api.test.d.ts +0 -5
  30. package/dist/__tests__/clob-api.test.d.ts.map +0 -1
  31. package/dist/__tests__/clob-api.test.js +0 -240
  32. package/dist/__tests__/clob-api.test.js.map +0 -1
  33. package/dist/__tests__/integration/bridge-client.integration.test.d.ts +0 -11
  34. package/dist/__tests__/integration/bridge-client.integration.test.d.ts.map +0 -1
  35. package/dist/__tests__/integration/bridge-client.integration.test.js +0 -260
  36. package/dist/__tests__/integration/bridge-client.integration.test.js.map +0 -1
  37. package/dist/__tests__/integration/clob-api.integration.test.d.ts +0 -13
  38. package/dist/__tests__/integration/clob-api.integration.test.d.ts.map +0 -1
  39. package/dist/__tests__/integration/clob-api.integration.test.js +0 -170
  40. package/dist/__tests__/integration/clob-api.integration.test.js.map +0 -1
  41. package/dist/__tests__/integration/ctf-client.integration.test.d.ts +0 -17
  42. package/dist/__tests__/integration/ctf-client.integration.test.d.ts.map +0 -1
  43. package/dist/__tests__/integration/ctf-client.integration.test.js +0 -234
  44. package/dist/__tests__/integration/ctf-client.integration.test.js.map +0 -1
  45. package/dist/__tests__/integration/data-api.integration.test.d.ts +0 -9
  46. package/dist/__tests__/integration/data-api.integration.test.d.ts.map +0 -1
  47. package/dist/__tests__/integration/data-api.integration.test.js +0 -161
  48. package/dist/__tests__/integration/data-api.integration.test.js.map +0 -1
  49. package/dist/__tests__/integration/gamma-api.integration.test.d.ts +0 -9
  50. package/dist/__tests__/integration/gamma-api.integration.test.d.ts.map +0 -1
  51. package/dist/__tests__/integration/gamma-api.integration.test.js +0 -170
  52. package/dist/__tests__/integration/gamma-api.integration.test.js.map +0 -1
  53. package/dist/__tests__/test-utils.d.ts +0 -92
  54. package/dist/__tests__/test-utils.d.ts.map +0 -1
  55. package/dist/__tests__/test-utils.js +0 -143
  56. package/dist/__tests__/test-utils.js.map +0 -1
  57. package/dist/clients/bridge-client.d.ts +0 -388
  58. package/dist/clients/bridge-client.d.ts.map +0 -1
  59. package/dist/clients/bridge-client.js +0 -587
  60. package/dist/clients/bridge-client.js.map +0 -1
  61. package/dist/clients/clob-api.d.ts +0 -318
  62. package/dist/clients/clob-api.d.ts.map +0 -1
  63. package/dist/clients/clob-api.js +0 -388
  64. package/dist/clients/clob-api.js.map +0 -1
  65. package/dist/clients/ctf-client.d.ts +0 -473
  66. package/dist/clients/ctf-client.d.ts.map +0 -1
  67. package/dist/clients/ctf-client.js +0 -915
  68. package/dist/clients/ctf-client.js.map +0 -1
  69. package/dist/clients/data-api.d.ts +0 -134
  70. package/dist/clients/data-api.d.ts.map +0 -1
  71. package/dist/clients/data-api.js +0 -265
  72. package/dist/clients/data-api.js.map +0 -1
  73. package/dist/clients/gamma-api.d.ts +0 -401
  74. package/dist/clients/gamma-api.d.ts.map +0 -1
  75. package/dist/clients/gamma-api.js +0 -352
  76. package/dist/clients/gamma-api.js.map +0 -1
  77. package/dist/clients/trading-client.d.ts +0 -252
  78. package/dist/clients/trading-client.d.ts.map +0 -1
  79. package/dist/clients/trading-client.js +0 -543
  80. package/dist/clients/trading-client.js.map +0 -1
  81. package/dist/clients/websocket-manager.d.ts +0 -100
  82. package/dist/clients/websocket-manager.d.ts.map +0 -1
  83. package/dist/clients/websocket-manager.js +0 -193
  84. package/dist/clients/websocket-manager.js.map +0 -1
  85. package/dist/core/cache-adapter-bridge.d.ts +0 -36
  86. package/dist/core/cache-adapter-bridge.d.ts.map +0 -1
  87. package/dist/core/cache-adapter-bridge.js +0 -81
  88. package/dist/core/cache-adapter-bridge.js.map +0 -1
  89. package/dist/core/cache.d.ts +0 -40
  90. package/dist/core/cache.d.ts.map +0 -1
  91. package/dist/core/cache.js +0 -71
  92. package/dist/core/cache.js.map +0 -1
  93. package/dist/core/errors.d.ts +0 -38
  94. package/dist/core/errors.d.ts.map +0 -1
  95. package/dist/core/errors.js +0 -84
  96. package/dist/core/errors.js.map +0 -1
  97. package/dist/core/rate-limiter.d.ts +0 -31
  98. package/dist/core/rate-limiter.d.ts.map +0 -1
  99. package/dist/core/rate-limiter.js +0 -70
  100. package/dist/core/rate-limiter.js.map +0 -1
  101. package/dist/core/types.d.ts +0 -314
  102. package/dist/core/types.d.ts.map +0 -1
  103. package/dist/core/types.js +0 -19
  104. package/dist/core/types.js.map +0 -1
  105. package/dist/core/unified-cache.d.ts +0 -63
  106. package/dist/core/unified-cache.d.ts.map +0 -1
  107. package/dist/core/unified-cache.js +0 -114
  108. package/dist/core/unified-cache.js.map +0 -1
  109. package/dist/index.d.ts +0 -94
  110. package/dist/index.d.ts.map +0 -1
  111. package/dist/index.js +0 -258
  112. package/dist/index.js.map +0 -1
  113. package/dist/mcp/errors.d.ts +0 -33
  114. package/dist/mcp/errors.d.ts.map +0 -1
  115. package/dist/mcp/errors.js +0 -86
  116. package/dist/mcp/errors.js.map +0 -1
  117. package/dist/mcp/index.d.ts +0 -62
  118. package/dist/mcp/index.d.ts.map +0 -1
  119. package/dist/mcp/index.js +0 -173
  120. package/dist/mcp/index.js.map +0 -1
  121. package/dist/mcp/server.d.ts +0 -17
  122. package/dist/mcp/server.d.ts.map +0 -1
  123. package/dist/mcp/server.js +0 -155
  124. package/dist/mcp/server.js.map +0 -1
  125. package/dist/mcp/tools/guide.d.ts +0 -12
  126. package/dist/mcp/tools/guide.d.ts.map +0 -1
  127. package/dist/mcp/tools/guide.js +0 -801
  128. package/dist/mcp/tools/guide.js.map +0 -1
  129. package/dist/mcp/tools/index.d.ts +0 -11
  130. package/dist/mcp/tools/index.d.ts.map +0 -1
  131. package/dist/mcp/tools/index.js +0 -27
  132. package/dist/mcp/tools/index.js.map +0 -1
  133. package/dist/mcp/tools/market.d.ts +0 -11
  134. package/dist/mcp/tools/market.d.ts.map +0 -1
  135. package/dist/mcp/tools/market.js +0 -314
  136. package/dist/mcp/tools/market.js.map +0 -1
  137. package/dist/mcp/tools/order.d.ts +0 -10
  138. package/dist/mcp/tools/order.d.ts.map +0 -1
  139. package/dist/mcp/tools/order.js +0 -258
  140. package/dist/mcp/tools/order.js.map +0 -1
  141. package/dist/mcp/tools/trade.d.ts +0 -38
  142. package/dist/mcp/tools/trade.d.ts.map +0 -1
  143. package/dist/mcp/tools/trade.js +0 -314
  144. package/dist/mcp/tools/trade.js.map +0 -1
  145. package/dist/mcp/tools/trader.d.ts +0 -11
  146. package/dist/mcp/tools/trader.d.ts.map +0 -1
  147. package/dist/mcp/tools/trader.js +0 -277
  148. package/dist/mcp/tools/trader.js.map +0 -1
  149. package/dist/mcp/tools/wallet.d.ts +0 -274
  150. package/dist/mcp/tools/wallet.d.ts.map +0 -1
  151. package/dist/mcp/tools/wallet.js +0 -579
  152. package/dist/mcp/tools/wallet.js.map +0 -1
  153. package/dist/mcp/types.d.ts +0 -413
  154. package/dist/mcp/types.d.ts.map +0 -1
  155. package/dist/mcp/types.js +0 -5
  156. package/dist/mcp/types.js.map +0 -1
  157. package/dist/services/authorization-service.d.ts +0 -97
  158. package/dist/services/authorization-service.d.ts.map +0 -1
  159. package/dist/services/authorization-service.js +0 -279
  160. package/dist/services/authorization-service.js.map +0 -1
  161. package/dist/services/market-service.d.ts +0 -108
  162. package/dist/services/market-service.d.ts.map +0 -1
  163. package/dist/services/market-service.js +0 -458
  164. package/dist/services/market-service.js.map +0 -1
  165. package/dist/services/realtime-service.d.ts +0 -82
  166. package/dist/services/realtime-service.d.ts.map +0 -1
  167. package/dist/services/realtime-service.js +0 -150
  168. package/dist/services/realtime-service.js.map +0 -1
  169. package/dist/services/swap-service.d.ts +0 -217
  170. package/dist/services/swap-service.d.ts.map +0 -1
  171. package/dist/services/swap-service.js +0 -695
  172. package/dist/services/swap-service.js.map +0 -1
  173. package/dist/services/wallet-service.d.ts +0 -94
  174. package/dist/services/wallet-service.d.ts.map +0 -1
  175. package/dist/services/wallet-service.js +0 -173
  176. package/dist/services/wallet-service.js.map +0 -1
  177. package/dist/utils/price-utils.d.ts +0 -153
  178. package/dist/utils/price-utils.d.ts.map +0 -1
  179. package/dist/utils/price-utils.js +0 -236
  180. package/dist/utils/price-utils.js.map +0 -1
  181. package/docs/01-mcp.md +0 -2041
  182. package/docs/e2e/01-trader-tools.md +0 -159
  183. package/docs/e2e/02-market-tools.md +0 -180
  184. package/docs/e2e/03-order-tools.md +0 -166
  185. package/docs/e2e/04-wallet-tools.md +0 -224
  186. package/docs/e2e/05-trading-tools.md +0 -327
  187. package/docs/e2e/06-integration-scenarios.md +0 -481
  188. package/docs/e2e/coordinator.md +0 -376
  189. package/scripts/truth.md +0 -440
  190. package/src/mcp/README.md +0 -380
  191. package/src/mcp/errors.ts +0 -124
  192. package/src/mcp/index.ts +0 -309
  193. package/src/mcp/server.ts +0 -183
  194. package/src/mcp/tools/guide.ts +0 -821
  195. package/src/mcp/tools/index.ts +0 -73
  196. package/src/mcp/tools/market.ts +0 -363
  197. package/src/mcp/tools/order.ts +0 -326
  198. package/src/mcp/tools/trade.ts +0 -417
  199. package/src/mcp/tools/trader.ts +0 -322
  200. package/src/mcp/tools/wallet.ts +0 -683
  201. package/src/mcp/types.ts +0 -472
@@ -1 +0,0 @@
1
- {"version":3,"file":"guide.js","sourceRoot":"","sources":["../../../src/mcp/tools/guide.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,MAAM,CAAC,MAAM,oBAAoB,GAAqB;IACpD;QACE,IAAI,EAAE,iBAAiB;QACvB,WAAW,EACT,kJAAkJ;QACpJ,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE;wBACJ,UAAU;wBACV,sBAAsB;wBACtB,kBAAkB;wBAClB,iBAAiB;wBACjB,kBAAkB;wBAClB,iBAAiB;wBACjB,cAAc;wBACd,kBAAkB;wBAClB,SAAS;qBACV;oBACD,WAAW,EACT,gEAAgE;iBACnE;aACF;SACF;KACF;CACF,CAAC;AAEF,MAAM,cAAc,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqFtB,CAAC;AAEF,MAAM,iBAAiB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyDzB,CAAC;AAEF,MAAM,sBAAsB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+F9B,CAAC;AAEF,MAAM,kBAAkB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoG1B,CAAC;AAEF,MAAM,qBAAqB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuC7B,CAAC;AAEF,MAAM,sBAAsB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqD9B,CAAC;AAEF,MAAM,qBAAqB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkE7B,CAAC;AAEF,MAAM,sBAAsB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuL9B,CAAC;AAEF,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwDrB,CAAC;AAEF,MAAM,UAAU,mBAAmB;IACjC,OAAO;QACL,eAAe,EAAE,KAAK,EAAE,IAA6B,EAAE,EAAE;YACvD,MAAM,QAAQ,GAAI,IAAI,CAAC,QAAmB,IAAI,UAAU,CAAC;YAEzD,MAAM,MAAM,GAA2B;gBACrC,QAAQ,EAAE,cAAc;gBACxB,oBAAoB,EAAE,iBAAiB;gBACvC,gBAAgB,EAAE,sBAAsB;gBACxC,eAAe,EAAE,qBAAqB;gBACtC,gBAAgB,EAAE,sBAAsB;gBACxC,eAAe,EAAE,qBAAqB;gBACtC,YAAY,EAAE,kBAAkB;gBAChC,gBAAgB,EAAE,sBAAsB;gBACxC,OAAO,EAAE,aAAa;aACvB,CAAC;YAEF,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,cAAc,CAAC;YAEjD,OAAO;gBACL,QAAQ;gBACR,KAAK;gBACL,mBAAmB,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;gBACxC,GAAG,EAAE,iDAAiD;aACvD,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -1,11 +0,0 @@
1
- /**
2
- * MCP Tools Index
3
- */
4
- export { guideToolDefinitions, createGuideHandlers, } from './guide.js';
5
- export { traderToolDefinitions, handleGetTraderPositions, handleGetTraderTrades, handleGetTraderProfile, handleGetLeaderboard, } from './trader.js';
6
- export { marketToolDefinitions, handleGetMarket, handleSearchMarkets, handleGetTrendingMarkets, handleGetMarketTrades, } from './market.js';
7
- export { orderToolDefinitions, handleGetOrderbook, handleGetBestPrices, handleEstimateExecution, } from './order.js';
8
- export { tradeToolDefinitions, handlePlaceLimitOrder, handlePlaceMarketOrder, handleCancelOrder, handleGetMyOrders, } from './trade.js';
9
- export { walletToolDefinitions, handleGetSupportedAssets, handleGetDepositAddresses, handleDepositUsdc, handleCheckAllowances, handleApproveTrading, handleSwap, handleSwapAndDeposit, handleGetTokenBalances, handleGetWalletBalances, handleGetSwapQuote, handleGetAvailablePools, } from './wallet.js';
10
- export declare const allToolDefinitions: import("../types.js").ToolDefinition[];
11
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EACL,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,qBAAqB,EACrB,eAAe,EACf,mBAAmB,EACnB,wBAAwB,EACxB,qBAAqB,GACtB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,oBAAoB,EACpB,qBAAqB,EACrB,sBAAsB,EACtB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,yBAAyB,EACzB,iBAAiB,EACjB,qBAAqB,EACrB,oBAAoB,EACpB,UAAU,EACV,oBAAoB,EACpB,sBAAsB,EACtB,uBAAuB,EACvB,kBAAkB,EAClB,uBAAuB,GACxB,MAAM,aAAa,CAAC;AAWrB,eAAO,MAAM,kBAAkB,wCAO9B,CAAC"}
@@ -1,27 +0,0 @@
1
- /**
2
- * MCP Tools Index
3
- */
4
- // Re-export all tool definitions and handlers
5
- export { guideToolDefinitions, createGuideHandlers, } from './guide.js';
6
- export { traderToolDefinitions, handleGetTraderPositions, handleGetTraderTrades, handleGetTraderProfile, handleGetLeaderboard, } from './trader.js';
7
- export { marketToolDefinitions, handleGetMarket, handleSearchMarkets, handleGetTrendingMarkets, handleGetMarketTrades, } from './market.js';
8
- export { orderToolDefinitions, handleGetOrderbook, handleGetBestPrices, handleEstimateExecution, } from './order.js';
9
- export { tradeToolDefinitions, handlePlaceLimitOrder, handlePlaceMarketOrder, handleCancelOrder, handleGetMyOrders, } from './trade.js';
10
- export { walletToolDefinitions, handleGetSupportedAssets, handleGetDepositAddresses, handleDepositUsdc, handleCheckAllowances, handleApproveTrading, handleSwap, handleSwapAndDeposit, handleGetTokenBalances, handleGetWalletBalances, handleGetSwapQuote, handleGetAvailablePools, } from './wallet.js';
11
- // Combined tool definitions
12
- import { guideToolDefinitions } from './guide.js';
13
- import { traderToolDefinitions } from './trader.js';
14
- import { marketToolDefinitions } from './market.js';
15
- import { orderToolDefinitions } from './order.js';
16
- import { tradeToolDefinitions } from './trade.js';
17
- import { walletToolDefinitions } from './wallet.js';
18
- // Guide tool FIRST so AI sees it prominently
19
- export const allToolDefinitions = [
20
- ...guideToolDefinitions,
21
- ...traderToolDefinitions,
22
- ...marketToolDefinitions,
23
- ...orderToolDefinitions,
24
- ...tradeToolDefinitions,
25
- ...walletToolDefinitions,
26
- ];
27
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/mcp/tools/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,8CAA8C;AAC9C,OAAO,EACL,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,qBAAqB,EACrB,eAAe,EACf,mBAAmB,EACnB,wBAAwB,EACxB,qBAAqB,GACtB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,oBAAoB,EACpB,qBAAqB,EACrB,sBAAsB,EACtB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,yBAAyB,EACzB,iBAAiB,EACjB,qBAAqB,EACrB,oBAAoB,EACpB,UAAU,EACV,oBAAoB,EACpB,sBAAsB,EACtB,uBAAuB,EACvB,kBAAkB,EAClB,uBAAuB,GACxB,MAAM,aAAa,CAAC;AAErB,4BAA4B;AAC5B,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEpD,6CAA6C;AAC7C,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,GAAG,oBAAoB;IACvB,GAAG,qBAAqB;IACxB,GAAG,qBAAqB;IACxB,GAAG,oBAAoB;IACvB,GAAG,oBAAoB;IACvB,GAAG,qBAAqB;CACzB,CAAC"}
@@ -1,11 +0,0 @@
1
- /**
2
- * Market Tools - MCP tools for market discovery and analysis
3
- */
4
- import type { PolymarketSDK } from '../../index.js';
5
- import type { ToolDefinition, GetMarketInput, GetMarketOutput, SearchMarketsInput, SearchMarketsOutput, GetTrendingMarketsInput, GetTrendingMarketsOutput, GetMarketTradesInput, GetMarketTradesOutput } from '../types.js';
6
- export declare const marketToolDefinitions: ToolDefinition[];
7
- export declare function handleGetMarket(sdk: PolymarketSDK, input: GetMarketInput): Promise<GetMarketOutput>;
8
- export declare function handleSearchMarkets(sdk: PolymarketSDK, input: SearchMarketsInput): Promise<SearchMarketsOutput>;
9
- export declare function handleGetTrendingMarkets(sdk: PolymarketSDK, input: GetTrendingMarketsInput): Promise<GetTrendingMarketsOutput>;
10
- export declare function handleGetMarketTrades(sdk: PolymarketSDK, input: GetMarketTradesInput): Promise<GetMarketTradesOutput>;
11
- //# sourceMappingURL=market.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"market.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/market.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,KAAK,EACV,cAAc,EACd,cAAc,EACd,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EACnB,uBAAuB,EACvB,wBAAwB,EACxB,oBAAoB,EACpB,qBAAqB,EACtB,MAAM,aAAa,CAAC;AAGrB,eAAO,MAAM,qBAAqB,EAAE,cAAc,EA6EjD,CAAC;AAEF,wBAAsB,eAAe,CACnC,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,cAAc,GACpB,OAAO,CAAC,eAAe,CAAC,CAgD1B;AAED,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,kBAAkB,GACxB,OAAO,CAAC,mBAAmB,CAAC,CA+E9B;AAED,wBAAsB,wBAAwB,CAC5C,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,uBAAuB,GAC7B,OAAO,CAAC,wBAAwB,CAAC,CAoEnC;AAED,wBAAsB,qBAAqB,CACzC,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,oBAAoB,GAC1B,OAAO,CAAC,qBAAqB,CAAC,CAoDhC"}
@@ -1,314 +0,0 @@
1
- /**
2
- * Market Tools - MCP tools for market discovery and analysis
3
- */
4
- import { validateConditionId, wrapError, McpToolError, ErrorCode } from '../errors.js';
5
- export const marketToolDefinitions = [
6
- {
7
- name: 'get_market',
8
- description: 'Get market details including prices, volume, and status',
9
- inputSchema: {
10
- type: 'object',
11
- properties: {
12
- identifier: {
13
- type: 'string',
14
- description: "Market slug (e.g., 'us-recession-in-2025') or conditionId (0x...)",
15
- },
16
- },
17
- required: ['identifier'],
18
- },
19
- },
20
- {
21
- name: 'search_markets',
22
- description: 'Search for markets by keyword. Searches in question text and slug. Returns markets sorted by 24h volume.',
23
- inputSchema: {
24
- type: 'object',
25
- properties: {
26
- query: {
27
- type: 'string',
28
- description: 'Search keyword (e.g., "Trump", "Bitcoin", "recession"). Multi-word queries match any word.',
29
- },
30
- active: {
31
- type: 'boolean',
32
- description: 'Only return active markets',
33
- default: true,
34
- },
35
- limit: {
36
- type: 'number',
37
- description: 'Maximum results',
38
- default: 10,
39
- },
40
- },
41
- required: ['query'],
42
- },
43
- },
44
- {
45
- name: 'get_trending_markets',
46
- description: 'Get trending markets sorted by volume or liquidity',
47
- inputSchema: {
48
- type: 'object',
49
- properties: {
50
- limit: {
51
- type: 'number',
52
- default: 10,
53
- },
54
- sortBy: {
55
- type: 'string',
56
- enum: ['volume', 'liquidity', 'newest'],
57
- default: 'volume',
58
- },
59
- },
60
- },
61
- },
62
- {
63
- name: 'get_market_trades',
64
- description: 'Get recent trades for a specific market',
65
- inputSchema: {
66
- type: 'object',
67
- properties: {
68
- conditionId: {
69
- type: 'string',
70
- description: 'Market condition ID',
71
- },
72
- limit: {
73
- type: 'number',
74
- default: 20,
75
- },
76
- },
77
- required: ['conditionId'],
78
- },
79
- },
80
- ];
81
- export async function handleGetMarket(sdk, input) {
82
- if (!input.identifier) {
83
- throw new McpToolError(ErrorCode.INVALID_INPUT, 'Market identifier is required');
84
- }
85
- try {
86
- const market = await sdk.getMarket(input.identifier);
87
- return {
88
- market: {
89
- conditionId: market.conditionId,
90
- question: market.question,
91
- slug: market.slug,
92
- description: market.description,
93
- },
94
- prices: {
95
- yes: market.tokens.yes.price,
96
- no: market.tokens.no.price,
97
- spread: market.spread,
98
- },
99
- tokens: {
100
- yes: {
101
- tokenId: market.tokens.yes.tokenId,
102
- price: market.tokens.yes.price,
103
- },
104
- no: {
105
- tokenId: market.tokens.no.tokenId,
106
- price: market.tokens.no.price,
107
- },
108
- },
109
- stats: {
110
- volume: market.volume,
111
- liquidity: market.liquidity,
112
- },
113
- status: {
114
- active: market.active,
115
- closed: market.closed,
116
- acceptingOrders: market.acceptingOrders,
117
- endDate: market.endDate?.toISOString(),
118
- },
119
- trading: {
120
- minTickSize: undefined, // From CLOB if needed
121
- minOrderSize: undefined,
122
- },
123
- };
124
- }
125
- catch (err) {
126
- throw wrapError(err);
127
- }
128
- }
129
- export async function handleSearchMarkets(sdk, input) {
130
- if (!input.query) {
131
- throw new McpToolError(ErrorCode.INVALID_INPUT, 'Search query is required');
132
- }
133
- try {
134
- // Fetch active markets sorted by 24h volume for better relevance
135
- // Note: Gamma API doesn't support server-side text search,
136
- // so we fetch a larger set and filter client-side
137
- const allMarkets = await sdk.gammaApi.getMarkets({
138
- active: input.active !== false,
139
- closed: false,
140
- order: 'volume24hr',
141
- ascending: false,
142
- limit: 500, // Fetch more markets for comprehensive search
143
- });
144
- const queryLower = input.query.toLowerCase();
145
- const queryWords = queryLower.split(/\s+/).filter((w) => w.length > 0);
146
- // Filter by query - match any word in question or slug
147
- const filtered = allMarkets.filter((m) => {
148
- const questionLower = m.question.toLowerCase();
149
- const slugLower = m.slug.toLowerCase();
150
- // Match if any query word is found in question or slug
151
- return queryWords.some((word) => questionLower.includes(word) || slugLower.includes(word));
152
- });
153
- // Sort by relevance: prioritize exact phrase matches, then by volume
154
- filtered.sort((a, b) => {
155
- const aQuestion = a.question.toLowerCase();
156
- const bQuestion = b.question.toLowerCase();
157
- const aExact = aQuestion.includes(queryLower);
158
- const bExact = bQuestion.includes(queryLower);
159
- // Exact phrase matches first
160
- if (aExact && !bExact)
161
- return -1;
162
- if (!aExact && bExact)
163
- return 1;
164
- // Then by 24h volume
165
- return (b.volume24hr || 0) - (a.volume24hr || 0);
166
- });
167
- // Apply limit
168
- const results = filtered.slice(0, input.limit || 10);
169
- return {
170
- markets: results.map((m) => {
171
- // Safely handle endDate - it may be invalid
172
- let endDateStr;
173
- try {
174
- if (m.endDate && !isNaN(m.endDate.getTime())) {
175
- endDateStr = m.endDate.toISOString();
176
- }
177
- }
178
- catch {
179
- // Ignore invalid date
180
- }
181
- return {
182
- conditionId: m.conditionId,
183
- question: m.question,
184
- slug: m.slug,
185
- prices: {
186
- yes: m.outcomePrices[0] || 0.5,
187
- no: m.outcomePrices[1] || 0.5,
188
- },
189
- volume: m.volume,
190
- volume24h: m.volume24hr,
191
- endDate: endDateStr,
192
- };
193
- }),
194
- total: filtered.length,
195
- };
196
- }
197
- catch (err) {
198
- throw wrapError(err);
199
- }
200
- }
201
- export async function handleGetTrendingMarkets(sdk, input) {
202
- try {
203
- const sortBy = input.sortBy || 'volume';
204
- let orderBy;
205
- const ascending = false;
206
- switch (sortBy) {
207
- case 'volume':
208
- orderBy = 'volume24hr';
209
- break;
210
- case 'liquidity':
211
- orderBy = 'liquidity';
212
- break;
213
- case 'newest':
214
- orderBy = 'startDate';
215
- break;
216
- default:
217
- orderBy = 'volume24hr';
218
- }
219
- // Fetch more markets than requested to allow filtering
220
- const requestedLimit = input.limit || 10;
221
- const markets = await sdk.gammaApi.getMarkets({
222
- active: true,
223
- closed: false, // Explicitly exclude closed markets
224
- limit: requestedLimit * 2, // Fetch extra in case some need filtering
225
- order: orderBy,
226
- ascending,
227
- });
228
- // Filter out markets that are closed or not accepting orders
229
- // This handles edge cases where API returns recently-settled markets
230
- const activeMarkets = markets.filter((m) => {
231
- // Skip if explicitly marked as closed
232
- if (m.closed)
233
- return false;
234
- // Skip if market has ended (endDate in past)
235
- if (m.endDate) {
236
- const endTime = m.endDate instanceof Date ? m.endDate.getTime() : new Date(m.endDate).getTime();
237
- if (!isNaN(endTime) && endTime < Date.now())
238
- return false;
239
- }
240
- return true;
241
- });
242
- // Take only the requested number after filtering
243
- const finalMarkets = activeMarkets.slice(0, requestedLimit);
244
- return {
245
- markets: finalMarkets.map((m) => ({
246
- conditionId: m.conditionId,
247
- question: m.question,
248
- slug: m.slug,
249
- volume24h: m.volume24hr,
250
- priceChange24h: m.oneDayPriceChange,
251
- prices: {
252
- yes: m.outcomePrices[0] || 0.5,
253
- no: m.outcomePrices[1] || 0.5,
254
- },
255
- // Add status fields for transparency
256
- status: {
257
- active: m.active,
258
- closed: m.closed,
259
- endDate: m.endDate ? (m.endDate instanceof Date ? m.endDate.toISOString() : String(m.endDate)) : undefined,
260
- },
261
- })),
262
- };
263
- }
264
- catch (err) {
265
- throw wrapError(err);
266
- }
267
- }
268
- export async function handleGetMarketTrades(sdk, input) {
269
- validateConditionId(input.conditionId);
270
- try {
271
- const trades = await sdk.dataApi.getTradesByMarket(input.conditionId, input.limit || 20);
272
- // Get market info for the title
273
- let marketTitle = '';
274
- try {
275
- const market = await sdk.getMarket(input.conditionId);
276
- marketTitle = market.question;
277
- }
278
- catch {
279
- // Use conditionId as fallback
280
- marketTitle = input.conditionId;
281
- }
282
- const now = Date.now();
283
- const oneDayAgo = now - 24 * 60 * 60 * 1000;
284
- const recentTrades = trades.filter((t) => t.timestamp >= oneDayAgo);
285
- const buyTrades = recentTrades.filter((t) => t.side === 'BUY');
286
- const sellTrades = recentTrades.filter((t) => t.side === 'SELL');
287
- const buyVolume24h = buyTrades.reduce((sum, t) => sum + t.size * t.price, 0);
288
- const sellVolume24h = sellTrades.reduce((sum, t) => sum + t.size * t.price, 0);
289
- return {
290
- market: {
291
- conditionId: input.conditionId,
292
- title: marketTitle,
293
- },
294
- trades: trades.slice(0, input.limit || 20).map((t) => ({
295
- trader: t.proxyWallet || '',
296
- traderName: t.name,
297
- side: t.side,
298
- outcome: t.outcome,
299
- size: t.size,
300
- price: t.price,
301
- timestamp: new Date(t.timestamp).toISOString(),
302
- })),
303
- summary: {
304
- buyVolume24h,
305
- sellVolume24h,
306
- netFlow: buyVolume24h - sellVolume24h,
307
- },
308
- };
309
- }
310
- catch (err) {
311
- throw wrapError(err);
312
- }
313
- }
314
- //# sourceMappingURL=market.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"market.js","sourceRoot":"","sources":["../../../src/mcp/tools/market.ts"],"names":[],"mappings":"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"}
@@ -1,10 +0,0 @@
1
- /**
2
- * Order Tools - MCP tools for orderbook analysis
3
- */
4
- import type { PolymarketSDK } from '../../index.js';
5
- import type { ToolDefinition, GetOrderbookInput, GetOrderbookOutput, GetBestPricesInput, GetBestPricesOutput, EstimateExecutionInput, EstimateExecutionOutput } from '../types.js';
6
- export declare const orderToolDefinitions: ToolDefinition[];
7
- export declare function handleGetOrderbook(sdk: PolymarketSDK, input: GetOrderbookInput): Promise<GetOrderbookOutput>;
8
- export declare function handleGetBestPrices(sdk: PolymarketSDK, input: GetBestPricesInput): Promise<GetBestPricesOutput>;
9
- export declare function handleEstimateExecution(sdk: PolymarketSDK, input: EstimateExecutionInput): Promise<EstimateExecutionOutput>;
10
- //# sourceMappingURL=order.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"order.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/order.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,KAAK,EACV,cAAc,EACd,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,sBAAsB,EACtB,uBAAuB,EACxB,MAAM,aAAa,CAAC;AAWrB,eAAO,MAAM,oBAAoB,EAAE,cAAc,EAgEhD,CAAC;AAEF,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,iBAAiB,GACvB,OAAO,CAAC,kBAAkB,CAAC,CAqF7B;AAED,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,kBAAkB,GACxB,OAAO,CAAC,mBAAmB,CAAC,CAoC9B;AAED,wBAAsB,uBAAuB,CAC3C,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,sBAAsB,GAC5B,OAAO,CAAC,uBAAuB,CAAC,CAqGlC"}