交易模拟器MCP服务器

@recallnet/trading-simulator-mcp
0 Stars 506 次浏览 recallnet 更新于 2026-08-23

一个MCP服务器,它使像Claude这样的AI模型能够与交易模拟器API互动,以检查余额、查看价格和执行带有自动链检测的交易。

该服务暂未提供标准配置,请参考 README 手动接入

服务介绍

交易模拟器 MCP 服务器

一个用于与交易模拟器 API 交互的 MCP(模型上下文协议)服务器。此服务器使像 Claude 这样的 AI 模型能够通过与 MCP 兼容的接口查询余额、查询价格和执行交易。

功能

此 MCP 服务器通过结构化的工具调用提供对交易模拟器操作的访问:

  • 账户操作

    • 获取代币余额
    • 获取投资组合信息
    • 查看交易历史
  • 价格操作

    • 获取代币价格
    • 获取代币信息
    • 查看价格历史
  • 交易操作

    • 在代币之间执行交易
    • 获取潜在交易的报价
    • 智能代币检测,自动处理链参数
  • 竞赛操作

    • 检查竞赛状态
    • 查看排行榜排名

智能代币处理

交易模拟器 MCP 包含一个智能代币检测系统,简化了交易执行:

  • 自动链检测:在使用常见代币执行交易时,系统会自动识别适当的区块链(EVM/SVM)和特定链(ETH, BASE 等)参数。

  • 同链优化:当在同一链上交易代币时,系统会自动配置同链交易参数。

  • 跨链回退:如果由于代币位于不同链而导致同链交易失败,系统将优雅地回退到显式参数或服务器端检测。

  • 常见代币支持:系统包含一个不断增长的常见代币列表及其地址和链信息。

认证

交易模拟器 API 使用 Bearer 令牌认证,需要在 Authorization 头中传递一个 API 密钥作为 Bearer 令牌。

示例:

Authorization: Bearer your_api_key_here

设置

  1. 克隆仓库

    git clone https://github.com/yourusername/trading-simulator-mcp.git
    cd trading-simulator-mcp
    
  2. 安装依赖

    npm install
    
  3. 配置您的 API 凭证(请参阅下面的配置部分)

  4. 构建项目

    npm run build
    
  5. 启动服务器

    npm run start
    

配置

您有两种方法来配置交易模拟器 MCP 服务器:

方法 1:直接在 Cursor/Claude 中配置(推荐)

推荐的方法是在您的 Cursor 或 Claude Desktop 配置中直接提供环境变量。这种方法更安全,并且不需要 .env 文件。

  • 当通过配置提供这些环境变量时,服务器将自动使用它们。
  • 请参阅下面的“添加到 Cursor”和“添加到 Claude Desktop”部分以获取具体的设置说明。

方法 2:使用 .env 文件(备用)

如果您更喜欢使用 .env 文件,或者直接从命令行运行服务器:

  1. 创建一个包含您的 API 凭证的 .env 文件

    cp .env.example .env
    
  2. 使用您的 API 密钥编辑 .env 文件

    TRADING_SIM_API_KEY=your_api_key_here
    TRADING_SIM_API_URL=http://localhost:3000
    DEBUG=false
    
  3. 通过设置受限权限来保护您的 .env 文件

    chmod 600 .env
    

环境变量优先级

交易模拟器 MCP 服务器使用以下环境变量优先级顺序:

  1. 直接从 JSON 配置提供的环境变量
  2. 来自 .env 文件的环境变量(如果存在且第1项不可用)
  3. 可选变量的默认值(例如,API_URL 默认为 "http://localhost:3000")

添加到 Cursor

要将此 MCP 服务器添加到 Cursor 中:

  1. 先使用 npm run build 构建项目
  2. 在 Cursor 中,转到 设置 > MCP 服务器
  3. 点击“添加服务器”
  4. 使用以下设置配置服务器:
    • 名称Trading Simulator MCP(或您喜欢的任何名称)
    • 类型command
    • 命令node
    • 参数/path/to/trading-sim-mcp/dist/index.js(使用完整路径)
    • 环境变量
      • TRADING_SIM_API_KEY:您的 API 密钥
      • TRADING_SIM_API_URL:API 服务器 URL(可选)
      • DEBUGtrue(可选,用于额外的日志记录)
  5. 点击“保存”

