Skip to main content
Glama
verificar-existencia.js2.1 kB
/** * Tool 3: Verify Transaction Existence * Checks if a transaction exists with specific assets (for fully private transactions) */ import { checkTxExists } from '@mistcash/sdk'; import { CHAMBER_ADDR_MAINNET, CHAMBER_ADDR_SEPOLIA, CHAMBER_ABI } from '@mistcash/config'; import { VerificarExistenciaTransaccionSchema } from '../utils/validation.js'; import { createProvider, getChamberContract, retryWithBackoff } from '../utils/provider.js'; export async function verificarExistenciaTransaccion(params) { // Validate parameters const validated = VerificarExistenciaTransaccionSchema.parse(params); try { // Create provider const provider = createProvider(validated.provider_rpc_url ? { nodeUrl: validated.provider_rpc_url } : undefined); // Get contract address based on network const network = (process.env.STARKNET_NETWORK || 'mainnet'); const contractAddress = network === 'mainnet' ? CHAMBER_ADDR_MAINNET : CHAMBER_ADDR_SEPOLIA; // Get contract instance const contract = await getChamberContract(provider, contractAddress, CHAMBER_ABI); // Check transaction existence with retry logic and timeout const checkPromise = retryWithBackoff(() => checkTxExists(contract, validated.claiming_key, validated.recipient, validated.token_address, validated.amount)); const timeoutPromise = new Promise((_, reject) => setTimeout(() => reject(new Error('Request timeout after 30s')), 30000)); const exists = await Promise.race([checkPromise, timeoutPromise]); return { success: true, exists, transaction_details: { claiming_key: validated.claiming_key, recipient: validated.recipient, token_address: validated.token_address, amount: validated.amount }, note: 'This method is for fully private transactions where assets are not publicly visible' }; } catch (error) { throw new Error(`Failed to verify transaction existence: ${error.message}`); } }

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/joadataarg/Mcp-mistcash'

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