agentek-eth
一个提供加密货币研究和基于以太坊的自动化工具的 MCP 服务器。
Tools
resolveENS
Resolves an ENS name to an Ethereum address
lookupENS
Looks up the ENS name for an Ethereum address
getAllowance
Gets the ERC20 token allowance between an owner and spender
getBalanceOf
Gets the ERC20 token balance of an address
getTotalSupply
Gets the total supply of an ERC20 token
getDecimals
Gets the number of decimals of an ERC20 token
getName
Gets the name of an ERC20 token
getSymbol
Gets the symbol of an ERC20 token
getTokenMetadata
Gets all metadata (name, symbol, decimals, totalSupply) of an ERC20 token
intentApprove
Creates an intent to approve token spending
getAcrossFeeQuote
Fetches a suggested fee quote for a cross-chain asset bridge using the Across Protocol REST API.
intentDepositAcross
Deposits tokens into the Across Protocol bridge to initiate a cross-chain transfer.
intentTransfer
Creates an intent to transfer tokens
intentTransferFrom
Creates an intent to transfer tokens from another address
getLatestTokens
Get trending tokens and market data
getBalance
Get the ETH balance for an address
getCode
Get the bytecode of an address
getTransactionCount
Get the number of transactions sent from an address
getBlock
Get information about a block
getBlockNumber
Get the current block number
getGasPrice
Get the current gas price. If chainId is not specified, will return gas price for all supported chains.
estimateGas
Estimate gas for a transaction
getFeeHistory
Get historical gas fee info
getTransaction
Get details about a transaction
getTransactionReceipt
Get the receipt of a transaction
getUniV3Pool
Gets information about a Uniswap V3 pool
getUserPositions
Gets all Uniswap V3 positions for a user
getPoolFeeData
Gets fee-related data for a pool
getPositionDetails
Gets detailed information about a specific LP position
intentMintPosition
Creates a new Uniswap V3 liquidity position
intentIncreaseLiquidity
Adds more liquidity to an existing Uniswap V3 position
intentDecreaseLiquidity
Removes liquidity from a Uniswap V3 position
intentCollectFees
Collects accumulated fees from a Uniswap V3 position
intentTransferPosition
Transfers ownership of a Uniswap V3 LP NFT
depositWETH
Deposit ETH into the WETH contract, receiving WETH in return
withdrawWETH
Withdraw WETH back to native ETH
getNaniProposals
Get proposals for NANIDAO
intentStakeNani
Stake NANI tokens to receive xNANI tokens, which can be used for governance
intentUnstakeNani
Unstake xNANI tokens back to NANI tokens
intentProposeNani
Create a new governance proposal for NANIDAO
intentVoteNaniProposal
Vote on an existing NANIDAO governance proposal
getNativeCoinHolders
Get native coin holders list
getAddressInfo
Get information about a specific address
getAddressCounters
Get counters for a specific address
getAddressTransactions
Get transactions for a specific address
getAddressTokenTransfers
Get token transfers for a specific address
getAddressInternalTransactions
Get internal transactions for a specific address
getAddressLogs
Get logs for a specific address
getAddressBlocksValidated
Get blocks validated by a specific address
getAddressTokenBalances
Get all token balances for a specific address
getAddressTokens
Get token balances with filtering and pagination
getAddressCoinBalanceHistory
Get address coin balance history
getAddressCoinBalanceHistoryByDay
Get address coin balance history by day
getAddressWithdrawals
Get withdrawals for a specific address
getAddressNFTs
Get list of NFTs owned by address
getAddressNFTCollections
Get list of NFTs owned by address, grouped by collection
getBlockInfo
Get information about a specific block
getBlockTransactions
Get transactions within a specific block
getBlockWithdrawals
Get withdrawals within a specific block
getStats
Get statistics for various blockchain metrics.
getTransactionsChart
Retrieve daily transaction statistics chart data.
getTransactionInfo
Retrieve detailed information for a given transaction hash.
getTransactionTokenTransfers
Retrieve all token transfers that occurred within a given transaction.
getTransactionInternalTransactions
Retrieve internal transactions that occurred within a given transaction.
tallyUserDaos
Fetch all DAOs a user is a member of from the Tally governance API.
getTransactionLogs
Retrieve logs that were generated from a specific transaction.
getTransactionRawTrace
Retrieve raw trace information for a specific transaction.
getTransactionStateChanges
Retrieve state changes that occurred during a transaction.
getTransactionSummary
Retrieve a summary of data related to a transaction.
getSmartContracts
Get smart contract for the query
getSmartContract
Retrieve the source code, ABI and metadata a contract.
getTokenInfo
Fetch metadata for a token contract.
getTokenHolders
Retrieve token holders and their balances for a given token.
getTokenTransfers
List transfers for a specific token contract with pagination support.
getBlockscoutSearch
Perform a search query to find blocks, transactions, addresses, or tokens on the blockchain.
getAaveUserData
Fetches Aave user data including total collateral, total debt, available borrowing power, current liquidation threshold, LTV, and health factor.
getAaveReserveData
Fetches reserve data for a given asset from Aave including available liquidity, total stable and variable debt, and interest rates.
intentAaveDeposit
Deposits tokens into the Aave protocol to supply liquidity and earn interest.
intentAaveWithdraw
Withdraws tokens from Aave, redeeming your supplied assets (aTokens).
intentAaveBorrow
Borrows tokens from Aave using your supplied collateral. By default, the variable rate mode (2) is used.
intentAaveRepay
Repays your Aave debt. By default, the variable rate mode (2) is used for repayment.
checkMaliciousAddress
Check if an Ethereum address has been associated with malicious activity
checkMaliciousWebsite
Check if a website has been associated with crypto scams or malicious activity
scrapeWebContent
Given a URL, fetch the page's HTML and return the main text content as accurately as possible. Works for most websites.
getFearAndGreedIndex
Retrieves the current Fear and Greed Index value from Alternative.me API.
getSlowStatus
Get information about tokens, unlocked balances, and pending transfers in SLOW
predictTransferId
Predict a transfer ID for a potential transfer
canUnlockSlow
Check if a transfer can be unlocked and get info about it
getCanReverseSlowTransfer
Check if a transfer can be reversed
getSlowGuardianInfo
Get guardian information for a user
getSlowTransferApprovalRequired
Check if a transfer needs guardian approval
intentDepositToSlow
Deposit tokens or ETH into SLOW contract with a timelock
intentSetSlowGuardian
Set a guardian for a user in the SLOW contract
intentWithdrawFromSlow
Withdraw unlocked tokens from SLOW contract
intentApproveSlowTransfer
Guardian approves a transfer in SLOW contract
intentUnlockSlow
Unlock a time-locked transfer in SLOW contract
intentReverseSlowTransfer
Reverse a pending transfer in SLOW contract
getNFTMetadata
Gets metadata for an NFT token by contract address and token ID
getCryptoPrice
Get the current price of a cryptocurrency in USD
estimateGasCost
Estimate the gas cost for a transaction in both native token and USD
getTokenChart
Gets historical price chart data for one or more tokens from DeFi Llama
getYieldTool
Analyzes and compares yield opportunities from DefiLlama across all DeFi protocols
compareYieldTool
Compares yield opportunities for specific assets across different protocols
getYieldHistoryTool
Fetches and analyzes historical yield data for a specific pool from DefiLlama
compareYieldHistoryTool
Compares historical yield performance across multiple pools, analyzing metrics like APY, volatility, and TVL trends
think
Use the tool to think about something. It will not obtain new information or change the database, but just append the thought to the log. Use it when complex reasoning or some cache memory is needed.
askPerplexitySearch
Ask perplexity search
tallyProposals
Fetch proposals from the Tally governance API for a specified DAO/space.
tallyChains
Fetch all chains supported by the Tally governance API.
intentGovernorVote
Creates an intent to vote on a Governor bravo proposal
intentGovernorVoteWithReason
Creates an intent to vote on a Governor bravo proposal with a reason
getLatestCoindeskNewsTool
Calls the Coindesk API to retrieve the latest news articles. Parameter 'limit' allows specification of how many articles to fetch (defaults to 10).
getMarketEvents
Fetches cryptocurrency market events from CoinMarketCal. Supports filtering by coins, categories, date ranges, and various sorting options.
README
agentek
一个可扩展的 TypeScript 工具包,可将复杂的 EVM 区块链交互简化为可组合的、基于意图的工具。为链上操作和链下数据服务提供统一的、类型安全的接口,使开发人员能够以编程方式跨多个 EVM 网络执行任何区块链操作。
有兴趣贡献吗?请查看我们的 CONTRIBUTING.md 指南!
包
Agentek 工具包的结构是一个包含多个可发布包的 monorepo:
@agentek/tools- 包含所有工具的主包@agentek/ai-sdk- 用于 Vercel AI SDK 的 AI SDK 集成@agentek/mcp-server- 模型上下文协议服务器
要求
- Node.js >= 18.0.0
- npm、yarn 或 pnpm
安装
您可以安装整个工具包:
npm install @agentek/tools
AI SDK:
npm install @agentek/ai-sdk
用法
使用完整的工具包
import { createAgentekClient, allTools } from '@agentek/tools';
import { http } from 'viem';
import { mainnet } from 'viem/chains';
const client = createAgentekClient({
accountOrAddress: '0x...',
chains: [mainnet],
transports: [http()],
tools: allTools({})
});
// 执行一个工具
const result = await client.execute('getERC20BalanceTool', {
address: '0x...',
tokenAddress: '0x...'
});
与 AI SDK 一起使用
import { createAgentekClient, allTools } from '@agentek/tools';
import { AgentekToolkit } from '@agentek/ai-sdk';
import { http } from 'viem';
import { mainnet } from 'viem/chains';
const toolkit = new AgentekToolkit({
accountOrAddress: '0x...',
chains: [mainnet],
transports: [http()],
tools: allTools({})
});
// 获取 Vercel AI SDK 的工具
const aiTools = toolkit.getTools();
使用 MCP 服务器
MCP(模型上下文协议)服务器允许您通过模型上下文协议将 Agentek 工具暴露给 LLM。有关更多信息,请参见 MCP Server README
工具 (总共 114 个)
可用工具
- resolveENS
- lookupENS
- getAllowance
- getBalanceOf
- getTotalSupply
- getDecimals
- getName
- getSymbol
- getTokenMetadata
- intentApprove
- getAcrossFeeQuote
- intentDepositAcross
- intentTransfer
- intentTransferFrom
- getLatestTokens
- getBalance
- getCode
- getTransactionCount
- getBlock
- getBlockNumber
- getGasPrice
- estimateGas
- getFeeHistory
- getTransaction
- getTransactionReceipt
- getUniV3Pool
- getUserPositions
- getPoolFeeData
- getPositionDetails
- intentMintPosition
- intentIncreaseLiquidity
- intentDecreaseLiquidity
- intentCollectFees
- intentTransferPosition
- depositWETH
- withdrawWETH
- getNaniProposals
- intentStakeNani
- intentUnstakeNani
- intentProposeNani
- intentVoteNaniProposal
- getNativeCoinHolders
- getAddressInfo
- getAddressCounters
- getAddressTransactions
- getAddressTokenTransfers
- getAddressInternalTransactions
- getAddressLogs
- getAddressBlocksValidated
- getAddressTokenBalances
- getAddressTokens
- getAddressCoinBalanceHistory
- getAddressCoinBalanceHistoryByDay
- getAddressWithdrawals
- getAddressNFTs
- getAddressNFTCollections
- getBlockInfo
- getBlockTransactions
- getBlockWithdrawals
- getStats
- getTransactionsChart
- getTransactionInfo
- getTransactionTokenTransfers
- getTransactionInternalTransactions
- getTransactionLogs
- getTransactionRawTrace
- getTransactionStateChanges
- getTransactionSummary
- getSmartContracts
- getSmartContract
- getTokenInfo
- getTokenHolders
- getTokenTransfers
- getBlockscoutSearch
- getAaveUserData
- getAaveReserveData
- intentAaveDeposit
- intentAaveWithdraw
- intentAaveBorrow
- intentAaveRepay
- checkMaliciousAddress
- checkMaliciousWebsite
- scrapeWebContent
- getFearAndGreedIndex
- getSlowStatus
- predictTransferId
- canUnlockSlow
- getCanReverseSlowTransfer
- getSlowGuardianInfo
- getSlowTransferApprovalRequired
- intentDepositToSlow
- intentSetSlowGuardian
- intentWithdrawFromSlow
- intentApproveSlowTransfer
- intentUnlockSlow
- intentReverseSlowTransfer
- getNFTMetadata
- getCryptoPrice
- estimateGasCost
- getTokenChart
- getYieldTool
- compareYieldTool
- getYieldHistoryTool
- compareYieldHistoryTool
- think
- askPerplexitySearch
- intent0xSwap
- tallyProposals
- tallyChains
- tallyUserDaos
- intentGovernorVote
- intentGovernorVoteWithReason
- getLatestCoindeskNewsTool
- getMarketEvents
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。