返回市场
GOAT索拉纳-mcp

GOAT索拉纳-mcp

作者:FarseenSh18 星标更新:2025-03-16

项目介绍

SolanaViz MCP Server

一个模型上下文协议(MCP)服务器,使Claude能够通过自然语言对话访问、分析和可视化Solana区块链数据。

功能

  • 数据分析:获取并分析Solana区块链数据、代币和钱包信息
  • 可视化:生成基于文本的数据探索可视化
  • 价格预测:AI驱动的代币价格预测
  • 安全分析:评估代币和协议的安全风险
  • 多钱包支持:分析任何Solana钱包,包括您自己的钱包

预备条件

  • Node.js 18+
  • npm 或 pnpm
  • Claude Desktop(用于使用MCP服务器)
  • API密钥:
    • BirdEye
    • CoinGecko
    • Allora
    • Helius(Solana RPC提供商)

安装

  1. 克隆仓库:
git clone https://github.com/yourusername/GOATsolana-mcp.git
cd GOATsolana-mcp
  1. 安装依赖项:
npm install
# 或
pnpm install
  1. 构建项目:
npm run build
# 或
pnpm build

配置

  1. 在根目录创建一个.env文件,包含以下环境变量(或从.env.example复制):
BIRDEYE_API_KEY=your_birdeye_api_key
COINGECKO_API_KEY=your_coingecko_api_key
ALLORA_API_KEY=your_allora_api_key
HELIUS_RPC_URL=your_helius_rpc_url
DEFAULT_WALLET_ADDRESS=optional_default_wallet_address
  1. 配置Claude Desktop以使用MCP服务器,在您的Claude Desktop应用数据目录中创建一个claude_desktop_config.json文件:
  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

添加以下内容,将/path/to/GOATsolana-mcp替换为您项目的绝对路径:

{
  "mcpServers": {
    "solana-viz-mcp": {
      "command": "node",
      "args": ["--input-type=module", "/path/to/GOATsolana-mcp/build/index.js"],
      "env": {
        "BIRDEYE_API_KEY": "your_birdeye_api_key",
        "COINGECKO_API_KEY": "your_coingecko_api_key",
        "ALLORA_API_KEY": "your_allora_api_key",
        "HELIUS_RPC_URL": "your_helius_rpc_url",
        "DEFAULT_WALLET_ADDRESS": "optional_default_wallet_address"
      }
    }
  }
}

重要--input-type=module标志对于Node.js正确加载ES模块至关重要。如果没有这个标志,即使文件存在,Claude Desktop也会遇到“无法找到模块”的错误。

  1. 直接启动服务器(用于测试):
npm start
  1. 在进行配置更改后完全重启Claude Desktop。

重要注意事项

模块加载

该项目使用ES模块(import/export)而不是CommonJS(require/module.exports)。Claude Desktop配置包括--input-type=module标志,这对于Node.js正确加载模块是必不可少的。

模拟实现

当前实现使用了一些GOAT SDK插件的模拟实现。这是因为插件API与代码中预期接口之间的不匹配。在未来更新中,这些模拟将被替换为实际实现的适配器。

可用工具

配置工具

  • set_wallet:设置或更改用于分析的活动钱包地址

数据获取工具

  • get_token_data:检索全面的代币信息和指标
  • get_wallet_tokens:分析钱包地址中的代币持有情况
  • get_price_history:获取代币的历史价格数据
  • get_token_pairs:分析跨DEX的交易对
  • get_trending_tokens:识别当前在Solana上流行的代币

预测工具

  • get_price_prediction:生成代币的AI驱动价格预测

安全工具

  • get_token_security:评估代币和协议的安全风险

可视化工具

  • generate_sankey_diagram:可视化实体(代币、协议、钱包)之间的流动
  • generate_treemap:使用嵌套矩形可视化分层数据
  • generate_heatmap:可视化各类别的数据强度
  • generate_network_graph:可视化实体之间的关系和连接
  • generate_radar_chart:比较多个实体的多个变量
  • generate_bubble_chart:可视化三维数据(x, y, 大小)
  • generate_temporal_heatmap:可视化时间段内的数据模式
  • generate_donut_chart:可视化部分与整体的关系

