Skip to main content
Glama
buildwithgrove

Grove's MCP Server for Pocket Network

query_sui_events

Query and filter blockchain events on the Sui network to monitor smart contract activity, track transactions, and analyze on-chain data.

Instructions

Query Sui events

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
queryYesEvent query filter
cursorNoOptional: Pagination cursor
limitNoOptional: Number of results to return
descendingOrderNoOptional: Sort order (default: false)
networkNoNetwork type (defaults to mainnet)

Implementation Reference

  • Handler logic for the 'query_sui_events' tool. Extracts parameters from args and calls SuiService.queryEvents, then formats the response.
    case 'query_sui_events': { const query = args?.query as any; const cursor = args?.cursor as string | undefined; const limit = args?.limit as number | undefined; const descendingOrder = args?.descendingOrder as boolean | undefined; const network = (args?.network as 'mainnet' | 'testnet') || 'mainnet'; const result = await suiService.queryEvents(query, cursor, limit, descendingOrder, network); return { content: [ { type: 'text', text: JSON.stringify(result, null, 2), }, ], isError: !result.success, }; }
  • Tool definition including name, description, and input schema for 'query_sui_events'.
    { name: 'query_sui_events', description: 'Query Sui events', inputSchema: { type: 'object', properties: { query: { type: 'object', description: 'Event query filter', }, cursor: { type: 'string', description: 'Optional: Pagination cursor', }, limit: { type: 'number', description: 'Optional: Number of results to return', }, descendingOrder: { type: 'boolean', description: 'Optional: Sort order (default: false)', }, network: { type: 'string', enum: ['mainnet', 'testnet'], description: 'Network type (defaults to mainnet)', }, }, required: ['query'], }, },
  • Core implementation of event querying via RPC call to 'suix_queryEvents' on the Sui blockchain service.
    async queryEvents( query: any, cursor?: string, limit?: number, descendingOrder?: boolean, network: 'mainnet' | 'testnet' = 'mainnet' ): Promise<EndpointResponse> { const service = this.blockchainService.getServiceByBlockchain('sui', network); if (!service) { return { success: false, error: `Sui service not found for ${network}`, }; } const params: any[] = [query]; if (cursor !== undefined) params.push(cursor); if (limit !== undefined) params.push(limit); if (descendingOrder !== undefined) params.push(descendingOrder); return this.blockchainService.callRPCMethod(service.id, 'suix_queryEvents', params); }
  • src/index.ts:87-101 (registration)
    Registration of all tools, including Sui handlers which define 'query_sui_events', into the server's tool list.
    // Register all tools from handlers const tools: Tool[] = [ ...registerBlockchainHandlers(server, blockchainService), ...registerDomainHandlers(server, domainResolver), ...registerTransactionHandlers(server, advancedBlockchain), ...registerTokenHandlers(server, advancedBlockchain), ...registerMultichainHandlers(server, advancedBlockchain), ...registerContractHandlers(server, advancedBlockchain), ...registerUtilityHandlers(server, advancedBlockchain), ...registerEndpointHandlers(server, endpointManager), ...registerSolanaHandlers(server, solanaService), ...registerCosmosHandlers(server, cosmosService), ...registerSuiHandlers(server, suiService), ...registerDocsHandlers(server, docsManager), ];
  • src/index.ts:114-126 (registration)
    Dispatch chain in tool execution handler that routes 'query_sui_events' to handleSuiTool.
    let result = (await handleBlockchainTool(name, args, blockchainService)) || (await handleDomainTool(name, args, domainResolver)) || (await handleTransactionTool(name, args, advancedBlockchain)) || (await handleTokenTool(name, args, advancedBlockchain)) || (await handleMultichainTool(name, args, advancedBlockchain)) || (await handleContractTool(name, args, advancedBlockchain)) || (await handleUtilityTool(name, args, advancedBlockchain)) || (await handleEndpointTool(name, args, endpointManager)) || (await handleSolanaTool(name, args, solanaService)) || (await handleCosmosTool(name, args, cosmosService)) || (await handleSuiTool(name, args, suiService)) || (await handleDocsTool(name, args, docsManager));

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/buildwithgrove/mcp-pocket'

If you have feedback or need assistance with the MCP directory API, please join our Discord server