P

Paradex AI交易工具

@sv/mcp-paradex-py
0 Stars 430 次浏览 sv 更新于 2026-08-23

一种模型上下文协议服务器的实现,使人工智能助手能够与Paradex永续期货交易平台互动,从而获取市场数据、管理交易账户、下单和监控仓位。

MCP 服务配置

复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用

{
  "mcpServers": {
    "paradex": {
      "args": [
        "--with-editable",
        ".",
        "mcp-paradex"
      ],
      "command": "uvx",
      "env": {
        "PARADEX_ACCOUNT_PRIVATE_KEY": "your_private_key",
        "PARADEX_ENVIRONMENT": "testnet"
      }
    }
  }
}

该服务需要配置环境变量:PARADEX_ACCOUNT_PRIVATE_KEY、PARADEX_ENVIRONMENT

服务介绍

MCP Paradex 服务器

smithery 徽章

用于 Paradex 交易平台的 Model Context Protocol (MCP) 服务器实现。

概览

该项目为 AI 助手(如 Claude)与 Paradex 永续期货交易平台之间提供了桥梁。通过使用 MCP 标准,AI 助手可以:

  • 从 Paradex 获取市场数据
  • 管理交易账户和金库
  • 下单及管理订单
  • 监控仓位和余额

先决条件

  • Python 3.10+

安装

通过 Smithery 安装

要通过 Smithery 自动为 Claude Desktop 安装 mcp-paradex-py:

npx -y @smithery/cli install @sv/mcp-paradex-py --client claude

使用 pip

  1. 克隆此仓库:

    git clone https://github.com/sv/mcp-paradex-py.git
    cd mcp-paradex-py
    
  2. 创建虚拟环境:

    python -m venv .venv
    source .venv/bin/activate  # 在 Windows 上: .venv\Scripts\activate
    
  3. 安装依赖项:

    pip install -e .
    

使用 uv(更快的替代方案)

  1. 克隆此仓库:

    git clone https://github.com/sv/mcp-paradex-py.git
    cd mcp-paradex-py
    
  2. 创建虚拟环境:

    uv venv
    source .venv/bin/activate  # 在 Windows 上: .venv\Scripts\activate
    
  3. 安装依赖项:

    uv pip install -e .
    

配置

设置您的配置:

cp .env.template .env

然后编辑 .env 文件以添加您的 Paradex 凭据。

运行服务器

Docker(推荐)

docker build . -t sv/mcp-paradex-py

在 Cursor 中将 MCP 添加为命令

仅公开

docker run --rm -i sv/mcp-paradex-py

允许交易

docker run --rm -e PARADEX_ACCOUNT_PRIVATE_KEY=0xprivatekey -i sv/mcp-paradex-py

Smithery.ai 集成

此 MCP 服务器与 Smithery.ai 兼容,后者是一个发现和部署 MCP 服务器的平台。

Claude Desktop 配置

要通过 Smithery.ai 在 Claude Desktop 上使用此服务器:

  1. 打开 Claude Desktop 并从菜单中启用开发者模式
  2. 转到设置 > 开发者并点击“编辑配置”
  3. 将以下配置添加到 claude_desktop_config.json 中:
{
  "mcpServers": {
    "paradex": {
      "command": "uvx",
      "args": ["--with-editable", ".", "mcp-paradex"],
      "env": {
        "PARADEX_ENVIRONMENT": "testnet",
        "PARADEX_ACCOUNT_PRIVATE_KEY": "your_private_key"
      }
    }
  }
}
  1. your_ethereum_private_key 替换为实际的 Paradex 私钥
  2. 保存文件并重启 Claude Desktop

Smithery.ai 注册表

该服务器包含一个带有 Smithery.ai 注册表元数据的 smithery.yaml 文件。如果您想将此服务器发布到 Smithery.ai,可以使用 Smithery CLI:

# Install Smithery CLI
npm install -g @smithery/cli

# Login to Smithery
smithery login

# Publish the server
smithery publish

有关发布到 Smithery.ai 的更多信息,请参阅 Smithery 文档

可用资源和工具

资源

系统资源

  • system://status - 获取系统当前状态及 Paradex 连接信息
  • system://version - 获取关于服务器及其依赖项的详细版本信息
  • system://health - 对服务器执行基本健康检查

