SOON Blockchain

SOON Blockchain

🚀 SVM - MCP:SOON 模型上下文协议服务器

SVM - MCP 是一个集成了 Claude AI 与 SOON 及其他基于 SVM 的区块链的模型上下文协议(MCP)服务器。它提供了丰富的工具,可用于检查余额、获取最近交易以及查看代币持有量,适用于 SOON 的测试网和主网,涵盖了账户余额、交易和代币持有量等方面的查询。

🚀 快速开始

此 MCP 服务器的主要目标是连接 Claude 与 SOON 生态系统,让用户能够进行以下操作:

  • 查询测试网和主网的钱包余额
  • 获取指定地址的最新交易
  • 检查任意账户的代币持有量

目前,该服务器使用了 SOON 的 RPC 端点,不过可以轻松进行修改,以适配任何 Solana 兼容区块链或其他不同的区块链。

✨ 主要特性

  • 余额检查:用户只需提供一个地址,服务器就能返回该地址在测试网和主网上的余额。
  • 最新交易:提供一个地址,服务器会返回该地址的最近交易记录。
  • 代币持有量:输入一个地址,服务器将返回该地址持有的所有代币及其详细信息。

📦 安装指南

先决条件

  • Node.js:需要安装 Node.js 和 npm(版本 14 或更高)。
  • Yarn:也可以使用 Yarn 包管理器。
  • SOON 网络知识:了解如何与 Solana 网络交互。

安装步骤

  1. 克隆此仓库:
    git clone https://github.com/yourusername/svm-mcp.git
    cd svm-mcp
    
  2. 安装依赖项:
    npm install
    # 或者使用 yarn
    yarn install
    
  3. 启动服务器:
    • 编译项目:
      npm run build
      # 或者使用 yarn
      yarn build
      
    • 运行构建后的文件:
      node build/index.js
      

📚 详细文档

项目结构

  • src/index.ts:项目的主入口,负责初始化服务器和连接。
  • src/tools/:包含与区块链交互的工具函数。
  • build/:编译生成的输出目录。

工具实现

余额检查工具

async function getBalance(address: string, connection: Connection) {
try {
const balance = await connection.getBalance(new PublicKey(address));
return `${balance} SOL`;
} catch (error) {
throw new Error(`无法获取余额:${error.message}`);
}
}

最新交易工具

async function getRecentTransactions(address: string, connection: Connection) {
try {
const transactions = await connection.getSignaturesForAddress([new PublicKey(address)]);
return transactions;
} catch (error) {
throw new Error(`无法获取交易:${error.message}`);
}
}

代币持有量工具

async function getToken Holdings(address: string, connection: Connection) {
try {
const tokenAccounts = await connection.getTokenAccountsByOwner(new PublicKey(address), {
programId: new PublicKey("TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),
});
return tokenAccounts;
} catch (error) {
throw new Error(`无法获取代币持有量:${error.message}`);
}
}

服务器初始化

async function main() {
try {
console.log("启动 MCP 服务器...");
const transport = new StdioServerTransport();
console.log("传输已初始化,正在连接到服务器...");
await server.connect(transport);
console.log("服务器连接成功");
// 服务器将保持在此状态运行
} catch (error) {
console.error("连接服务器时出错:", error);
process.exit(1);
}
}

main().catch((err) => {
console.error("启动服务器时出错:", err);
process.exit(1);
});

配置

Claude Desktop 配置

要在 Claude Desktop 中使用此 MCP 服务器,将以下内容添加到 claude_desktop_config.json 文件中:

{
"mcpServers": {
"svm-mcp": {
"command": "bun",
"args": ["/path/to/svm-mcp/build/index.js"]
}
}
}

自定义 RPC 端点

要使用不同的 RPC 端点或连接到其他区块链,编辑 src/index.ts 中的端点 URL:

const connectionTestnet = new Connection("YOUR_TESTNET_RPC_URL");
const connectionMainnet = new Connection("YOUR_MAINNET_RPC_URL");

使用方法与 Claude

一旦 MCP 服务器运行并连接到 Claude,您可以使用以下命令:

检查地址余额

你能检查这个 SOON 测试网地址的余额吗:

获取最近交易

在 SOON 测试网上做的最近一笔交易是什么?

查看代币持有量

在 SOON 主网上持有的有哪些代币?

致谢

  • 0 关注
  • 0 收藏,25 浏览
  • system 提出于 2025-09-26 12:00

相似服务问题

相关AI产品