Skip to main content
Glama

agentek-eth

by NaniDAO
constants.ts34.7 kB
import { Address } from "viem"; import { mainnet, base, arbitrum } from "viem/chains"; export const supportedChains = [mainnet, base, arbitrum]; export function getPositionManagerAddress(chainId: number): Address { const addresses: Record<number, Address> = { [mainnet.id]: "0xC36442b4a4522E871399CD717aBDD847Ab11FE88", [base.id]: "0x03a520b32C04BF3bEEf7BEb72E919cf822Ed34f1", [arbitrum.id]: "0xC36442b4a4522E871399CD717aBDD847Ab11FE88", }; if (!(chainId in addresses)) { throw new Error(`Chain ID ${chainId} not supported`); } return addresses[chainId]; } export const nonfungiblePositionManagerAbi = [ { inputs: [ { internalType: "address", name: "_factory", type: "address" }, { internalType: "address", name: "_WETH9", type: "address" }, { internalType: "address", name: "_tokenDescriptor_", type: "address" }, ], stateMutability: "nonpayable", type: "constructor", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address", }, { indexed: true, internalType: "address", name: "approved", type: "address", }, { indexed: true, internalType: "uint256", name: "tokenId", type: "uint256", }, ], name: "Approval", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address", }, { indexed: true, internalType: "address", name: "operator", type: "address", }, { indexed: false, internalType: "bool", name: "approved", type: "bool" }, ], name: "ApprovalForAll", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "tokenId", type: "uint256", }, { indexed: false, internalType: "address", name: "recipient", type: "address", }, { indexed: false, internalType: "uint256", name: "amount0", type: "uint256", }, { indexed: false, internalType: "uint256", name: "amount1", type: "uint256", }, ], name: "Collect", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "tokenId", type: "uint256", }, { indexed: false, internalType: "uint128", name: "liquidity", type: "uint128", }, { indexed: false, internalType: "uint256", name: "amount0", type: "uint256", }, { indexed: false, internalType: "uint256", name: "amount1", type: "uint256", }, ], name: "DecreaseLiquidity", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "uint256", name: "tokenId", type: "uint256", }, { indexed: false, internalType: "uint128", name: "liquidity", type: "uint128", }, { indexed: false, internalType: "uint256", name: "amount0", type: "uint256", }, { indexed: false, internalType: "uint256", name: "amount1", type: "uint256", }, ], name: "IncreaseLiquidity", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: true, internalType: "uint256", name: "tokenId", type: "uint256", }, ], name: "Transfer", type: "event", }, { inputs: [], name: "DOMAIN_SEPARATOR", outputs: [{ internalType: "bytes32", name: "", type: "bytes32" }], stateMutability: "view", type: "function", }, { inputs: [], name: "PERMIT_TYPEHASH", outputs: [{ internalType: "bytes32", name: "", type: "bytes32" }], stateMutability: "view", type: "function", }, { inputs: [], name: "WETH9", outputs: [{ internalType: "address", name: "", type: "address" }], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" }, ], name: "approve", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [{ internalType: "address", name: "owner", type: "address" }], name: "balanceOf", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [], name: "baseURI", outputs: [{ internalType: "string", name: "", type: "string" }], stateMutability: "pure", type: "function", }, { inputs: [{ internalType: "uint256", name: "tokenId", type: "uint256" }], name: "burn", outputs: [], stateMutability: "payable", type: "function", }, { inputs: [ { components: [ { internalType: "uint256", name: "tokenId", type: "uint256" }, { internalType: "address", name: "recipient", type: "address" }, { internalType: "uint128", name: "amount0Max", type: "uint128" }, { internalType: "uint128", name: "amount1Max", type: "uint128" }, ], internalType: "struct INonfungiblePositionManager.CollectParams", name: "params", type: "tuple", }, ], name: "collect", outputs: [ { internalType: "uint256", name: "amount0", type: "uint256" }, { internalType: "uint256", name: "amount1", type: "uint256" }, ], stateMutability: "payable", type: "function", }, { inputs: [ { internalType: "address", name: "token0", type: "address" }, { internalType: "address", name: "token1", type: "address" }, { internalType: "uint24", name: "fee", type: "uint24" }, { internalType: "uint160", name: "sqrtPriceX96", type: "uint160" }, ], name: "createAndInitializePoolIfNecessary", outputs: [{ internalType: "address", name: "pool", type: "address" }], stateMutability: "payable", type: "function", }, { inputs: [ { components: [ { internalType: "uint256", name: "tokenId", type: "uint256" }, { internalType: "uint128", name: "liquidity", type: "uint128" }, { internalType: "uint256", name: "amount0Min", type: "uint256" }, { internalType: "uint256", name: "amount1Min", type: "uint256" }, { internalType: "uint256", name: "deadline", type: "uint256" }, ], internalType: "struct INonfungiblePositionManager.DecreaseLiquidityParams", name: "params", type: "tuple", }, ], name: "decreaseLiquidity", outputs: [ { internalType: "uint256", name: "amount0", type: "uint256" }, { internalType: "uint256", name: "amount1", type: "uint256" }, ], stateMutability: "payable", type: "function", }, { inputs: [], name: "factory", outputs: [{ internalType: "address", name: "", type: "address" }], stateMutability: "view", type: "function", }, { inputs: [{ internalType: "uint256", name: "tokenId", type: "uint256" }], name: "getApproved", outputs: [{ internalType: "address", name: "", type: "address" }], stateMutability: "view", type: "function", }, { inputs: [ { components: [ { internalType: "uint256", name: "tokenId", type: "uint256" }, { internalType: "uint256", name: "amount0Desired", type: "uint256" }, { internalType: "uint256", name: "amount1Desired", type: "uint256" }, { internalType: "uint256", name: "amount0Min", type: "uint256" }, { internalType: "uint256", name: "amount1Min", type: "uint256" }, { internalType: "uint256", name: "deadline", type: "uint256" }, ], internalType: "struct INonfungiblePositionManager.IncreaseLiquidityParams", name: "params", type: "tuple", }, ], name: "increaseLiquidity", outputs: [ { internalType: "uint128", name: "liquidity", type: "uint128" }, { internalType: "uint256", name: "amount0", type: "uint256" }, { internalType: "uint256", name: "amount1", type: "uint256" }, ], stateMutability: "payable", type: "function", }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "operator", type: "address" }, ], name: "isApprovedForAll", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "view", type: "function", }, { inputs: [ { components: [ { internalType: "address", name: "token0", type: "address" }, { internalType: "address", name: "token1", type: "address" }, { internalType: "uint24", name: "fee", type: "uint24" }, { internalType: "int24", name: "tickLower", type: "int24" }, { internalType: "int24", name: "tickUpper", type: "int24" }, { internalType: "uint256", name: "amount0Desired", type: "uint256" }, { internalType: "uint256", name: "amount1Desired", type: "uint256" }, { internalType: "uint256", name: "amount0Min", type: "uint256" }, { internalType: "uint256", name: "amount1Min", type: "uint256" }, { internalType: "address", name: "recipient", type: "address" }, { internalType: "uint256", name: "deadline", type: "uint256" }, ], internalType: "struct INonfungiblePositionManager.MintParams", name: "params", type: "tuple", }, ], name: "mint", outputs: [ { internalType: "uint256", name: "tokenId", type: "uint256" }, { internalType: "uint128", name: "liquidity", type: "uint128" }, { internalType: "uint256", name: "amount0", type: "uint256" }, { internalType: "uint256", name: "amount1", type: "uint256" }, ], stateMutability: "payable", type: "function", }, { inputs: [{ internalType: "bytes[]", name: "data", type: "bytes[]" }], name: "multicall", outputs: [{ internalType: "bytes[]", name: "results", type: "bytes[]" }], stateMutability: "payable", type: "function", }, { inputs: [], name: "name", outputs: [{ internalType: "string", name: "", type: "string" }], stateMutability: "view", type: "function", }, { inputs: [{ internalType: "uint256", name: "tokenId", type: "uint256" }], name: "ownerOf", outputs: [{ internalType: "address", name: "", type: "address" }], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" }, { internalType: "uint256", name: "deadline", type: "uint256" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" }, ], name: "permit", outputs: [], stateMutability: "payable", type: "function", }, { inputs: [{ internalType: "uint256", name: "tokenId", type: "uint256" }], name: "positions", outputs: [ { internalType: "uint96", name: "nonce", type: "uint96" }, { internalType: "address", name: "operator", type: "address" }, { internalType: "address", name: "token0", type: "address" }, { internalType: "address", name: "token1", type: "address" }, { internalType: "uint24", name: "fee", type: "uint24" }, { internalType: "int24", name: "tickLower", type: "int24" }, { internalType: "int24", name: "tickUpper", type: "int24" }, { internalType: "uint128", name: "liquidity", type: "uint128" }, { internalType: "uint256", name: "feeGrowthInside0LastX128", type: "uint256", }, { internalType: "uint256", name: "feeGrowthInside1LastX128", type: "uint256", }, { internalType: "uint128", name: "tokensOwed0", type: "uint128" }, { internalType: "uint128", name: "tokensOwed1", type: "uint128" }, ], stateMutability: "view", type: "function", }, { inputs: [], name: "refundETH", outputs: [], stateMutability: "payable", type: "function", }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" }, ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" }, { internalType: "bytes", name: "_data", type: "bytes" }, ], name: "safeTransferFrom", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "address", name: "token", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "uint256", name: "deadline", type: "uint256" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" }, ], name: "selfPermit", outputs: [], stateMutability: "payable", type: "function", }, { inputs: [ { internalType: "address", name: "token", type: "address" }, { internalType: "uint256", name: "nonce", type: "uint256" }, { internalType: "uint256", name: "expiry", type: "uint256" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" }, ], name: "selfPermitAllowed", outputs: [], stateMutability: "payable", type: "function", }, { inputs: [ { internalType: "address", name: "token", type: "address" }, { internalType: "uint256", name: "nonce", type: "uint256" }, { internalType: "uint256", name: "expiry", type: "uint256" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" }, ], name: "selfPermitAllowedIfNecessary", outputs: [], stateMutability: "payable", type: "function", }, { inputs: [ { internalType: "address", name: "token", type: "address" }, { internalType: "uint256", name: "value", type: "uint256" }, { internalType: "uint256", name: "deadline", type: "uint256" }, { internalType: "uint8", name: "v", type: "uint8" }, { internalType: "bytes32", name: "r", type: "bytes32" }, { internalType: "bytes32", name: "s", type: "bytes32" }, ], name: "selfPermitIfNecessary", outputs: [], stateMutability: "payable", type: "function", }, { inputs: [ { internalType: "address", name: "operator", type: "address" }, { internalType: "bool", name: "approved", type: "bool" }, ], name: "setApprovalForAll", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [{ internalType: "bytes4", name: "interfaceId", type: "bytes4" }], name: "supportsInterface", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "address", name: "token", type: "address" }, { internalType: "uint256", name: "amountMinimum", type: "uint256" }, { internalType: "address", name: "recipient", type: "address" }, ], name: "sweepToken", outputs: [], stateMutability: "payable", type: "function", }, { inputs: [], name: "symbol", outputs: [{ internalType: "string", name: "", type: "string" }], stateMutability: "view", type: "function", }, { inputs: [{ internalType: "uint256", name: "index", type: "uint256" }], name: "tokenByIndex", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "address", name: "owner", type: "address" }, { internalType: "uint256", name: "index", type: "uint256" }, ], name: "tokenOfOwnerByIndex", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [{ internalType: "uint256", name: "tokenId", type: "uint256" }], name: "tokenURI", outputs: [{ internalType: "string", name: "", type: "string" }], stateMutability: "view", type: "function", }, { inputs: [], name: "totalSupply", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "tokenId", type: "uint256" }, ], name: "transferFrom", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "uint256", name: "amount0Owed", type: "uint256" }, { internalType: "uint256", name: "amount1Owed", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" }, ], name: "uniswapV3MintCallback", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "uint256", name: "amountMinimum", type: "uint256" }, { internalType: "address", name: "recipient", type: "address" }, ], name: "unwrapWETH9", outputs: [], stateMutability: "payable", type: "function", }, { stateMutability: "payable", type: "receive" }, ] as const; export const uniV3poolAbi = [ { inputs: [], stateMutability: "nonpayable", type: "constructor" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address", }, { indexed: true, internalType: "int24", name: "tickLower", type: "int24", }, { indexed: true, internalType: "int24", name: "tickUpper", type: "int24", }, { indexed: false, internalType: "uint128", name: "amount", type: "uint128", }, { indexed: false, internalType: "uint256", name: "amount0", type: "uint256", }, { indexed: false, internalType: "uint256", name: "amount1", type: "uint256", }, ], name: "Burn", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "owner", type: "address", }, { indexed: false, internalType: "address", name: "recipient", type: "address", }, { indexed: true, internalType: "int24", name: "tickLower", type: "int24", }, { indexed: true, internalType: "int24", name: "tickUpper", type: "int24", }, { indexed: false, internalType: "uint128", name: "amount0", type: "uint128", }, { indexed: false, internalType: "uint128", name: "amount1", type: "uint128", }, ], name: "Collect", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "sender", type: "address", }, { indexed: true, internalType: "address", name: "recipient", type: "address", }, { indexed: false, internalType: "uint128", name: "amount0", type: "uint128", }, { indexed: false, internalType: "uint128", name: "amount1", type: "uint128", }, ], name: "CollectProtocol", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "sender", type: "address", }, { indexed: true, internalType: "address", name: "recipient", type: "address", }, { indexed: false, internalType: "uint256", name: "amount0", type: "uint256", }, { indexed: false, internalType: "uint256", name: "amount1", type: "uint256", }, { indexed: false, internalType: "uint256", name: "paid0", type: "uint256", }, { indexed: false, internalType: "uint256", name: "paid1", type: "uint256", }, ], name: "Flash", type: "event", }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint16", name: "observationCardinalityNextOld", type: "uint16", }, { indexed: false, internalType: "uint16", name: "observationCardinalityNextNew", type: "uint16", }, ], name: "IncreaseObservationCardinalityNext", type: "event", }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint160", name: "sqrtPriceX96", type: "uint160", }, { indexed: false, internalType: "int24", name: "tick", type: "int24" }, ], name: "Initialize", type: "event", }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "sender", type: "address", }, { indexed: true, internalType: "address", name: "owner", type: "address", }, { indexed: true, internalType: "int24", name: "tickLower", type: "int24", }, { indexed: true, internalType: "int24", name: "tickUpper", type: "int24", }, { indexed: false, internalType: "uint128", name: "amount", type: "uint128", }, { indexed: false, internalType: "uint256", name: "amount0", type: "uint256", }, { indexed: false, internalType: "uint256", name: "amount1", type: "uint256", }, ], name: "Mint", type: "event", }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint8", name: "feeProtocol0Old", type: "uint8", }, { indexed: false, internalType: "uint8", name: "feeProtocol1Old", type: "uint8", }, { indexed: false, internalType: "uint8", name: "feeProtocol0New", type: "uint8", }, { indexed: false, internalType: "uint8", name: "feeProtocol1New", type: "uint8", }, ], name: "SetFeeProtocol", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "sender", type: "address", }, { indexed: true, internalType: "address", name: "recipient", type: "address", }, { indexed: false, internalType: "int256", name: "amount0", type: "int256", }, { indexed: false, internalType: "int256", name: "amount1", type: "int256", }, { indexed: false, internalType: "uint160", name: "sqrtPriceX96", type: "uint160", }, { indexed: false, internalType: "uint128", name: "liquidity", type: "uint128", }, { indexed: false, internalType: "int24", name: "tick", type: "int24" }, ], name: "Swap", type: "event", }, { inputs: [ { internalType: "int24", name: "tickLower", type: "int24" }, { internalType: "int24", name: "tickUpper", type: "int24" }, { internalType: "uint128", name: "amount", type: "uint128" }, ], name: "burn", outputs: [ { internalType: "uint256", name: "amount0", type: "uint256" }, { internalType: "uint256", name: "amount1", type: "uint256" }, ], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "address", name: "recipient", type: "address" }, { internalType: "int24", name: "tickLower", type: "int24" }, { internalType: "int24", name: "tickUpper", type: "int24" }, { internalType: "uint128", name: "amount0Requested", type: "uint128" }, { internalType: "uint128", name: "amount1Requested", type: "uint128" }, ], name: "collect", outputs: [ { internalType: "uint128", name: "amount0", type: "uint128" }, { internalType: "uint128", name: "amount1", type: "uint128" }, ], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "address", name: "recipient", type: "address" }, { internalType: "uint128", name: "amount0Requested", type: "uint128" }, { internalType: "uint128", name: "amount1Requested", type: "uint128" }, ], name: "collectProtocol", outputs: [ { internalType: "uint128", name: "amount0", type: "uint128" }, { internalType: "uint128", name: "amount1", type: "uint128" }, ], stateMutability: "nonpayable", type: "function", }, { inputs: [], name: "factory", outputs: [{ internalType: "address", name: "", type: "address" }], stateMutability: "view", type: "function", }, { inputs: [], name: "fee", outputs: [{ internalType: "uint24", name: "", type: "uint24" }], stateMutability: "view", type: "function", }, { inputs: [], name: "feeGrowthGlobal0X128", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [], name: "feeGrowthGlobal1X128", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "address", name: "recipient", type: "address" }, { internalType: "uint256", name: "amount0", type: "uint256" }, { internalType: "uint256", name: "amount1", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" }, ], name: "flash", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "uint16", name: "observationCardinalityNext", type: "uint16", }, ], name: "increaseObservationCardinalityNext", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "uint160", name: "sqrtPriceX96", type: "uint160" }, ], name: "initialize", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [], name: "liquidity", outputs: [{ internalType: "uint128", name: "", type: "uint128" }], stateMutability: "view", type: "function", }, { inputs: [], name: "maxLiquidityPerTick", outputs: [{ internalType: "uint128", name: "", type: "uint128" }], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "address", name: "recipient", type: "address" }, { internalType: "int24", name: "tickLower", type: "int24" }, { internalType: "int24", name: "tickUpper", type: "int24" }, { internalType: "uint128", name: "amount", type: "uint128" }, { internalType: "bytes", name: "data", type: "bytes" }, ], name: "mint", outputs: [ { internalType: "uint256", name: "amount0", type: "uint256" }, { internalType: "uint256", name: "amount1", type: "uint256" }, ], stateMutability: "nonpayable", type: "function", }, { inputs: [{ internalType: "uint256", name: "", type: "uint256" }], name: "observations", outputs: [ { internalType: "uint32", name: "blockTimestamp", type: "uint32" }, { internalType: "int56", name: "tickCumulative", type: "int56" }, { internalType: "uint160", name: "secondsPerLiquidityCumulativeX128", type: "uint160", }, { internalType: "bool", name: "initialized", type: "bool" }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "uint32[]", name: "secondsAgos", type: "uint32[]" }, ], name: "observe", outputs: [ { internalType: "int56[]", name: "tickCumulatives", type: "int56[]" }, { internalType: "uint160[]", name: "secondsPerLiquidityCumulativeX128s", type: "uint160[]", }, ], stateMutability: "view", type: "function", }, { inputs: [{ internalType: "bytes32", name: "", type: "bytes32" }], name: "positions", outputs: [ { internalType: "uint128", name: "liquidity", type: "uint128" }, { internalType: "uint256", name: "feeGrowthInside0LastX128", type: "uint256", }, { internalType: "uint256", name: "feeGrowthInside1LastX128", type: "uint256", }, { internalType: "uint128", name: "tokensOwed0", type: "uint128" }, { internalType: "uint128", name: "tokensOwed1", type: "uint128" }, ], stateMutability: "view", type: "function", }, { inputs: [], name: "protocolFees", outputs: [ { internalType: "uint128", name: "token0", type: "uint128" }, { internalType: "uint128", name: "token1", type: "uint128" }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "uint8", name: "feeProtocol0", type: "uint8" }, { internalType: "uint8", name: "feeProtocol1", type: "uint8" }, ], name: "setFeeProtocol", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [], name: "slot0", outputs: [ { internalType: "uint160", name: "sqrtPriceX96", type: "uint160" }, { internalType: "int24", name: "tick", type: "int24" }, { internalType: "uint16", name: "observationIndex", type: "uint16" }, { internalType: "uint16", name: "observationCardinality", type: "uint16", }, { internalType: "uint16", name: "observationCardinalityNext", type: "uint16", }, { internalType: "uint8", name: "feeProtocol", type: "uint8" }, { internalType: "bool", name: "unlocked", type: "bool" }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "int24", name: "tickLower", type: "int24" }, { internalType: "int24", name: "tickUpper", type: "int24" }, ], name: "snapshotCumulativesInside", outputs: [ { internalType: "int56", name: "tickCumulativeInside", type: "int56" }, { internalType: "uint160", name: "secondsPerLiquidityInsideX128", type: "uint160", }, { internalType: "uint32", name: "secondsInside", type: "uint32" }, ], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "address", name: "recipient", type: "address" }, { internalType: "bool", name: "zeroForOne", type: "bool" }, { internalType: "int256", name: "amountSpecified", type: "int256" }, { internalType: "uint160", name: "sqrtPriceLimitX96", type: "uint160" }, { internalType: "bytes", name: "data", type: "bytes" }, ], name: "swap", outputs: [ { internalType: "int256", name: "amount0", type: "int256" }, { internalType: "int256", name: "amount1", type: "int256" }, ], stateMutability: "nonpayable", type: "function", }, { inputs: [{ internalType: "int16", name: "", type: "int16" }], name: "tickBitmap", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [], name: "tickSpacing", outputs: [{ internalType: "int24", name: "", type: "int24" }], stateMutability: "view", type: "function", }, { inputs: [{ internalType: "int24", name: "", type: "int24" }], name: "ticks", outputs: [ { internalType: "uint128", name: "liquidityGross", type: "uint128" }, { internalType: "int128", name: "liquidityNet", type: "int128" }, { internalType: "uint256", name: "feeGrowthOutside0X128", type: "uint256", }, { internalType: "uint256", name: "feeGrowthOutside1X128", type: "uint256", }, { internalType: "int56", name: "tickCumulativeOutside", type: "int56" }, { internalType: "uint160", name: "secondsPerLiquidityOutsideX128", type: "uint160", }, { internalType: "uint32", name: "secondsOutside", type: "uint32" }, { internalType: "bool", name: "initialized", type: "bool" }, ], stateMutability: "view", type: "function", }, { inputs: [], name: "token0", outputs: [{ internalType: "address", name: "", type: "address" }], stateMutability: "view", type: "function", }, { inputs: [], name: "token1", outputs: [{ internalType: "address", name: "", type: "address" }], stateMutability: "view", type: "function", }, ] as const;

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/NaniDAO/agentek'

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