市场资源

  • market://public/markets - 从Paradex获取可用市场列表
  • market://public/info - 获取一般市场信息和状态

金库资源

  • vaults://list - 列出与账户关联的所有金库
  • vaults://balance - 获取特定金库的余额
  • vaults://details - 获取金库的详细信息

工具

系统工具

  • check_public_api - 不使用身份验证检查与Paradex公共API的连接
  • check_paradex_connection - 使用身份验证验证与Paradex API的连接

市场工具

  • get_market_data - 检索特定市场的详细市场数据
  • get_orderbook - 获取市场的当前订单簿
  • get_recent_trades - 检索市场的最近交易

账户工具

  • get_account_info - 获取有关已连接账户的信息
  • get_account_balance - 检索账户余额

订单工具

  • place_order - 在Paradex上下新订单
  • cancel_order - 取消现有订单
  • get_order_status - 检查订单状态

金库工具

  • create_vault - 创建一个新的金库
  • deposit_to_vault - 将资金存入金库
  • withdraw_from_vault - 从金库中提取资金

开发

项目结构

  • src/mcp_paradex/ - 主包
    • server/ - MCP服务器实现
      • server.py - FastMCP服务器配置
    • resources/ - 只读数据资源
      • system.py - 系统状态资源
      • market.py - 市场数据资源
      • vaults.py - 金库管理资源
    • tools/ - 操作的动作工具
      • system.py - 系统管理工具
      • market.py - 市场数据工具
      • account.py - 账户管理工具
      • orders.py - 订单管理工具
      • vaults.py - 金库管理工具
    • utils/ - 实用函数和辅助工具
      • config.py - 配置处理
      • paradex_client.py - Paradex API客户端

开发进度

  • 步骤 1: 创建基本项目结构

    • 设置包配置和依赖项
    • 创建初始的 FastMCP 服务器配置
    • 实现基本的系统健康检查
  • 步骤 2: 实现认证层

    • 设计安全的 API 密钥管理系统
    • 为 Paradex API 创建认证流程
  • 步骤 3: 部署带有健康检查的基本服务器

    • 实现系统状态资源
    • 创建连接验证工具
    • 添加不需要认证的公共 API 端点
  • 步骤 4: 市场数据集成

    • 实现市场数据资源
    • 创建市场数据工具
    • 添加订单簿和交易历史功能
  • 步骤 5: 账户和订单管理

    • 实现账户信息资源
    • 创建订单管理工具
    • 添加金库管理功能
  • 步骤 6: 添加 Smithery.ai 支持

    • 创建 Smithery.ai 配置文件
    • 添加 Claude Desktop 配置示例
    • 文档化 Smithery.ai 集成

代码质量工具

本项目使用了多种工具来维护代码质量:

  • Black: 代码格式化工具,强制执行一致的风格
  • Ruff: 快速的 Python 代码检查工具,结合了多个代码检查工具的功能
  • Mypy: Python 的静态类型检查器
  • Pre-commit: Git 钩子脚本,在提交前自动进行检查

设置开发环境

  1. 安装开发依赖项:

    make install-dev
    
  2. 格式化代码:

    make format
    
  3. 代码检查:

    make lint
    
  4. 类型检查:

    make typecheck
    
  5. 运行所有检查:

    make check
    
  6. 对所有文件运行 pre-commit:

    make pre-commit
    
  7. 运行测试:

    make test
    
  8. 运行带有覆盖率报告的测试:

    make test-cov
    

测试

本项目使用 pytest 进行测试。测试文件位于 tests 目录中。

要运行测试:

pytest

要运行带有覆盖率报告的测试:

pytest --cov=mcp_paradex --cov-report=html

这将在 htmlcov 目录中生成一个 HTML 覆盖率报告。

Pre-commit 钩子

Pre-commit 钩子被配置为在 git 提交时自动运行。它们包括:

  • 删除行尾空白
  • 修复文件结尾
  • YAML/TOML 语法检查
  • Black 格式化
  • Ruff 代码检查
  • Mypy 类型检查

要手动对所有文件运行所有的 pre-commit 钩子:

pre-commit run --all-files

贡献

欢迎贡献!请随时提交 Pull Request。

许可证

MIT License

相关 MCP 服务