@gala-chain/launchpad-mcp-server 5.0.3 → 5.0.4-beta.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.
- package/README.md +49 -21
- package/dist/ai-docs.json +7357 -0
- package/dist/constants/mcpToolNames.d.ts +3 -1
- package/dist/constants/mcpToolNames.d.ts.map +1 -1
- package/dist/constants/mcpToolNames.js +2 -1
- package/dist/constants/mcpToolNames.js.map +1 -1
- package/dist/explain-sdk-usage-ai.json +3445 -0
- package/dist/generated/version.d.ts +1 -1
- package/dist/generated/version.d.ts.map +1 -1
- package/dist/generated/version.js +1 -1
- package/dist/generated/version.js.map +1 -1
- package/dist/prompts/account.d.ts +24 -0
- package/dist/prompts/account.d.ts.map +1 -0
- package/dist/prompts/account.js +89 -0
- package/dist/prompts/account.js.map +1 -0
- package/dist/prompts/api-keys.d.ts +36 -0
- package/dist/prompts/api-keys.d.ts.map +1 -0
- package/dist/prompts/api-keys.js +251 -0
- package/dist/prompts/api-keys.js.map +1 -0
- package/dist/prompts/auth.d.ts +29 -0
- package/dist/prompts/auth.d.ts.map +1 -0
- package/dist/prompts/auth.js +127 -0
- package/dist/prompts/auth.js.map +1 -0
- package/dist/prompts/balances.d.ts.map +1 -1
- package/dist/prompts/balances.js +17 -17
- package/dist/prompts/balances.js.map +1 -1
- package/dist/prompts/bans.d.ts +23 -0
- package/dist/prompts/bans.d.ts.map +1 -0
- package/dist/prompts/bans.js +82 -0
- package/dist/prompts/bans.js.map +1 -0
- package/dist/prompts/bridge.d.ts +2 -1
- package/dist/prompts/bridge.d.ts.map +1 -1
- package/dist/prompts/bridge.js +91 -227
- package/dist/prompts/bridge.js.map +1 -1
- package/dist/prompts/burns.d.ts +30 -0
- package/dist/prompts/burns.d.ts.map +1 -0
- package/dist/prompts/burns.js +127 -0
- package/dist/prompts/burns.js.map +1 -0
- package/dist/prompts/chat-messages.d.ts +21 -0
- package/dist/prompts/chat-messages.d.ts.map +1 -0
- package/dist/prompts/chat-messages.js +103 -0
- package/dist/prompts/chat-messages.js.map +1 -0
- package/dist/prompts/chat.d.ts +67 -0
- package/dist/prompts/chat.d.ts.map +1 -0
- package/dist/prompts/chat.js +355 -0
- package/dist/prompts/chat.js.map +1 -0
- package/dist/prompts/comments.d.ts +29 -0
- package/dist/prompts/comments.d.ts.map +1 -0
- package/dist/prompts/comments.js +133 -0
- package/dist/prompts/comments.js.map +1 -0
- package/dist/prompts/content-flags.d.ts +29 -0
- package/dist/prompts/content-flags.d.ts.map +1 -0
- package/dist/prompts/content-flags.js +248 -0
- package/dist/prompts/content-flags.js.map +1 -0
- package/dist/prompts/content-reactions.d.ts +29 -0
- package/dist/prompts/content-reactions.d.ts.map +1 -0
- package/dist/prompts/content-reactions.js +77 -0
- package/dist/prompts/content-reactions.js.map +1 -0
- package/dist/prompts/create-token.d.ts.map +1 -1
- package/dist/prompts/create-token.js +11 -18
- package/dist/prompts/create-token.js.map +1 -1
- package/dist/prompts/dex-trading.d.ts.map +1 -1
- package/dist/prompts/dex-trading.js +11 -42
- package/dist/prompts/dex-trading.js.map +1 -1
- package/dist/prompts/discover-tokens.d.ts.map +1 -1
- package/dist/prompts/discover-tokens.js +11 -26
- package/dist/prompts/discover-tokens.js.map +1 -1
- package/dist/prompts/event-subscriptions.d.ts +45 -0
- package/dist/prompts/event-subscriptions.d.ts.map +1 -0
- package/dist/prompts/event-subscriptions.js +330 -0
- package/dist/prompts/event-subscriptions.js.map +1 -0
- package/dist/prompts/explore-dex-pools.d.ts +2 -0
- package/dist/prompts/explore-dex-pools.d.ts.map +1 -1
- package/dist/prompts/explore-dex-pools.js +26 -104
- package/dist/prompts/explore-dex-pools.js.map +1 -1
- package/dist/prompts/factories/balance-prompt-factory.d.ts +102 -0
- package/dist/prompts/factories/balance-prompt-factory.d.ts.map +1 -0
- package/dist/prompts/factories/balance-prompt-factory.js +176 -0
- package/dist/prompts/factories/balance-prompt-factory.js.map +1 -0
- package/dist/prompts/factories/ban-management-factory.d.ts +90 -0
- package/dist/prompts/factories/ban-management-factory.d.ts.map +1 -0
- package/dist/prompts/factories/ban-management-factory.js +330 -0
- package/dist/prompts/factories/ban-management-factory.js.map +1 -0
- package/dist/prompts/factories/calculation-prompt-factory.d.ts +119 -0
- package/dist/prompts/factories/calculation-prompt-factory.d.ts.map +1 -0
- package/dist/prompts/factories/calculation-prompt-factory.js +183 -0
- package/dist/prompts/factories/calculation-prompt-factory.js.map +1 -0
- package/dist/prompts/factories/discovery-prompt-factory.d.ts +135 -0
- package/dist/prompts/factories/discovery-prompt-factory.d.ts.map +1 -0
- package/dist/prompts/factories/discovery-prompt-factory.js +240 -0
- package/dist/prompts/factories/discovery-prompt-factory.js.map +1 -0
- package/dist/prompts/factories/event-subscription-factory.d.ts +177 -0
- package/dist/prompts/factories/event-subscription-factory.d.ts.map +1 -0
- package/dist/prompts/factories/event-subscription-factory.js +329 -0
- package/dist/prompts/factories/event-subscription-factory.js.map +1 -0
- package/dist/prompts/factories/filtered-list-prompt-factory.d.ts +95 -0
- package/dist/prompts/factories/filtered-list-prompt-factory.d.ts.map +1 -0
- package/dist/prompts/factories/filtered-list-prompt-factory.js +147 -0
- package/dist/prompts/factories/filtered-list-prompt-factory.js.map +1 -0
- package/dist/prompts/factories/index.d.ts +33 -0
- package/dist/prompts/factories/index.d.ts.map +1 -0
- package/dist/prompts/factories/index.js +91 -0
- package/dist/prompts/factories/index.js.map +1 -0
- package/dist/prompts/factories/invite-management-factory.d.ts +88 -0
- package/dist/prompts/factories/invite-management-factory.d.ts.map +1 -0
- package/dist/prompts/factories/invite-management-factory.js +262 -0
- package/dist/prompts/factories/invite-management-factory.js.map +1 -0
- package/dist/prompts/factories/reaction-prompt-factory.d.ts +81 -0
- package/dist/prompts/factories/reaction-prompt-factory.d.ts.map +1 -0
- package/dist/prompts/factories/reaction-prompt-factory.js +188 -0
- package/dist/prompts/factories/reaction-prompt-factory.js.map +1 -0
- package/dist/prompts/factories/simple-operation-factory.d.ts +166 -0
- package/dist/prompts/factories/simple-operation-factory.d.ts.map +1 -0
- package/dist/prompts/factories/simple-operation-factory.js +218 -0
- package/dist/prompts/factories/simple-operation-factory.js.map +1 -0
- package/dist/prompts/index.d.ts +31 -6
- package/dist/prompts/index.d.ts.map +1 -1
- package/dist/prompts/index.js +136 -5
- package/dist/prompts/index.js.map +1 -1
- package/dist/prompts/locks.d.ts.map +1 -1
- package/dist/prompts/locks.js +32 -56
- package/dist/prompts/locks.js.map +1 -1
- package/dist/prompts/moderators.d.ts +22 -0
- package/dist/prompts/moderators.d.ts.map +1 -0
- package/dist/prompts/moderators.js +62 -0
- package/dist/prompts/moderators.js.map +1 -0
- package/dist/prompts/monitoring.d.ts +3 -1
- package/dist/prompts/monitoring.d.ts.map +1 -1
- package/dist/prompts/monitoring.js +52 -140
- package/dist/prompts/monitoring.js.map +1 -1
- package/dist/prompts/overseers.d.ts +34 -0
- package/dist/prompts/overseers.d.ts.map +1 -0
- package/dist/prompts/overseers.js +117 -0
- package/dist/prompts/overseers.js.map +1 -0
- package/dist/prompts/pools.d.ts +22 -20
- package/dist/prompts/pools.d.ts.map +1 -1
- package/dist/prompts/pools.js +150 -251
- package/dist/prompts/pools.js.map +1 -1
- package/dist/prompts/portfolio.d.ts.map +1 -1
- package/dist/prompts/portfolio.js +1 -9
- package/dist/prompts/portfolio.js.map +1 -1
- package/dist/prompts/prompt-factories.d.ts +179 -0
- package/dist/prompts/prompt-factories.d.ts.map +1 -0
- package/dist/prompts/prompt-factories.js +230 -0
- package/dist/prompts/prompt-factories.js.map +1 -0
- package/dist/prompts/referrals.d.ts +27 -0
- package/dist/prompts/referrals.d.ts.map +1 -0
- package/dist/prompts/referrals.js +176 -0
- package/dist/prompts/referrals.js.map +1 -0
- package/dist/prompts/streaming.d.ts +84 -0
- package/dist/prompts/streaming.d.ts.map +1 -0
- package/dist/prompts/streaming.js +411 -0
- package/dist/prompts/streaming.js.map +1 -0
- package/dist/prompts/tier1-bridge-operations.d.ts +30 -0
- package/dist/prompts/tier1-bridge-operations.d.ts.map +1 -0
- package/dist/prompts/tier1-bridge-operations.js +634 -0
- package/dist/prompts/tier1-bridge-operations.js.map +1 -0
- package/dist/prompts/tier1-liquidity-management.d.ts +30 -0
- package/dist/prompts/tier1-liquidity-management.d.ts.map +1 -0
- package/dist/prompts/tier1-liquidity-management.js +560 -0
- package/dist/prompts/tier1-liquidity-management.js.map +1 -0
- package/dist/prompts/tier1-pool-discovery.d.ts +30 -0
- package/dist/prompts/tier1-pool-discovery.d.ts.map +1 -0
- package/dist/prompts/tier1-pool-discovery.js +221 -0
- package/dist/prompts/tier1-pool-discovery.js.map +1 -0
- package/dist/prompts/tier1-price-history.d.ts +30 -0
- package/dist/prompts/tier1-price-history.d.ts.map +1 -0
- package/dist/prompts/tier1-price-history.js +429 -0
- package/dist/prompts/tier1-price-history.js.map +1 -0
- package/dist/prompts/tier1-token-analysis.d.ts +30 -0
- package/dist/prompts/tier1-token-analysis.d.ts.map +1 -0
- package/dist/prompts/tier1-token-analysis.js +376 -0
- package/dist/prompts/tier1-token-analysis.js.map +1 -0
- package/dist/prompts/tier2-account-setup.d.ts +24 -0
- package/dist/prompts/tier2-account-setup.d.ts.map +1 -0
- package/dist/prompts/tier2-account-setup.js +206 -0
- package/dist/prompts/tier2-account-setup.js.map +1 -0
- package/dist/prompts/tier2-advanced-liquidity.d.ts +24 -0
- package/dist/prompts/tier2-advanced-liquidity.d.ts.map +1 -0
- package/dist/prompts/tier2-advanced-liquidity.js +298 -0
- package/dist/prompts/tier2-advanced-liquidity.js.map +1 -0
- package/dist/prompts/tier2-asset-management.d.ts +25 -0
- package/dist/prompts/tier2-asset-management.d.ts.map +1 -0
- package/dist/prompts/tier2-asset-management.js +246 -0
- package/dist/prompts/tier2-asset-management.js.map +1 -0
- package/dist/prompts/tier2-token-lifecycle.d.ts +25 -0
- package/dist/prompts/tier2-token-lifecycle.d.ts.map +1 -0
- package/dist/prompts/tier2-token-lifecycle.js +241 -0
- package/dist/prompts/tier2-token-lifecycle.js.map +1 -0
- package/dist/prompts/tier3-community-engagement.d.ts +26 -0
- package/dist/prompts/tier3-community-engagement.d.ts.map +1 -0
- package/dist/prompts/tier3-community-engagement.js +610 -0
- package/dist/prompts/tier3-community-engagement.js.map +1 -0
- package/dist/prompts/tier3-moderation-workflows.d.ts +31 -0
- package/dist/prompts/tier3-moderation-workflows.d.ts.map +1 -0
- package/dist/prompts/tier3-moderation-workflows.js +511 -0
- package/dist/prompts/tier3-moderation-workflows.js.map +1 -0
- package/dist/prompts/tier3-streaming-management.d.ts +26 -0
- package/dist/prompts/tier3-streaming-management.d.ts.map +1 -0
- package/dist/prompts/tier3-streaming-management.js +797 -0
- package/dist/prompts/tier3-streaming-management.js.map +1 -0
- package/dist/prompts/token-bans.d.ts +27 -0
- package/dist/prompts/token-bans.d.ts.map +1 -0
- package/dist/prompts/token-bans.js +77 -0
- package/dist/prompts/token-bans.js.map +1 -0
- package/dist/prompts/trades.d.ts +22 -0
- package/dist/prompts/trades.d.ts.map +1 -0
- package/dist/prompts/trades.js +107 -0
- package/dist/prompts/trades.js.map +1 -0
- package/dist/prompts/trading-calculations.d.ts +3 -1
- package/dist/prompts/trading-calculations.d.ts.map +1 -1
- package/dist/prompts/trading-calculations.js +134 -270
- package/dist/prompts/trading-calculations.js.map +1 -1
- package/dist/prompts/trading.d.ts +10 -1
- package/dist/prompts/trading.d.ts.map +1 -1
- package/dist/prompts/trading.js +128 -2
- package/dist/prompts/trading.js.map +1 -1
- package/dist/prompts/transfers.d.ts +2 -1
- package/dist/prompts/transfers.d.ts.map +1 -1
- package/dist/prompts/transfers.js +26 -30
- package/dist/prompts/transfers.js.map +1 -1
- package/dist/prompts/uploads.d.ts +19 -0
- package/dist/prompts/uploads.d.ts.map +1 -0
- package/dist/prompts/uploads.js +114 -0
- package/dist/prompts/uploads.js.map +1 -0
- package/dist/prompts/utility-tools.d.ts.map +1 -1
- package/dist/prompts/utility-tools.js +27 -18
- package/dist/prompts/utility-tools.js.map +1 -1
- package/dist/prompts/utils/index.d.ts +21 -0
- package/dist/prompts/utils/index.d.ts.map +1 -0
- package/dist/prompts/utils/index.js +38 -0
- package/dist/prompts/utils/index.js.map +1 -0
- package/dist/prompts/utils/pagination-helpers.d.ts +95 -0
- package/dist/prompts/utils/pagination-helpers.d.ts.map +1 -0
- package/dist/prompts/utils/pagination-helpers.js +121 -0
- package/dist/prompts/utils/pagination-helpers.js.map +1 -0
- package/dist/prompts/utils/workflowTemplates.d.ts.map +1 -1
- package/dist/prompts/utils/workflowTemplates.js +4 -3
- package/dist/prompts/utils/workflowTemplates.js.map +1 -1
- package/dist/prompts/wallet.d.ts +24 -0
- package/dist/prompts/wallet.d.ts.map +1 -0
- package/dist/prompts/wallet.js +139 -0
- package/dist/prompts/wallet.js.map +1 -0
- package/dist/schemas/common-schemas.d.ts +890 -0
- package/dist/schemas/common-schemas.d.ts.map +1 -1
- package/dist/schemas/common-schemas.js +853 -1
- package/dist/schemas/common-schemas.js.map +1 -1
- package/dist/server.d.ts +31 -3
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +68 -7
- package/dist/server.js.map +1 -1
- package/dist/tools/api-keys/index.d.ts +41 -0
- package/dist/tools/api-keys/index.d.ts.map +1 -0
- package/dist/tools/api-keys/index.js +245 -0
- package/dist/tools/api-keys/index.js.map +1 -0
- package/dist/tools/auth/index.d.ts +19 -0
- package/dist/tools/auth/index.d.ts.map +1 -0
- package/dist/tools/auth/index.js +138 -0
- package/dist/tools/auth/index.js.map +1 -0
- package/dist/tools/balance/helpers/format-balance.d.ts +86 -0
- package/dist/tools/balance/helpers/format-balance.d.ts.map +1 -0
- package/dist/tools/balance/helpers/format-balance.js +87 -0
- package/dist/tools/balance/helpers/format-balance.js.map +1 -0
- package/dist/tools/balance/index.d.ts +4 -4
- package/dist/tools/balance/index.d.ts.map +1 -1
- package/dist/tools/balance/index.js +64 -176
- package/dist/tools/balance/index.js.map +1 -1
- package/dist/tools/ban/index.d.ts +37 -0
- package/dist/tools/ban/index.d.ts.map +1 -0
- package/dist/tools/ban/index.js +206 -0
- package/dist/tools/ban/index.js.map +1 -0
- package/dist/tools/bridge/helpers/bridgeable-token-tools.d.ts +87 -0
- package/dist/tools/bridge/helpers/bridgeable-token-tools.d.ts.map +1 -0
- package/dist/tools/bridge/helpers/bridgeable-token-tools.js +130 -0
- package/dist/tools/bridge/helpers/bridgeable-token-tools.js.map +1 -0
- package/dist/tools/bridge/helpers/external-chain-balance-tools.d.ts +87 -0
- package/dist/tools/bridge/helpers/external-chain-balance-tools.d.ts.map +1 -0
- package/dist/tools/bridge/helpers/external-chain-balance-tools.js +167 -0
- package/dist/tools/bridge/helpers/external-chain-balance-tools.js.map +1 -0
- package/dist/tools/bridge/index.d.ts +3 -7
- package/dist/tools/bridge/index.d.ts.map +1 -1
- package/dist/tools/bridge/index.js +89 -371
- package/dist/tools/bridge/index.js.map +1 -1
- package/dist/tools/burns/index.d.ts.map +1 -1
- package/dist/tools/burns/index.js +8 -36
- package/dist/tools/burns/index.js.map +1 -1
- package/dist/tools/chat/getPinnedChatMessage.d.ts +15 -0
- package/dist/tools/chat/getPinnedChatMessage.d.ts.map +1 -0
- package/dist/tools/chat/getPinnedChatMessage.js +37 -0
- package/dist/tools/chat/getPinnedChatMessage.js.map +1 -0
- package/dist/tools/chat/index.d.ts +73 -0
- package/dist/tools/chat/index.d.ts.map +1 -0
- package/dist/tools/chat/index.js +359 -0
- package/dist/tools/chat/index.js.map +1 -0
- package/dist/tools/chat/pinChatMessage.d.ts +16 -0
- package/dist/tools/chat/pinChatMessage.d.ts.map +1 -0
- package/dist/tools/chat/pinChatMessage.js +51 -0
- package/dist/tools/chat/pinChatMessage.js.map +1 -0
- package/dist/tools/chat/unpinChatMessage.d.ts +16 -0
- package/dist/tools/chat/unpinChatMessage.d.ts.map +1 -0
- package/dist/tools/chat/unpinChatMessage.js +39 -0
- package/dist/tools/chat/unpinChatMessage.js.map +1 -0
- package/dist/tools/chat-messages/index.d.ts +35 -0
- package/dist/tools/chat-messages/index.d.ts.map +1 -0
- package/dist/tools/chat-messages/index.js +165 -0
- package/dist/tools/chat-messages/index.js.map +1 -0
- package/dist/tools/comments/index.d.ts +44 -0
- package/dist/tools/comments/index.d.ts.map +1 -0
- package/dist/tools/comments/index.js +171 -0
- package/dist/tools/comments/index.js.map +1 -0
- package/dist/tools/content-flags/index.d.ts +38 -0
- package/dist/tools/content-flags/index.d.ts.map +1 -0
- package/dist/tools/content-flags/index.js +282 -0
- package/dist/tools/content-flags/index.js.map +1 -0
- package/dist/tools/content-reactions/index.d.ts +43 -0
- package/dist/tools/content-reactions/index.d.ts.map +1 -0
- package/dist/tools/content-reactions/index.js +135 -0
- package/dist/tools/content-reactions/index.js.map +1 -0
- package/dist/tools/creation/index.d.ts.map +1 -1
- package/dist/tools/creation/index.js +2 -5
- package/dist/tools/creation/index.js.map +1 -1
- package/dist/tools/dex/fetchAllDexPools.d.ts.map +1 -1
- package/dist/tools/dex/fetchAllDexPools.js +5 -21
- package/dist/tools/dex/fetchAllDexPools.js.map +1 -1
- package/dist/tools/dex/fetchDexPools.d.ts.map +1 -1
- package/dist/tools/dex/fetchDexPools.js +11 -28
- package/dist/tools/dex/fetchDexPools.js.map +1 -1
- package/dist/tools/dex/helpers.d.ts +479 -0
- package/dist/tools/dex/helpers.d.ts.map +1 -0
- package/dist/tools/dex/helpers.js +570 -0
- package/dist/tools/dex/helpers.js.map +1 -0
- package/dist/tools/dex/index.d.ts +50 -11
- package/dist/tools/dex/index.d.ts.map +1 -1
- package/dist/tools/dex/index.js +124 -486
- package/dist/tools/dex/index.js.map +1 -1
- package/dist/tools/dex/leaderboard.d.ts.map +1 -1
- package/dist/tools/dex/leaderboard.js +5 -70
- package/dist/tools/dex/leaderboard.js.map +1 -1
- package/dist/tools/dex/liquidity-positions.d.ts.map +1 -1
- package/dist/tools/dex/liquidity-positions.js +20 -91
- package/dist/tools/dex/liquidity-positions.js.map +1 -1
- package/dist/tools/dex/volume.d.ts.map +1 -1
- package/dist/tools/dex/volume.js +6 -21
- package/dist/tools/dex/volume.js.map +1 -1
- package/dist/tools/dex-analytics/index.d.ts +48 -0
- package/dist/tools/dex-analytics/index.d.ts.map +1 -0
- package/dist/tools/dex-analytics/index.js +111 -0
- package/dist/tools/dex-analytics/index.js.map +1 -0
- package/dist/tools/dex-liquidity/index.d.ts +22 -0
- package/dist/tools/dex-liquidity/index.d.ts.map +1 -0
- package/dist/tools/dex-liquidity/index.js +384 -0
- package/dist/tools/dex-liquidity/index.js.map +1 -0
- package/dist/tools/dex-pools/index.d.ts +60 -0
- package/dist/tools/dex-pools/index.d.ts.map +1 -0
- package/dist/tools/dex-pools/index.js +231 -0
- package/dist/tools/dex-pools/index.js.map +1 -0
- package/dist/tools/handler-factories.d.ts +1401 -0
- package/dist/tools/handler-factories.d.ts.map +1 -0
- package/dist/tools/handler-factories.js +1680 -0
- package/dist/tools/handler-factories.js.map +1 -0
- package/dist/tools/index.d.ts +1 -11
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +171 -27
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/locks/index.d.ts +2 -0
- package/dist/tools/locks/index.d.ts.map +1 -1
- package/dist/tools/locks/index.js +9 -86
- package/dist/tools/locks/index.js.map +1 -1
- package/dist/tools/moderators/index.d.ts +53 -0
- package/dist/tools/moderators/index.d.ts.map +1 -0
- package/dist/tools/moderators/index.js +258 -0
- package/dist/tools/moderators/index.js.map +1 -0
- package/dist/tools/overseers/getOverseerUserSummary.d.ts +15 -0
- package/dist/tools/overseers/getOverseerUserSummary.d.ts.map +1 -0
- package/dist/tools/overseers/getOverseerUserSummary.js +40 -0
- package/dist/tools/overseers/getOverseerUserSummary.js.map +1 -0
- package/dist/tools/overseers/index.d.ts +58 -0
- package/dist/tools/overseers/index.d.ts.map +1 -0
- package/dist/tools/overseers/index.js +325 -0
- package/dist/tools/overseers/index.js.map +1 -0
- package/dist/tools/overseers/listOverseerUsers.d.ts +15 -0
- package/dist/tools/overseers/listOverseerUsers.d.ts.map +1 -0
- package/dist/tools/overseers/listOverseerUsers.js +76 -0
- package/dist/tools/overseers/listOverseerUsers.js.map +1 -0
- package/dist/tools/pagination-handler-factory.d.ts +131 -0
- package/dist/tools/pagination-handler-factory.d.ts.map +1 -0
- package/dist/tools/pagination-handler-factory.js +159 -0
- package/dist/tools/pagination-handler-factory.js.map +1 -0
- package/dist/tools/pools/checkPoolExists.d.ts +16 -0
- package/dist/tools/pools/checkPoolExists.d.ts.map +1 -0
- package/dist/tools/pools/checkPoolExists.js +48 -0
- package/dist/tools/pools/checkPoolExists.js.map +1 -0
- package/dist/tools/pools/fetchAllPools.d.ts.map +1 -1
- package/dist/tools/pools/fetchAllPools.js +51 -11
- package/dist/tools/pools/fetchAllPools.js.map +1 -1
- package/dist/tools/pools/fetchAllPriceHistory.d.ts.map +1 -1
- package/dist/tools/pools/fetchAllPriceHistory.js +11 -51
- package/dist/tools/pools/fetchAllPriceHistory.js.map +1 -1
- package/dist/tools/pools/fetchPoolDetails.d.ts.map +1 -1
- package/dist/tools/pools/fetchPoolDetails.js +4 -11
- package/dist/tools/pools/fetchPoolDetails.js.map +1 -1
- package/dist/tools/pools/fetchPools.d.ts.map +1 -1
- package/dist/tools/pools/fetchPools.js +40 -20
- package/dist/tools/pools/fetchPools.js.map +1 -1
- package/dist/tools/pools/fetchPriceHistory.d.ts.map +1 -1
- package/dist/tools/pools/fetchPriceHistory.js +10 -51
- package/dist/tools/pools/fetchPriceHistory.js.map +1 -1
- package/dist/tools/pools/fetchTokenDetails.d.ts.map +1 -1
- package/dist/tools/pools/fetchTokenDetails.js +4 -35
- package/dist/tools/pools/fetchTokenDetails.js.map +1 -1
- package/dist/tools/pools/index.d.ts +2 -0
- package/dist/tools/pools/index.d.ts.map +1 -1
- package/dist/tools/pools/index.js +103 -35
- package/dist/tools/pools/index.js.map +1 -1
- package/dist/tools/pools/onDexPoolCreation.d.ts +1 -2
- package/dist/tools/pools/onDexPoolCreation.d.ts.map +1 -1
- package/dist/tools/pools/onDexPoolCreation.js +14 -48
- package/dist/tools/pools/onDexPoolCreation.js.map +1 -1
- package/dist/tools/pools/onLaunchpadTokenCreation.d.ts +1 -2
- package/dist/tools/pools/onLaunchpadTokenCreation.d.ts.map +1 -1
- package/dist/tools/pools/onLaunchpadTokenCreation.js +9 -42
- package/dist/tools/pools/onLaunchpadTokenCreation.js.map +1 -1
- package/dist/tools/pools/priceHistoryFactory.d.ts +44 -0
- package/dist/tools/pools/priceHistoryFactory.d.ts.map +1 -0
- package/dist/tools/pools/priceHistoryFactory.js +154 -0
- package/dist/tools/pools/priceHistoryFactory.js.map +1 -0
- package/dist/tools/pools/updateTokenSocials.d.ts +16 -0
- package/dist/tools/pools/updateTokenSocials.d.ts.map +1 -0
- package/dist/tools/pools/updateTokenSocials.js +84 -0
- package/dist/tools/pools/updateTokenSocials.js.map +1 -0
- package/dist/tools/referrals/index.d.ts +12 -0
- package/dist/tools/referrals/index.d.ts.map +1 -0
- package/dist/tools/referrals/index.js +110 -0
- package/dist/tools/referrals/index.js.map +1 -0
- package/dist/tools/streaming/index.d.ts +94 -0
- package/dist/tools/streaming/index.d.ts.map +1 -0
- package/dist/tools/streaming/index.js +549 -0
- package/dist/tools/streaming/index.js.map +1 -0
- package/dist/tools/streaming/setNextLiveStreamCountdown.d.ts +16 -0
- package/dist/tools/streaming/setNextLiveStreamCountdown.d.ts.map +1 -0
- package/dist/tools/streaming/setNextLiveStreamCountdown.js +62 -0
- package/dist/tools/streaming/setNextLiveStreamCountdown.js.map +1 -0
- package/dist/tools/token-ban/index.d.ts +39 -0
- package/dist/tools/token-ban/index.d.ts.map +1 -0
- package/dist/tools/token-ban/index.js +177 -0
- package/dist/tools/token-ban/index.js.map +1 -0
- package/dist/tools/tool-factory.d.ts +84 -0
- package/dist/tools/tool-factory.d.ts.map +1 -0
- package/dist/tools/tool-factory.js +135 -0
- package/dist/tools/tool-factory.js.map +1 -0
- package/dist/tools/trades/index.d.ts +20 -0
- package/dist/tools/trades/index.d.ts.map +1 -0
- package/dist/tools/trades/index.js +113 -0
- package/dist/tools/trades/index.js.map +1 -0
- package/dist/tools/trading/helpers/arg-extractors.d.ts +128 -0
- package/dist/tools/trading/helpers/arg-extractors.d.ts.map +1 -0
- package/dist/tools/trading/helpers/arg-extractors.js +215 -0
- package/dist/tools/trading/helpers/arg-extractors.js.map +1 -0
- package/dist/tools/trading/helpers/index.d.ts +8 -0
- package/dist/tools/trading/helpers/index.d.ts.map +1 -0
- package/dist/tools/trading/helpers/index.js +24 -0
- package/dist/tools/trading/helpers/index.js.map +1 -0
- package/dist/tools/trading/helpers/trading-schemas.d.ts +276 -0
- package/dist/tools/trading/helpers/trading-schemas.d.ts.map +1 -0
- package/dist/tools/trading/helpers/trading-schemas.js +310 -0
- package/dist/tools/trading/helpers/trading-schemas.js.map +1 -0
- package/dist/tools/trading/index.d.ts +2 -0
- package/dist/tools/trading/index.d.ts.map +1 -1
- package/dist/tools/trading/index.js +148 -371
- package/dist/tools/trading/index.js.map +1 -1
- package/dist/tools/transfers/index.d.ts +3 -0
- package/dist/tools/transfers/index.d.ts.map +1 -1
- package/dist/tools/transfers/index.js +72 -52
- package/dist/tools/transfers/index.js.map +1 -1
- package/dist/tools/utils/cleanup.d.ts.map +1 -1
- package/dist/tools/utils/cleanup.js +2 -9
- package/dist/tools/utils/cleanup.js.map +1 -1
- package/dist/tools/utils/clearCache.d.ts.map +1 -1
- package/dist/tools/utils/clearCache.js +5 -7
- package/dist/tools/utils/clearCache.js.map +1 -1
- package/dist/tools/utils/explainSdkUsage.d.ts +52 -0
- package/dist/tools/utils/explainSdkUsage.d.ts.map +1 -1
- package/dist/tools/utils/explainSdkUsage.js +1905 -93
- package/dist/tools/utils/explainSdkUsage.js.map +1 -1
- package/dist/tools/utils/getEthereumAddressFromPrivateKey.d.ts.map +1 -1
- package/dist/tools/utils/getEthereumAddressFromPrivateKey.js +2 -1
- package/dist/tools/utils/getEthereumAddressFromPrivateKey.js.map +1 -1
- package/dist/tools/utils/index.d.ts +2 -0
- package/dist/tools/utils/index.d.ts.map +1 -1
- package/dist/tools/utils/index.js +2 -12
- package/dist/tools/utils/index.js.map +1 -1
- package/dist/tools/wallet/index.d.ts +7 -0
- package/dist/tools/wallet/index.d.ts.map +1 -0
- package/dist/tools/wallet/index.js +24 -0
- package/dist/tools/wallet/index.js.map +1 -0
- package/dist/utils/date-converter.d.ts +58 -0
- package/dist/utils/date-converter.d.ts.map +1 -0
- package/dist/utils/date-converter.js +83 -0
- package/dist/utils/date-converter.js.map +1 -0
- package/dist/utils/pool-filter-builder.d.ts +78 -0
- package/dist/utils/pool-filter-builder.d.ts.map +1 -0
- package/dist/utils/pool-filter-builder.js +130 -0
- package/dist/utils/pool-filter-builder.js.map +1 -0
- package/dist/utils/safe-parsers.d.ts +87 -0
- package/dist/utils/safe-parsers.d.ts.map +1 -0
- package/dist/utils/safe-parsers.js +134 -0
- package/dist/utils/safe-parsers.js.map +1 -0
- package/dist/utils/validation.d.ts +5 -5
- package/dist/utils/validation.d.ts.map +1 -1
- package/dist/utils/validation.js +24 -21
- package/dist/utils/validation.js.map +1 -1
- package/package.json +23 -15
- package/.env.example +0 -21
- package/.eslintrc.json +0 -88
- package/CHANGELOG.md +0 -2161
- package/DOCS_AUDIT_REPORT.md +0 -189
- package/DRY_REFACTORING_GUIDE.md +0 -271
- package/MCP_COVERAGE_REPORT.md +0 -164
- package/MCP_TEST_ANALYSIS.md +0 -317
- package/jest.integration.config.js +0 -70
- package/scripts/inject-version.ts +0 -31
- package/scripts/validate-mcp-test-analysis.ts +0 -250
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/token-ban/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAclD;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,OA+B1B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,OAwB5B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,OA2B/B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,OAoB7B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,OAoB/B,CAAC;AAMF,eAAO,MAAM,aAAa,EAAE,OAAO,EAMlC,CAAC"}
|
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Token Ban Operations Tools (Overseer Only)
|
|
4
|
+
*
|
|
5
|
+
* MCP tools for platform-wide token ban management.
|
|
6
|
+
* Banned tokens are hidden from all listings and have actions blocked.
|
|
7
|
+
*
|
|
8
|
+
* This is different from user bans (ban/ directory):
|
|
9
|
+
* - Token bans: Platform-wide, affects ALL users viewing/interacting with the token
|
|
10
|
+
* - User bans: Per-token, only affects specific user on specific token
|
|
11
|
+
*
|
|
12
|
+
* All endpoints require either:
|
|
13
|
+
* - Admin API key (server-to-server)
|
|
14
|
+
* - JWT with overseer status (authenticated overseer user)
|
|
15
|
+
*
|
|
16
|
+
* @since 6.x.0
|
|
17
|
+
*/
|
|
18
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
+
exports.tokenBanTools = exports.isTokenBannedTool = exports.getTokenBanTool = exports.listTokenBansTool = exports.unbanTokenTool = exports.banTokenTool = void 0;
|
|
20
|
+
const handler_factories_js_1 = require("../handler-factories.js");
|
|
21
|
+
const common_schemas_js_1 = require("../../schemas/common-schemas.js");
|
|
22
|
+
// =============================================================================
|
|
23
|
+
// Token Ban Management Tools
|
|
24
|
+
// =============================================================================
|
|
25
|
+
/**
|
|
26
|
+
* 1. Ban Token
|
|
27
|
+
*/
|
|
28
|
+
exports.banTokenTool = {
|
|
29
|
+
name: 'gala_launchpad_ban_token',
|
|
30
|
+
description: `Ban a token from the platform (overseer only).
|
|
31
|
+
|
|
32
|
+
When a token is banned:
|
|
33
|
+
- Hidden from ALL pool listings (including creator's profile)
|
|
34
|
+
- Comments blocked on banned tokens
|
|
35
|
+
- Live streaming blocked on banned tokens
|
|
36
|
+
- Chat messages blocked on banned tokens
|
|
37
|
+
- Trading NOT blocked (GalaChain handles trading independently)
|
|
38
|
+
|
|
39
|
+
Token bans are permanent until explicitly removed by an overseer.
|
|
40
|
+
|
|
41
|
+
RETURNS: { ban: { id, tokenName, reason, bannedBy, createdAt, updatedAt }, tokenName }
|
|
42
|
+
|
|
43
|
+
Authentication: Requires streamAdminApiKey (admin) OR JWT auth with overseer status`,
|
|
44
|
+
inputSchema: {
|
|
45
|
+
type: 'object',
|
|
46
|
+
properties: {
|
|
47
|
+
tokenName: common_schemas_js_1.TOKEN_NAME_SCHEMA,
|
|
48
|
+
reason: {
|
|
49
|
+
...common_schemas_js_1.BAN_REASON_SCHEMA,
|
|
50
|
+
description: 'Ban reason (optional, max 500 characters). E.g., "Fraudulent project", "Scam token", etc.',
|
|
51
|
+
},
|
|
52
|
+
},
|
|
53
|
+
required: ['tokenName'],
|
|
54
|
+
},
|
|
55
|
+
handler: (0, handler_factories_js_1.createSimpleHandler)('banToken', (args) => ({
|
|
56
|
+
tokenName: args.tokenName,
|
|
57
|
+
reason: args.reason,
|
|
58
|
+
})),
|
|
59
|
+
};
|
|
60
|
+
/**
|
|
61
|
+
* 2. Unban Token
|
|
62
|
+
*/
|
|
63
|
+
exports.unbanTokenTool = {
|
|
64
|
+
name: 'gala_launchpad_unban_token',
|
|
65
|
+
description: `Remove a ban from a token (overseer only).
|
|
66
|
+
|
|
67
|
+
When a token is unbanned:
|
|
68
|
+
- Restored to all pool listings
|
|
69
|
+
- Visible on creator's profile again
|
|
70
|
+
- Comments re-enabled
|
|
71
|
+
- Live streaming re-enabled
|
|
72
|
+
- Chat re-enabled
|
|
73
|
+
|
|
74
|
+
RETURNS: { removed: true, tokenName }
|
|
75
|
+
|
|
76
|
+
Authentication: Requires streamAdminApiKey (admin) OR JWT auth with overseer status`,
|
|
77
|
+
inputSchema: {
|
|
78
|
+
type: 'object',
|
|
79
|
+
properties: {
|
|
80
|
+
tokenName: common_schemas_js_1.TOKEN_NAME_SCHEMA,
|
|
81
|
+
},
|
|
82
|
+
required: ['tokenName'],
|
|
83
|
+
},
|
|
84
|
+
handler: (0, handler_factories_js_1.createSimpleHandler)('unbanToken', (args) => ({
|
|
85
|
+
tokenName: args.tokenName,
|
|
86
|
+
})),
|
|
87
|
+
};
|
|
88
|
+
/**
|
|
89
|
+
* 3. List Token Bans
|
|
90
|
+
*/
|
|
91
|
+
exports.listTokenBansTool = {
|
|
92
|
+
name: 'gala_launchpad_list_token_bans',
|
|
93
|
+
description: `List all banned tokens (overseer only).
|
|
94
|
+
|
|
95
|
+
Returns a paginated list of all banned tokens with their ban details.
|
|
96
|
+
Supports searching by token name (partial match).
|
|
97
|
+
|
|
98
|
+
RETURNS: { items: [{ id, tokenName, reason, bannedBy, createdAt, updatedAt }...], meta: { total, page, limit, totalPages } }
|
|
99
|
+
|
|
100
|
+
Authentication: Requires streamAdminApiKey (admin) OR JWT auth with overseer status`,
|
|
101
|
+
inputSchema: {
|
|
102
|
+
type: 'object',
|
|
103
|
+
properties: {
|
|
104
|
+
page: common_schemas_js_1.PAGE_SCHEMA,
|
|
105
|
+
limit: (0, common_schemas_js_1.createLimitSchema)('pool', 20),
|
|
106
|
+
search: {
|
|
107
|
+
...common_schemas_js_1.SEARCH_SCHEMA,
|
|
108
|
+
description: 'Search by token name (partial match, case-insensitive)',
|
|
109
|
+
},
|
|
110
|
+
},
|
|
111
|
+
required: [],
|
|
112
|
+
},
|
|
113
|
+
handler: (0, handler_factories_js_1.createSimpleHandler)('listTokenBans', (args) => ({
|
|
114
|
+
page: args.page,
|
|
115
|
+
limit: args.limit,
|
|
116
|
+
search: args.search,
|
|
117
|
+
})),
|
|
118
|
+
};
|
|
119
|
+
/**
|
|
120
|
+
* 4. Get Token Ban
|
|
121
|
+
*/
|
|
122
|
+
exports.getTokenBanTool = {
|
|
123
|
+
name: 'gala_launchpad_get_token_ban',
|
|
124
|
+
description: `Get ban details for a specific token (overseer only).
|
|
125
|
+
|
|
126
|
+
Returns whether the token is banned and ban details if applicable.
|
|
127
|
+
Use this for detailed ban information including reason and who banned it.
|
|
128
|
+
|
|
129
|
+
RETURNS: { banned: boolean, ban?: { id, tokenName, reason, bannedBy, createdAt, updatedAt }, tokenName }
|
|
130
|
+
|
|
131
|
+
Authentication: Requires streamAdminApiKey (admin) OR JWT auth with overseer status`,
|
|
132
|
+
inputSchema: {
|
|
133
|
+
type: 'object',
|
|
134
|
+
properties: {
|
|
135
|
+
tokenName: common_schemas_js_1.TOKEN_NAME_SCHEMA,
|
|
136
|
+
},
|
|
137
|
+
required: ['tokenName'],
|
|
138
|
+
},
|
|
139
|
+
handler: (0, handler_factories_js_1.createSimpleHandler)('getTokenBan', (args) => ({
|
|
140
|
+
tokenName: args.tokenName,
|
|
141
|
+
})),
|
|
142
|
+
};
|
|
143
|
+
/**
|
|
144
|
+
* 5. Is Token Banned
|
|
145
|
+
*/
|
|
146
|
+
exports.isTokenBannedTool = {
|
|
147
|
+
name: 'gala_launchpad_is_token_banned',
|
|
148
|
+
description: `Check if a token is banned (overseer only).
|
|
149
|
+
|
|
150
|
+
Convenience alias for getTokenBan - provided for semantic clarity.
|
|
151
|
+
Use when you just need to check if a token is banned.
|
|
152
|
+
|
|
153
|
+
RETURNS: { banned: boolean, ban?: { id, tokenName, reason, bannedBy, createdAt, updatedAt }, tokenName }
|
|
154
|
+
|
|
155
|
+
Authentication: Requires streamAdminApiKey (admin) OR JWT auth with overseer status`,
|
|
156
|
+
inputSchema: {
|
|
157
|
+
type: 'object',
|
|
158
|
+
properties: {
|
|
159
|
+
tokenName: common_schemas_js_1.TOKEN_NAME_SCHEMA,
|
|
160
|
+
},
|
|
161
|
+
required: ['tokenName'],
|
|
162
|
+
},
|
|
163
|
+
handler: (0, handler_factories_js_1.createSimpleHandler)('isTokenBanned', (args) => ({
|
|
164
|
+
tokenName: args.tokenName,
|
|
165
|
+
})),
|
|
166
|
+
};
|
|
167
|
+
// =============================================================================
|
|
168
|
+
// Export All Tools
|
|
169
|
+
// =============================================================================
|
|
170
|
+
exports.tokenBanTools = [
|
|
171
|
+
exports.banTokenTool,
|
|
172
|
+
exports.unbanTokenTool,
|
|
173
|
+
exports.listTokenBansTool,
|
|
174
|
+
exports.getTokenBanTool,
|
|
175
|
+
exports.isTokenBannedTool,
|
|
176
|
+
];
|
|
177
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/token-ban/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;;;AAGH,kEAA8D;AAC9D,uEAMyC;AAEzC,gFAAgF;AAChF,6BAA6B;AAC7B,gFAAgF;AAEhF;;GAEG;AACU,QAAA,YAAY,GAAY;IACnC,IAAI,EAAE,0BAA0B;IAChC,WAAW,EAAE;;;;;;;;;;;;;oFAaqE;IAClF,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,SAAS,EAAE,qCAAiB;YAC5B,MAAM,EAAE;gBACN,GAAG,qCAAiB;gBACpB,WAAW,EAAE,2FAA2F;aACzG;SACF;QACD,QAAQ,EAAE,CAAC,WAAW,CAAC;KACxB;IACD,OAAO,EAAE,IAAA,0CAAmB,EAAC,UAAU,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAClD,SAAS,EAAE,IAAI,CAAC,SAAmB;QACnC,MAAM,EAAE,IAAI,CAAC,MAA4B;KAC1C,CAAC,CAAC;CACJ,CAAC;AAEF;;GAEG;AACU,QAAA,cAAc,GAAY;IACrC,IAAI,EAAE,4BAA4B;IAClC,WAAW,EAAE;;;;;;;;;;;oFAWqE;IAClF,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,SAAS,EAAE,qCAAiB;SAC7B;QACD,QAAQ,EAAE,CAAC,WAAW,CAAC;KACxB;IACD,OAAO,EAAE,IAAA,0CAAmB,EAAC,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACpD,SAAS,EAAE,IAAI,CAAC,SAAmB;KACpC,CAAC,CAAC;CACJ,CAAC;AAEF;;GAEG;AACU,QAAA,iBAAiB,GAAY;IACxC,IAAI,EAAE,gCAAgC;IACtC,WAAW,EAAE;;;;;;;oFAOqE;IAClF,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,IAAI,EAAE,+BAAW;YACjB,KAAK,EAAE,IAAA,qCAAiB,EAAC,MAAM,EAAE,EAAE,CAAC;YACpC,MAAM,EAAE;gBACN,GAAG,iCAAa;gBAChB,WAAW,EAAE,wDAAwD;aACtE;SACF;QACD,QAAQ,EAAE,EAAE;KACb;IACD,OAAO,EAAE,IAAA,0CAAmB,EAAC,eAAe,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACvD,IAAI,EAAE,IAAI,CAAC,IAA0B;QACrC,KAAK,EAAE,IAAI,CAAC,KAA2B;QACvC,MAAM,EAAE,IAAI,CAAC,MAA4B;KAC1C,CAAC,CAAC;CACJ,CAAC;AAEF;;GAEG;AACU,QAAA,eAAe,GAAY;IACtC,IAAI,EAAE,8BAA8B;IACpC,WAAW,EAAE;;;;;;;oFAOqE;IAClF,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,SAAS,EAAE,qCAAiB;SAC7B;QACD,QAAQ,EAAE,CAAC,WAAW,CAAC;KACxB;IACD,OAAO,EAAE,IAAA,0CAAmB,EAAC,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACrD,SAAS,EAAE,IAAI,CAAC,SAAmB;KACpC,CAAC,CAAC;CACJ,CAAC;AAEF;;GAEG;AACU,QAAA,iBAAiB,GAAY;IACxC,IAAI,EAAE,gCAAgC;IACtC,WAAW,EAAE;;;;;;;oFAOqE;IAClF,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,SAAS,EAAE,qCAAiB;SAC7B;QACD,QAAQ,EAAE,CAAC,WAAW,CAAC;KACxB;IACD,OAAO,EAAE,IAAA,0CAAmB,EAAC,eAAe,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACvD,SAAS,EAAE,IAAI,CAAC,SAAmB;KACpC,CAAC,CAAC;CACJ,CAAC;AAEF,gFAAgF;AAChF,mBAAmB;AACnB,gFAAgF;AAEnE,QAAA,aAAa,GAAc;IACtC,oBAAY;IACZ,sBAAc;IACd,yBAAiB;IACjB,uBAAe;IACf,yBAAiB;CAClB,CAAC"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tool Factory Utilities for Event Watchers
|
|
3
|
+
*
|
|
4
|
+
* Provides reusable factory functions for creating MCP event watcher tools.
|
|
5
|
+
* Reduces boilerplate and ensures consistent polling and timeout behavior.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* // Create a DEX pool watcher
|
|
9
|
+
* const tool = createEventWatcherTool({
|
|
10
|
+
* name: 'gala_launchpad_on_dex_pool_creation',
|
|
11
|
+
* description: 'Watch for new DEX pool creation events',
|
|
12
|
+
* sdkMethodName: 'onDexPoolCreation',
|
|
13
|
+
* resultKey: 'poolsDetected',
|
|
14
|
+
* filterSchema: {
|
|
15
|
+
* minTVL: { type: 'number', description: 'Minimum TVL filter' },
|
|
16
|
+
* tokens: { type: 'array', items: { type: 'string' } }
|
|
17
|
+
* }
|
|
18
|
+
* });
|
|
19
|
+
*/
|
|
20
|
+
import type { MCPTool } from '../types/mcp.js';
|
|
21
|
+
/**
|
|
22
|
+
* Configuration for event watcher tool factory
|
|
23
|
+
*/
|
|
24
|
+
export interface EventWatcherToolConfig {
|
|
25
|
+
/** Name of the MCP tool */
|
|
26
|
+
name: string;
|
|
27
|
+
/** Description of the MCP tool */
|
|
28
|
+
description: string;
|
|
29
|
+
/** Name of the SDK method to call (must accept callback and options) */
|
|
30
|
+
sdkMethodName: string;
|
|
31
|
+
/** Key in the response object for event count (e.g., 'poolsDetected', 'tokensDetected') */
|
|
32
|
+
resultKey: string;
|
|
33
|
+
/** Optional JSON schema for filter properties */
|
|
34
|
+
filterSchema?: Record<string, unknown>;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Creates an event watcher MCP tool with polling and timeout support.
|
|
38
|
+
*
|
|
39
|
+
* Handles the common pattern of:
|
|
40
|
+
* 1. Calling an SDK event subscription method with filters
|
|
41
|
+
* 2. Collecting events in an array during the poll period
|
|
42
|
+
* 3. Unsubscribing after a configured duration
|
|
43
|
+
* 4. Returning results with event count and collected events
|
|
44
|
+
*
|
|
45
|
+
* @param config - Configuration for the event watcher tool
|
|
46
|
+
* @returns MCPTool ready to be registered with the MCP server
|
|
47
|
+
*
|
|
48
|
+
* @example
|
|
49
|
+
* // Create a DEX pool watcher
|
|
50
|
+
* const tool = createEventWatcherTool({
|
|
51
|
+
* name: 'gala_launchpad_on_dex_pool_creation',
|
|
52
|
+
* description: 'Watch for new DEX pool creation events in real-time',
|
|
53
|
+
* sdkMethodName: 'onDexPoolCreation',
|
|
54
|
+
* resultKey: 'poolsDetected',
|
|
55
|
+
* filterSchema: {
|
|
56
|
+
* minTVL: {
|
|
57
|
+
* type: 'number',
|
|
58
|
+
* description: 'Only notify about pools with TVL >= minTVL (optional)',
|
|
59
|
+
* },
|
|
60
|
+
* tokens: {
|
|
61
|
+
* type: 'array',
|
|
62
|
+
* items: { type: 'string' },
|
|
63
|
+
* description: 'Only notify about pools containing these token symbols (optional)',
|
|
64
|
+
* }
|
|
65
|
+
* }
|
|
66
|
+
* });
|
|
67
|
+
*
|
|
68
|
+
* @example
|
|
69
|
+
* // Create a launchpad token watcher
|
|
70
|
+
* const tool = createEventWatcherTool({
|
|
71
|
+
* name: 'gala_launchpad_on_launchpad_token_creation',
|
|
72
|
+
* description: 'Watch for new launchpad token creation events in real-time',
|
|
73
|
+
* sdkMethodName: 'onLaunchpadTokenCreation',
|
|
74
|
+
* resultKey: 'tokensDetected',
|
|
75
|
+
* filterSchema: {
|
|
76
|
+
* creatorAddress: {
|
|
77
|
+
* type: 'string',
|
|
78
|
+
* description: 'Only notify about tokens created by this address (optional)',
|
|
79
|
+
* }
|
|
80
|
+
* }
|
|
81
|
+
* });
|
|
82
|
+
*/
|
|
83
|
+
export declare function createEventWatcherTool(config: EventWatcherToolConfig): MCPTool;
|
|
84
|
+
//# sourceMappingURL=tool-factory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool-factory.d.ts","sourceRoot":"","sources":["../../src/tools/tool-factory.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAK/C;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,2BAA2B;IAC3B,IAAI,EAAE,MAAM,CAAC;IAEb,kCAAkC;IAClC,WAAW,EAAE,MAAM,CAAC;IAEpB,wEAAwE;IACxE,aAAa,EAAE,MAAM,CAAC;IAEtB,2FAA2F;IAC3F,SAAS,EAAE,MAAM,CAAC;IAElB,iDAAiD;IACjD,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACxC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAiF9E"}
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Tool Factory Utilities for Event Watchers
|
|
4
|
+
*
|
|
5
|
+
* Provides reusable factory functions for creating MCP event watcher tools.
|
|
6
|
+
* Reduces boilerplate and ensures consistent polling and timeout behavior.
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* // Create a DEX pool watcher
|
|
10
|
+
* const tool = createEventWatcherTool({
|
|
11
|
+
* name: 'gala_launchpad_on_dex_pool_creation',
|
|
12
|
+
* description: 'Watch for new DEX pool creation events',
|
|
13
|
+
* sdkMethodName: 'onDexPoolCreation',
|
|
14
|
+
* resultKey: 'poolsDetected',
|
|
15
|
+
* filterSchema: {
|
|
16
|
+
* minTVL: { type: 'number', description: 'Minimum TVL filter' },
|
|
17
|
+
* tokens: { type: 'array', items: { type: 'string' } }
|
|
18
|
+
* }
|
|
19
|
+
* });
|
|
20
|
+
*/
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
+
exports.createEventWatcherTool = createEventWatcherTool;
|
|
23
|
+
const response_formatter_js_1 = require("../utils/response-formatter.js");
|
|
24
|
+
const error_handler_js_1 = require("../utils/error-handler.js");
|
|
25
|
+
/**
|
|
26
|
+
* Creates an event watcher MCP tool with polling and timeout support.
|
|
27
|
+
*
|
|
28
|
+
* Handles the common pattern of:
|
|
29
|
+
* 1. Calling an SDK event subscription method with filters
|
|
30
|
+
* 2. Collecting events in an array during the poll period
|
|
31
|
+
* 3. Unsubscribing after a configured duration
|
|
32
|
+
* 4. Returning results with event count and collected events
|
|
33
|
+
*
|
|
34
|
+
* @param config - Configuration for the event watcher tool
|
|
35
|
+
* @returns MCPTool ready to be registered with the MCP server
|
|
36
|
+
*
|
|
37
|
+
* @example
|
|
38
|
+
* // Create a DEX pool watcher
|
|
39
|
+
* const tool = createEventWatcherTool({
|
|
40
|
+
* name: 'gala_launchpad_on_dex_pool_creation',
|
|
41
|
+
* description: 'Watch for new DEX pool creation events in real-time',
|
|
42
|
+
* sdkMethodName: 'onDexPoolCreation',
|
|
43
|
+
* resultKey: 'poolsDetected',
|
|
44
|
+
* filterSchema: {
|
|
45
|
+
* minTVL: {
|
|
46
|
+
* type: 'number',
|
|
47
|
+
* description: 'Only notify about pools with TVL >= minTVL (optional)',
|
|
48
|
+
* },
|
|
49
|
+
* tokens: {
|
|
50
|
+
* type: 'array',
|
|
51
|
+
* items: { type: 'string' },
|
|
52
|
+
* description: 'Only notify about pools containing these token symbols (optional)',
|
|
53
|
+
* }
|
|
54
|
+
* }
|
|
55
|
+
* });
|
|
56
|
+
*
|
|
57
|
+
* @example
|
|
58
|
+
* // Create a launchpad token watcher
|
|
59
|
+
* const tool = createEventWatcherTool({
|
|
60
|
+
* name: 'gala_launchpad_on_launchpad_token_creation',
|
|
61
|
+
* description: 'Watch for new launchpad token creation events in real-time',
|
|
62
|
+
* sdkMethodName: 'onLaunchpadTokenCreation',
|
|
63
|
+
* resultKey: 'tokensDetected',
|
|
64
|
+
* filterSchema: {
|
|
65
|
+
* creatorAddress: {
|
|
66
|
+
* type: 'string',
|
|
67
|
+
* description: 'Only notify about tokens created by this address (optional)',
|
|
68
|
+
* }
|
|
69
|
+
* }
|
|
70
|
+
* });
|
|
71
|
+
*/
|
|
72
|
+
function createEventWatcherTool(config) {
|
|
73
|
+
const { name, description, sdkMethodName, resultKey, filterSchema = {} } = config;
|
|
74
|
+
// Build input schema with standard polling/duration fields
|
|
75
|
+
const inputSchema = {
|
|
76
|
+
type: 'object',
|
|
77
|
+
properties: {
|
|
78
|
+
...filterSchema,
|
|
79
|
+
intervalMs: {
|
|
80
|
+
type: 'number',
|
|
81
|
+
description: 'Poll interval in milliseconds (default: 30000 / 30 seconds)',
|
|
82
|
+
},
|
|
83
|
+
durationSeconds: {
|
|
84
|
+
type: 'number',
|
|
85
|
+
description: 'How long to watch for new events in seconds (default: 60)',
|
|
86
|
+
},
|
|
87
|
+
},
|
|
88
|
+
};
|
|
89
|
+
const handler = (0, error_handler_js_1.withErrorHandling)(async (sdk, args) => {
|
|
90
|
+
const durationSeconds = args.durationSeconds ?? 60;
|
|
91
|
+
const durationMs = durationSeconds * 1000;
|
|
92
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any -- Event types are internal SDK types
|
|
93
|
+
const events = [];
|
|
94
|
+
return new Promise((resolve) => {
|
|
95
|
+
// Get the SDK method dynamically
|
|
96
|
+
const sdkMethod = sdk[sdkMethodName];
|
|
97
|
+
if (!sdkMethod || typeof sdkMethod !== 'function') {
|
|
98
|
+
throw new Error(`SDK method "${sdkMethodName}" not found`);
|
|
99
|
+
}
|
|
100
|
+
// Build filter options by extracting only the filter-related args
|
|
101
|
+
// Exclude intervalMs and durationSeconds as those are handled by the factory
|
|
102
|
+
const filterOptions = {};
|
|
103
|
+
const filterKeys = Object.keys(filterSchema);
|
|
104
|
+
for (const key of filterKeys) {
|
|
105
|
+
if (key in args) {
|
|
106
|
+
filterOptions[key] = args[key];
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
// Add intervalMs if provided
|
|
110
|
+
if ('intervalMs' in args && args.intervalMs !== undefined) {
|
|
111
|
+
filterOptions.intervalMs = args.intervalMs;
|
|
112
|
+
}
|
|
113
|
+
// Subscribe to events
|
|
114
|
+
const unsubscribe = sdkMethod.call(sdk, (event) => {
|
|
115
|
+
events.push(event);
|
|
116
|
+
}, filterOptions);
|
|
117
|
+
// Stop watching after duration
|
|
118
|
+
setTimeout(() => {
|
|
119
|
+
unsubscribe();
|
|
120
|
+
resolve((0, response_formatter_js_1.formatSuccess)({
|
|
121
|
+
[resultKey]: events.length,
|
|
122
|
+
durationSeconds,
|
|
123
|
+
events,
|
|
124
|
+
}));
|
|
125
|
+
}, durationMs);
|
|
126
|
+
});
|
|
127
|
+
});
|
|
128
|
+
return {
|
|
129
|
+
name,
|
|
130
|
+
description,
|
|
131
|
+
inputSchema,
|
|
132
|
+
handler,
|
|
133
|
+
};
|
|
134
|
+
}
|
|
135
|
+
//# sourceMappingURL=tool-factory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool-factory.js","sourceRoot":"","sources":["../../src/tools/tool-factory.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;GAkBG;;AA0EH,wDAiFC;AAvJD,0EAA+D;AAC/D,gEAA8D;AAsB9D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,SAAgB,sBAAsB,CAAC,MAA8B;IACnE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,aAAa,EAAE,SAAS,EAAE,YAAY,GAAG,EAAE,EAAE,GAAG,MAAM,CAAC;IAElF,2DAA2D;IAC3D,MAAM,WAAW,GAAG;QAClB,IAAI,EAAE,QAAiB;QACvB,UAAU,EAAE;YACV,GAAG,YAAY;YACf,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,6DAA6D;aAC3E;YACD,eAAe,EAAE;gBACf,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,2DAA2D;aACzE;SACF;KACF,CAAC;IAEF,MAAM,OAAO,GAAG,IAAA,oCAAiB,EAAC,KAAK,EAAE,GAAiB,EAAE,IAA6B,EAAE,EAAE;QAC3F,MAAM,eAAe,GAAI,IAAI,CAAC,eAAsC,IAAI,EAAE,CAAC;QAC3E,MAAM,UAAU,GAAG,eAAe,GAAG,IAAI,CAAC;QAE1C,oGAAoG;QACpG,MAAM,MAAM,GAAU,EAAE,CAAC;QAEzB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC7B,iCAAiC;YACjC,MAAM,SAAS,GACb,GACD,CAAC,aAAa,CAAC,CAAC;YAEjB,IAAI,CAAC,SAAS,IAAI,OAAO,SAAS,KAAK,UAAU,EAAE,CAAC;gBAClD,MAAM,IAAI,KAAK,CAAC,eAAe,aAAa,aAAa,CAAC,CAAC;YAC7D,CAAC;YAED,kEAAkE;YAClE,6EAA6E;YAC7E,MAAM,aAAa,GAA4B,EAAE,CAAC;YAClD,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAE7C,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;gBAC7B,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;oBAChB,aAAa,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;gBACjC,CAAC;YACH,CAAC;YAED,6BAA6B;YAC7B,IAAI,YAAY,IAAI,IAAI,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;gBAC1D,aAAa,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;YAC7C,CAAC;YAED,sBAAsB;YACtB,MAAM,WAAW,GAAG,SAAS,CAAC,IAAI,CAChC,GAAG,EACH,CAAC,KAAc,EAAE,EAAE;gBACjB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrB,CAAC,EACD,aAAa,CACA,CAAC;YAEhB,+BAA+B;YAC/B,UAAU,CAAC,GAAG,EAAE;gBACd,WAAW,EAAE,CAAC;gBACd,OAAO,CACL,IAAA,qCAAa,EAAC;oBACZ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM;oBAC1B,eAAe;oBACf,MAAM;iBACP,CAAC,CACH,CAAC;YACJ,CAAC,EAAE,UAAU,CAAC,CAAC;QACjB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO;QACL,IAAI;QACJ,WAAW;QACX,WAAW;QACX,OAAO;KACR,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Trades Query Tools
|
|
3
|
+
*
|
|
4
|
+
* MCP tools for querying trade history with tokenName/userAddress filters.
|
|
5
|
+
*
|
|
6
|
+
* @since 6.2.0
|
|
7
|
+
*/
|
|
8
|
+
import type { MCPTool } from '../../types/mcp.js';
|
|
9
|
+
/**
|
|
10
|
+
* Get Trades
|
|
11
|
+
*
|
|
12
|
+
* Query trades with flexible filtering by tokenName and/or userAddress.
|
|
13
|
+
* At least one filter must be provided.
|
|
14
|
+
*/
|
|
15
|
+
export declare const getTradesTool: MCPTool;
|
|
16
|
+
/**
|
|
17
|
+
* All trades tools (1 total)
|
|
18
|
+
*/
|
|
19
|
+
export declare const tradesTools: MCPTool[];
|
|
20
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/trades/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AA8BlD;;;;;GAKG;AACH,eAAO,MAAM,aAAa,EAAE,OAmF3B,CAAC;AAMF;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,OAAO,EAEhC,CAAC"}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Trades Query Tools
|
|
4
|
+
*
|
|
5
|
+
* MCP tools for querying trade history with tokenName/userAddress filters.
|
|
6
|
+
*
|
|
7
|
+
* @since 6.2.0
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.tradesTools = exports.getTradesTool = void 0;
|
|
11
|
+
const common_schemas_js_1 = require("../../schemas/common-schemas.js");
|
|
12
|
+
const handler_factories_js_1 = require("../handler-factories.js");
|
|
13
|
+
// =============================================================================
|
|
14
|
+
// Trades Tools
|
|
15
|
+
// =============================================================================
|
|
16
|
+
/**
|
|
17
|
+
* Get Trades
|
|
18
|
+
*
|
|
19
|
+
* Query trades with flexible filtering by tokenName and/or userAddress.
|
|
20
|
+
* At least one filter must be provided.
|
|
21
|
+
*/
|
|
22
|
+
exports.getTradesTool = {
|
|
23
|
+
name: 'gala_launchpad_get_trades',
|
|
24
|
+
description: `Query trades with flexible filtering options.
|
|
25
|
+
|
|
26
|
+
Returns paginated list of trades with metadata.
|
|
27
|
+
At least one of tokenName or userAddress is required.
|
|
28
|
+
|
|
29
|
+
Filters:
|
|
30
|
+
- tokenName: Filter by token name (e.g., 'anime')
|
|
31
|
+
- userAddress: Filter by user wallet address
|
|
32
|
+
- txnType: Filter by trade direction ('BUY' or 'SELL')
|
|
33
|
+
- startDate/endDate: Filter by date range (ISO 8601)
|
|
34
|
+
- minAmount/maxAmount: Filter by trade amount range
|
|
35
|
+
|
|
36
|
+
RETURNS: { trades: [{ txnId, txnType, inputAmount, outputAmount, userAddress, tokenName, tokenImage, createdAt }], meta: { totalItems, currentPage, pageSize, totalPages } }
|
|
37
|
+
|
|
38
|
+
Examples:
|
|
39
|
+
- Get all trades for a token: { tokenName: 'anime' }
|
|
40
|
+
- Get all trades by a user: { userAddress: 'eth|123...' }
|
|
41
|
+
- Get only buy trades: { tokenName: 'anime', txnType: 'BUY' }
|
|
42
|
+
- Get trades in date range: { tokenName: 'anime', startDate: '2024-01-01', endDate: '2024-12-31' }
|
|
43
|
+
- Get large trades: { tokenName: 'anime', minAmount: 1000 }
|
|
44
|
+
|
|
45
|
+
Public endpoint - no authentication required.`,
|
|
46
|
+
inputSchema: {
|
|
47
|
+
type: 'object',
|
|
48
|
+
properties: {
|
|
49
|
+
tokenName: {
|
|
50
|
+
...common_schemas_js_1.TOKEN_NAME_SCHEMA,
|
|
51
|
+
description: 'Token name to filter by (optional if userAddress provided)',
|
|
52
|
+
},
|
|
53
|
+
userAddress: {
|
|
54
|
+
...common_schemas_js_1.ADDRESS_SCHEMA,
|
|
55
|
+
description: 'User address to filter by (optional if tokenName provided)',
|
|
56
|
+
},
|
|
57
|
+
page: common_schemas_js_1.PAGE_SCHEMA,
|
|
58
|
+
limit: (0, common_schemas_js_1.createLimitSchema)('trade', 20),
|
|
59
|
+
txnType: {
|
|
60
|
+
type: 'string',
|
|
61
|
+
enum: ['BUY', 'SELL'],
|
|
62
|
+
description: 'Filter by trade direction (BUY or SELL)',
|
|
63
|
+
},
|
|
64
|
+
startDate: {
|
|
65
|
+
...common_schemas_js_1.DATE_TIME_SCHEMA,
|
|
66
|
+
description: 'Filter by date range start (ISO 8601 format, e.g., "2024-01-01")',
|
|
67
|
+
},
|
|
68
|
+
endDate: {
|
|
69
|
+
...common_schemas_js_1.DATE_TIME_SCHEMA,
|
|
70
|
+
description: 'Filter by date range end (ISO 8601 format, e.g., "2024-12-31")',
|
|
71
|
+
},
|
|
72
|
+
minAmount: {
|
|
73
|
+
type: 'number',
|
|
74
|
+
minimum: 0,
|
|
75
|
+
description: 'Filter by minimum trade amount',
|
|
76
|
+
},
|
|
77
|
+
maxAmount: {
|
|
78
|
+
type: 'number',
|
|
79
|
+
minimum: 0,
|
|
80
|
+
description: 'Filter by maximum trade amount',
|
|
81
|
+
},
|
|
82
|
+
},
|
|
83
|
+
required: [],
|
|
84
|
+
},
|
|
85
|
+
handler: (0, handler_factories_js_1.createSimpleHandler)('getTrades', (args) => {
|
|
86
|
+
const typedArgs = args;
|
|
87
|
+
// Validate that at least one filter is provided
|
|
88
|
+
if (!typedArgs.tokenName && !typedArgs.userAddress) {
|
|
89
|
+
throw new Error('At least one of tokenName or userAddress is required');
|
|
90
|
+
}
|
|
91
|
+
return {
|
|
92
|
+
tokenName: typedArgs.tokenName,
|
|
93
|
+
userAddress: typedArgs.userAddress,
|
|
94
|
+
page: typedArgs.page,
|
|
95
|
+
limit: typedArgs.limit,
|
|
96
|
+
txnType: typedArgs.txnType,
|
|
97
|
+
startDate: typedArgs.startDate,
|
|
98
|
+
endDate: typedArgs.endDate,
|
|
99
|
+
minAmount: typedArgs.minAmount,
|
|
100
|
+
maxAmount: typedArgs.maxAmount,
|
|
101
|
+
};
|
|
102
|
+
}),
|
|
103
|
+
};
|
|
104
|
+
// =============================================================================
|
|
105
|
+
// Export
|
|
106
|
+
// =============================================================================
|
|
107
|
+
/**
|
|
108
|
+
* All trades tools (1 total)
|
|
109
|
+
*/
|
|
110
|
+
exports.tradesTools = [
|
|
111
|
+
exports.getTradesTool,
|
|
112
|
+
];
|
|
113
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/trades/index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAGH,uEAMyC;AACzC,kEAA8D;AAkB9D,gFAAgF;AAChF,eAAe;AACf,gFAAgF;AAEhF;;;;;GAKG;AACU,QAAA,aAAa,GAAY;IACpC,IAAI,EAAE,2BAA2B;IACjC,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;8CAqB+B;IAC5C,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,SAAS,EAAE;gBACT,GAAG,qCAAiB;gBACpB,WAAW,EAAE,4DAA4D;aAC1E;YACD,WAAW,EAAE;gBACX,GAAG,kCAAc;gBACjB,WAAW,EAAE,4DAA4D;aAC1E;YACD,IAAI,EAAE,+BAAW;YACjB,KAAK,EAAE,IAAA,qCAAiB,EAAC,OAAO,EAAE,EAAE,CAAC;YACrC,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC;gBACrB,WAAW,EAAE,yCAAyC;aACvD;YACD,SAAS,EAAE;gBACT,GAAG,oCAAgB;gBACnB,WAAW,EAAE,kEAAkE;aAChF;YACD,OAAO,EAAE;gBACP,GAAG,oCAAgB;gBACnB,WAAW,EAAE,gEAAgE;aAC9E;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,CAAC;gBACV,WAAW,EAAE,gCAAgC;aAC9C;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,CAAC;gBACV,WAAW,EAAE,gCAAgC;aAC9C;SACF;QACD,QAAQ,EAAE,EAAE;KACb;IACD,OAAO,EAAE,IAAA,0CAAmB,EAAC,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE;QACjD,MAAM,SAAS,GAAG,IAAqB,CAAC;QAExC,gDAAgD;QAChD,IAAI,CAAC,SAAS,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;YACnD,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;QAC1E,CAAC;QAED,OAAO;YACL,SAAS,EAAE,SAAS,CAAC,SAAS;YAC9B,WAAW,EAAE,SAAS,CAAC,WAAW;YAClC,IAAI,EAAE,SAAS,CAAC,IAAI;YACpB,KAAK,EAAE,SAAS,CAAC,KAAK;YACtB,OAAO,EAAE,SAAS,CAAC,OAAO;YAC1B,SAAS,EAAE,SAAS,CAAC,SAAS;YAC9B,OAAO,EAAE,SAAS,CAAC,OAAO;YAC1B,SAAS,EAAE,SAAS,CAAC,SAAS;YAC9B,SAAS,EAAE,SAAS,CAAC,SAAS;SAC/B,CAAC;IACJ,CAAC,CAAC;CACH,CAAC;AAEF,gFAAgF;AAChF,SAAS;AACT,gFAAgF;AAEhF;;GAEG;AACU,QAAA,WAAW,GAAc;IACpC,qBAAa;CACd,CAAC"}
|