使用示例

这里有一些如何使用SolanaViz MCP与Claude的示例:

设置钱包并分析持有情况

请将我的钱包地址设置为FtG3emhAqBC8Rr9vdCqTJHxaNNuQVt7B7HvujJrQEj7Y,并分析我持有的代币。

获取代币信息并进行安全分析

你能告诉我更多关于BONK代币的信息吗?投资它是安全的吗?

分析市场趋势

目前Solana上的热门代币有哪些?你能展示它们的价格表现吗?

可视化投资组合分配

分析我的钱包,并将我的投资组合分配可视化为甜甜圈图。

获取价格预测

你对未来24小时内SOL代币的价格预测是什么?

示例输出

这里是一些使用不同工具时可以期望看到的内容示例:

数据获取示例

代币数据

当你询问像BONK这样的代币时:

BONK代币(地址:DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263)具有以下详情:

📊 市场数据:
• 当前价格:$0.00002981
• 市值:$294,152,890
• 24小时成交量:$26,843,751
• 24小时变化:+7.3%
• 历史最高价:$0.00003241(2024年1月5日)

💰 代币经济学:
• 总供应量:99,508,123,523,595
• 流通供应量:56,123,876,231,175
• 持有人数:842,391个地址
• 前十大持有人控制:47.2%的供应量

🔍 安全分析:
• 跑路风险:低
• 合约审计:通过(Certik)
• 流动性评分:9.2/10
• 社区信任度:高
• 风险评估:中等

钱包代币分析

当你请求分析钱包持有情况时:

钱包FtG3emhAqBC8Rr9vdCqTJHxaNNuQVt7B7HvujJrQEj7Y包含以下代币:

1. SOL
   • 数量:12.45 SOL
   • 价值:$1,431.75
   • 占投资组合比例:68.2%

2. BONK
   • 数量:13,521,340.93 BONK
   • 价值:$402.87
   • 占投资组合比例:19.2%

3. JTO
   • 数量:38.72 JTO
   • 价值:$264.15
   • 占投资组合比例:12.6%

总投资组合价值:$2,098.77

价格历史数据

当请求价格历史时:

过去30天内SOL的价格历史:

日期        | 价格(美元) | 24小时成交量  | 市值
------------|-------------|-------------|-------------
2025-03-15  | $115.32     | $1.42B      | $49.73B
2025-03-08  | $109.78     | $1.27B      | $47.38B
2025-03-01  | $103.65     | $1.15B      | $44.73B
2025-02-22  | $114.21     | $1.33B      | $49.27B
2025-02-15  | $95.83      | $0.98B      | $41.35B

该代币在过去30天内总体呈上升趋势,尽管期间有些波动,但涨幅达20.3%。

安全分析

当你询问代币安全性时:

BONK代币(DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263)的安全分析:

✅ 合约分析:
• 未检测到后门函数
• 无代理实现风险
• 无过度所有者权限
• 无异常费用机制

⚖️ 流动性分析:
• 总流动性:$18.52M,分布在5个DEX中
• 最大池:Raydium SOL/BONK,$7.82M
• 流动性集中度评分:8.4/10(分布良好)

🔍 所有权结构:
• 创始人所有权:12%(三年内逐步释放)
• DAO国库:18%
• 社区分配:70%

⚠️ 风险因素:
• 营销代币波动性
• 显著的社会媒体影响价格
• 与整体市场情绪高度相关

🔐 总体安全评分:8.2/10(低风险)

可视化示例

甜甜圈图

当你请求可视化投资组合分配时:

