本项目主要是Ding OTP API的TypeScript/Javascript SDK,同时也包含了一个可安装运行的Model Context Protocol (MCP) 服务器实现。该MCP服务器将SDK中提供的API方法封装成工具,使得LLM客户端能够通过标准化的MCP协议调用Ding API的功能,例如发送验证码、检查验证码等。

主要功能点:

  • 工具 (Tools): 将Ding API的 'otp' (发送/检查/重试验证码, 发送反馈, 获取状态) 和 'lookup' (号码查找) 相关操作封装为可供LLM客户端调用的工具。
  • 传输协议: 支持通过 StdIO 和 SSE 两种协议与MCP客户端通信。
  • 配置: 允许通过命令行参数配置API密钥、服务器URL、日志级别以及选择暴露的工具/Scopes。

安装步骤:

  1. 确保您的系统已安装 Node.js (版本 20 或更高)。

  2. 使用 npm, pnpm, bun 或 yarn 安装 '@ding-live/ding' 包:

    npm install @ding-live/ding
    # 或者 pnpm add @ding-live/ding
    # 或者 bun add @ding-live/ding
    # 或者 yarn add @ding-live/ding zod

服务器配置:

MCP服务器需要由MCP客户端启动和管理。典型的MCP客户端(如Anthropic Claude Desktop, Cursor等)需要一个JSON格式的配置文件来定义可用的MCP服务器。以下是一个示例配置结构,展示了如何配置客户端以启动此Ding MCP服务器:

{
  "mcpServers": {
    "Ding": { // 您可以为服务器起一个易于识别的名称
      "command": "npx", // 启动命令,使用npx执行已安装的包中的mcp命令
      "args": [ // 传递给mcp命令的参数
        "-y", "--package", "@ding-live/ding", // 确保npx使用指定包
        "--", // npx 参数结束标志
        "mcp", "start", // ding-typescript 包中的mcp启动命令
        "--api-key", "YOUR_DING_API_KEY", // 必填:您的Ding API密钥
        // 其他可选参数:
        // "--transport", "sse", // 可选:指定传输协议 (stdio 或 sse),默认为 stdio
        // "--port", "2718", // 可选:如果使用 sse 传输,指定端口
        // "--tool", "otp-create-authentication", "--tool", "otp-check", // 可选:只暴露指定的工具
        // "--log-level", "debug" // 可选:设置日志级别 (debug, warning, info, error)
        // "--server-url", "https://api.ding.live/v1" // 可选:覆盖API服务器URL
        // "--server-index", "0" // 可选:选择预定义API服务器索引
        // "--env", "VAR1=VALUE1", "--env", "VAR2=VALUE2" // 可选:传递环境变量给服务器进程
      ]
    }
    // 可以配置其他MCP服务器
    // "AnotherServer": { ... }
  }
}

基本使用方法:

在MCP客户端中完成服务器配置后,您应该能够看到名为 "Ding" 的MCP服务器及其暴露的工具(例如 'otp-create-authentication', 'otp-check', 'lookup-lookup' 等)。

要使用某个功能,例如发送验证码,您可以通过LLM客户端的界面或命令调用对应的工具,并根据工具的描述提供必要的参数(例如 'phoneNumber', 'customerUuid', 'locale' 等)。MCP服务器将接收到工具调用请求,使用您配置的API密钥调用实际的Ding API,并将API响应返回给LLM客户端。

信息

分类

AI与计算