在 Cursor 配置中使用环境变量

为了更安全,您可以通过在主目录下的 .cursor/mcp.json 文件中配置 Cursor:

{
  "mcpServers": {
    "trading-simulator-mcp": {
      "name": "Trading Simulator MCP",
      "type": "command",
      "command": "node",
      "args": ["/path/to/trading-simulator-mcp/dist/index.js"],
      "env": {
        "TRADING_SIM_API_KEY": "your_api_key_here",
        "TRADING_SIM_API_URL": "http://localhost:3000",
        "DEBUG": "true"
      }
    }
  }
}

这种方法消除了对 .env 文件的需求。

添加到 Claude Desktop

要将此 MCP 服务器添加到 Claude Desktop:

  1. 先使用 npm run build 构建项目

  2. 找到您的 Claude Desktop 配置文件:

    • 在 macOS 上:~/Library/Application Support/Claude/claude_desktop_config.json
    • 在 Windows 上:%APPDATA%\Claude\claude_desktop_config.json
    • 在 Linux 上:~/.config/Claude/claude_desktop_config.json
  3. 创建或编辑 claude_desktop_config.json 文件,内容如下:

    {
      "mcpServers": {
        "trading-simulator-mcp": {
          "name": "Trading Simulator MCP",
          "type": "command",
          "command": "node",
          "args": [
            "/path/to/trading-simulator-mcp/dist/index.js"
          ],
          "env": {
            "TRADING_SIM_API_KEY": "your_api_key_here",
            "TRADING_SIM_API_URL": "http://localhost:3000",
            "DEBUG": "true"
          }
        }
      }
    }
    
  4. /path/to/trading-simulator-mcp/dist/index.js 替换为您的编译后的服务器文件的完整路径

    • 示例:/Users/username/trading-simulator-mcp/dist/index.js
  5. 保存配置文件并重启 Claude Desktop

如果您遇到 Claude Desktop 的问题,请检查日志文件:

  • 在 macOS 上:~/Library/Logs/Claude/
  • 在 Windows 上:%USERPROFILE%\AppData\Local\Claude\Logs\
  • 在 Linux 上:~/.local/share/Claude/logs/

重要开发注意事项

在开发MCP服务器时,请使用console.error()而不是console.log()进行所有调试和日志记录。Claude桌面应用程序和Cursor通过stdout与服务器通信,因此任何console.log()语句都会干扰这种通信并导致JSON解析错误。

MCP 工具

服务器提供了以下MCP工具:

账户工具

  • get_balances - 获取您的团队的代币余额
  • get_portfolio - 获取您的团队的投资组合信息
  • get_trades - 获取您的团队的交易历史

价格工具

  • get_price - 获取代币的当前价格
  • get_token_info - 获取关于代币的详细信息
  • get_price_history - 获取代币的历史价格数据

交易工具

  • execute_trade - 在两个代币之间执行交易
    • 自动检测并为常见代币分配链参数
    • 支持无需明确指定链参数的同链交易
    • 对于跨链场景优雅地回退
  • get_quote - 获取潜在交易的报价

竞赛工具

  • get_competition_status - 获取当前竞赛的状态
  • get_leaderboard - 获取竞赛排行榜

常见代币

系统包含一个COMMON_TOKENS结构,该结构将代币地址映射到各自的链上。这使得在执行交易时能够自动检测链参数。

当前常见的代币包括:

Solana (SVM)

  • USDC: EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v
  • SOL: So11111111111111111111111111111111111111112

Ethereum (EVM)

  • USDC: 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48
  • WETH: 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2

Base (EVM)

  • USDC: 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913
  • ETH: 0x4200000000000000000000000000000000000006

要添加更多常见代币,您可以在types.ts文件中扩展COMMON_TOKENS对象。

安全注意事项

  • 您的API密钥应保持安全,切勿在客户端代码中共享或暴露
  • 在生产环境中连接API时始终使用HTTPS
  • API密钥具有执行交易的全部权限,因此请相应地保护它

相关 MCP 服务