FtG3emhAqBC8Rr9vdCqTJHxaNNuQVt7B7HvujJrQEj7Y的投资组合分配

       ╭───────────────────────────╮
      /      SOL 68.2%              \
     /          ████████████████     \
    |           ████████████████      |
    |           ████████████████      |
    |  BONK     ████████████████  JTO |
    | 19.2% ███ ████████████████ ███  |
     \      ███ ████████████████ ███ /
      \     ███                  ███/
       ╰───███───────────────────███╯
               12.6%
               
总投资组合价值:$2,098.77

热力图

当你请求可视化代币在不同时间框架的表现时:

代币表现热力图(%变化)

           | 24h    | 7d     | 30d    | 90d    |
-----------+--------+--------+--------+--------|
SOL        | +3.2%  | +12.5% | +20.3% | +65.7% |
BONK       | +7.3%  | -3.8%  | +41.2% | +18.5% |
JTO        | -1.5%  | +5.7%  | +9.2%  | +32.1% |
PYTH       | +2.7%  | +8.2%  | +15.7% | +27.5% |
RENDER     | +0.5%  | -2.3%  | +11.3% | +42.8% |

图例:█ >30%  █ 10-30%  █ 0-10%  █ -10-0%  █ <-10%

网络图

当你可视化代币关系时:

网络图:Solana DeFi代币关系

                     ┌────────┐
                     │  SOL   │
                     └────────┘
                         │
          ┌──────────────┼──────────────┐
          │              │              │
    ┌─────▼─────┐  ┌─────▼─────┐  ┌─────▼─────┐
    │   BONK    │  │   USDC    │  │    JTO    │
    └─────┬─────┘  └─────┬─────┘  └─────┬─────┘
          │              │              │
      ┌───▼───┐      ┌───▼───┐      ┌───▼───┐
      │  wBTC │      │  ETH  │      │ PYTH  │
      └───────┘      └───────┘      └───────┘

图例:
- 节点大小表示市值
- 边缘粗细表示代币之间的流动性

串联图

当你可视化代币流时:

串联图:主要钱包之间代币流(最近7天)

   交易所钱包                         DeFi协议
┌───────────────────┐                   ┌─────────────────────┐
│                   │  12,500 SOL       │                     │
│     Binance       ├───────────────────► Marinade Finance    │
│                   │                   │                     │
└───────────────────┘                   └─────────────────────┘
                                                 │
┌───────────────────┐                            │ 9,300 SOL
│                   │  7,800 SOL         ┌───────▼─────────────┐
│     Coinbase      ├────────────────────►                     │
│                   │                    │     Orca Pools      │
└───────────────────┘                    │                     │
                                         └─────────────────────┘
┌───────────────────┐                            ▲
│                   │  15,200 SOL                │
│      Kraken       ├────────────────────────────┘
│                   │
└───────────────────┘

API密钥获取

以下是获取所需API密钥的方法:

项目结构

项目结构如下:

  • src/:MCP服务器的源代码
    • index.ts:服务器的主要入口点
    • tools/:各种功能工具的实现
    • utils/:实用函数和辅助工具
    • types/:TypeScript类型定义
  • build/:编译后的JavaScript代码(运行npm run build后生成)
  • .env:API密钥的环境变量
  • claude_desktop_config.json:Claude Desktop的配置

限制

  • 免费层级API密钥有速率限制,可能会影响功能
  • 一些工具在没有高级API访问的情况下可能会减少能力
  • 当前实现使用了一些API的模拟插件
  • 不支持交易执行——服务器仅读取以确保安全

故障排除

无法找到模块错误

如果您在Claude Desktop中遇到“无法找到模块”错误,请确保:

  • claude_desktop_config.json中指向您的index.js文件的路径正确
  • args数组中包含--input-type=module标志
  • 您已使用npm run build重新构建了项目
  • 您已完全重启了Claude Desktop

API密钥问题

如果工具因API错误而失败:

  • 验证您的API密钥是否正确设置在.envclaude_desktop_config.json
  • 检查免费层级API的速率限制
  • 确保大小写正确(特别是对于BirdEye API密钥)

许可

MIT

致谢

本项目使用了: