本项目是 Model Context Protocol 在 Starknet 上的实现。该服务器能让 AI 助手与 Starknet 区块链进行交互,支持查看余额、解析地址、查询交易等多种操作,为区块链应用开发提供便利。
import { createServer } from 'starknet-mcp-server'
async function main() {
const server = await createServer()
await server.start(3000)
console.log('服务器已启动,访问 http://localhost:3000')
}
main().catch(console.error)
{
chains: {
// 区块链配置信息
resources: {
// 可用资源列表
tools: {
// 提供的工具集
}
}
}
}
server.tool({
name: 'starknet_balance',
description: '查询 Starknet 地址的 ETH 和代币余额',
params: {
address: string().describe('目标地址')
},
async run({ address }) {
return await balance getAddress(address)
}
})
npm install starknet-mcp-server
在 ~/.config/starknet-mcp-server/config.json 中添加以下配置:
{
"chains": {
"starknet-mainnet": {
"url": "https://alpha-mainnet.starknet.io",
"contract_address": "0x starknet-mainnet 合约地址"
},
"starknet-testnet": {
"url": "https://alpha-testnet.starknet.io",
"contract_address": "0x starknet-testnet 合约地址"
}
}
}
balance of 0x04d07e40e93398ed3c76981e449d3446f7c4e52aac5b3e8a37d7b0ca30845a5dlookup starknet_id for 0x04d07e40e93398ed3c76981e449d3446f7c4e52aac5b3e8a37d7b0ca30845a5dlatest block on starknet mainnetsrc/
├── chains/ # 区块链配置文件
├── resources/ # 可用资源定义
├── tools/ # 提供的工具集
└── server.ts # 服务器主程序
name 标识工具CHAINS=starknet-mainnet,starknet-testnet
CONTRACT_ADDRESS=0x mainnet_address,0x testnet_address
MIT License