概述
MCP(Model-Context Protocol)是Anthropic 推出的一種開放協議,它為大語言模型提供了一種標準化的方式來安全地存取外部工具、資料來源和服務。與傳統的插件系統不同,MCP 採用客戶端-伺服器架構,透過標準化的協定介面實現模型與外部系統的無縫整合。
MCP 的核心優勢
標準化介面: MCP 定義了統一的協定規範,避免了每個應用都需要開發自己的整合方案的問題。
安全性: 透過嚴格的權限控制和沙箱機制,確保外部工具的安全存取。
可擴展性: 支援豐富的工具類型,從簡單的API 呼叫到複雜的資料處理流程。
互通性: 任何支援MCP 的客戶端都可以使用相容的服務,實現了真正的跨平台相容。
Web3 + MCP 的應用場景
在Web3 領域,MCP 可以為大語言模型提供豐富的區塊鏈互動能力:
資產查詢: 查詢各種代幣餘額、交易歷史
鏈上操作: 發送交易、部署合約、呼叫智能合約
DeFi 整合: 與DEX、借貸協議、流動性挖礦等DeFi 應用交互
跨鏈操作: 支援多鏈資產管理與跨鏈轉帳
NFT 管理: 查詢、轉移、交易NFT 資產
本文將透過nodejs+typescript 建構一個簡單的Web3 MCP 服務,帶你解析MCP 的工作原理和最佳實務。
一、創建工程
建立專案資料夾並初始化項目
安裝必須的套件
新增typescript 的配置,依個人需要進行修改
修改package.json 的配置
二、編寫server
透過server.tool快速建立工具,這裡以sepolia 測試網的getBalance 為例我們寫一個工具
首先我們要註冊 zan 的帳號,開通節點服務,取得 rpcUrl ,然後實例化一個provider
寫入工具邏輯
啟動服務並新增錯誤處理
到此一個最小的mcp 服務已經編寫完成
三、調試服務
到這一步,需要我們打包出js 產物,然後執行 modelcontextprotocol/inspector,就可以調試啦
四、完善邏輯並在Cursor 中引用
完善更多的邏輯和方法,例如:支援多個evm 網路、查詢gas、發送交易、查詢代幣資訊以及代幣交易等一些常用的方法,打包後在Cursor 中引用,Cursor 是一款全新的智能IDE,無縫集成了AI 技術。 Cursor 基於VSCode 構建,易於上手,並能大幅提升您的工作效率。同時它也是一個支援MCP 整合的應用程式。
五、使用
然後你就可以在chat 裡愉快的使用啦~(chat 是Cursor 的AI 助手,它位於側邊欄,可透過自然語言與程式碼庫進行互動。)
例如「查詢下這個位址0xE21E97Ad8B527acb90F0b148EfaFbA46625382cE 在sepolia 上的餘額」:
再例如「給這個地址0x2c1d9ef7ccede70d77e6038701cd63138dd920a0 轉0.1 ETH」:
六、寫在最後
留給我們的想像空間還很大,本文已經講解了整體流程,那我們後邊還可以做哪些事情呢,比如支持多種鏈(Bitcoin、Solana、Tron),再比如我們接入跨鏈,在chat 裡說把我這個鏈的USDT,換成另一個鏈的? Web3 和MCP 的結合為我們開啟了一個充滿可能性的新世界。無論是DeFi 協定整合、NFT 市場操作,還是複雜的跨鏈資產管理,這些都可以透過簡單的對話來實現。
有興趣的朋友快來試試吧!