onchain-mcp
onchain-mcp:AI 模型链上数据交互的 MCP 服务器,赋能智能合约分析与应用。

onchain-mcp 解决方案概述
onchain-mcp
是一个 MCP 服务器,旨在通过 Bankless API 实现与链上数据的交互。它允许 AI 模型以结构化的方式访问区块链状态和事件数据,极大地扩展了 AI 在 Web3 领域的应用能力。
该解决方案提供了一系列链上数据操作工具,包括读取合约状态、获取代理合约地址、获取合约 ABI 和源代码、检索事件日志以及构建事件主题等功能。开发者可以通过这些工具,轻松地将链上数据集成到 AI 模型中,从而构建更智能、更具洞察力的应用程序。例如,AI 模型可以利用这些工具分析 DeFi 协议的运行状况、预测 NFT 市场的趋势或识别潜在的安全风险。
onchain-mcp
通过标准输入/输出与 AI 模型进行交互,易于集成到现有的 AI 工作流程中。其核心价值在于简化了 AI 模型访问和理解复杂链上数据的过程,降低了开发门槛,并为 AI 在区块链领域的创新应用开辟了新的可能性。
onchain-mcp 核心能力
读取合约状态 (read_contract)
read_contract
功能允许AI模型读取部署在不同区块链网络上的智能合约的状态。它通过指定网络、合约地址、方法名以及输入和输出类型,向Bankless API发起请求,并返回合约调用结果。此功能的核心在于将链上数据转化为AI模型可以理解和利用的结构化信息。例如,AI模型可以使用此功能来查询特定ERC-20代币合约的账户余额,或者获取DeFi协议中的抵押率。技术实现上,该功能依赖于Bankless API提供的合约读取接口,并对返回结果进行类型转换和格式化,以满足MCP协议的要求。这使得AI能够安全地与链上数据交互,无需直接处理复杂的区块链底层细节。
获取事件日志 (get_events)
get_events
功能使AI模型能够检索智能合约发出的事件日志,从而追踪链上活动和状态变化。通过指定网络、合约地址以及事件主题(topic),AI模型可以过滤并获取特定类型的事件。例如,AI模型可以使用此功能来监控DeFi协议中的清算事件,或者追踪NFT的转移情况。此功能对于构建链上监控系统、风险评估模型以及事件驱动的AI应用至关重要。技术实现上,该功能利用Bankless API提供的事件查询接口,并支持通过多个主题进行复合过滤。返回的事件日志包含交易哈希、区块号、事件数据等详细信息,方便AI模型进行深入分析和决策。
构建事件主题 (build_event_topic)
build_event_topic
功能允许AI模型根据事件名称和参数类型动态生成事件主题(topic)哈希值。在以太坊等区块链中,事件通过其主题进行索引和过滤。此功能使得AI模型能够灵活地构造事件查询,而无需预先知道事件主题的哈希值。例如,AI模型可以使用此功能来监听自定义智能合约中的特定事件,或者构建通用的事件解析器。技术实现上,该功能使用Keccak-256哈希算法对事件签名进行哈希,生成符合EVM规范的事件主题。这为AI模型提供了强大的事件处理能力,使其能够更好地理解和响应链上事件。
技术实现
onchain-mcp 使用 TypeScript 构建,并通过 npm 发布,方便开发者安装和使用。它通过环境变量配置 Bankless API Token,保证了API调用的安全性。该项目实现了详细的错误处理机制,包括输入验证错误、身份验证错误、资源未找到错误和速率限制错误,确保了服务的稳定性和可靠性。此外,项目还提供了详细的开发和调试指南,方便开发者进行二次开发和集成。