使用说明

项目简介

本项目是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在为LLM智能体提供通过 Twilio API 处理语音通话中安全支付的能力。它允许智能体在与客户的语音通话过程中,安全地采集信用卡信息、进行支付令牌化,并完成支付流程。通过 MCP 协议,该服务器能够无缝集成到支持 MCP 协议的 LLM 客户端,例如 Claude Desktop,极大地简化了智能体进行支付相关操作的流程。

主要功能点

  • 安全支付处理: 通过 Twilio API 在语音通话中安全处理支付。
  • 信用卡信息采集: 支持采集信用卡号、安全码和有效期。
  • 支付信息令牌化: 将支付信息令牌化,符合 PCI 合规性要求。
  • 异步回调: 通过 MCP 资源实现异步回调处理。
  • 情境化 Prompt: 提供支付流程每一步骤的情境化 Prompt 指导 LLM。
  • 错误处理与重试: 支持支付信息重新输入和错误处理机制。
  • MCP 协议集成: 与 MCP 客户端(如 Claude Desktop)无缝集成,自动注册工具、资源和 Prompt。

安装步骤

  1. 安装 Node.js: 确保你的环境中安装了 Node.js 18 或更高版本。

  2. 安装 npm 包: 可以选择全局安装或直接使用 'npx' 运行。

    • 全局安装 (推荐):

      npm install -g twilio-agent-payments-mcp-server
    • 使用 npx 直接运行:

      npx twilio-agent-payments-mcp-server <accountSid> <apiKey> <apiSecret>
  3. 配置 Twilio API 凭据: 需要提供你的 Twilio Account SID, API Key 和 API Secret。这些凭据通过命令行参数传递。

服务器配置

MCP 服务器需要配置启动命令及其参数才能被 MCP 客户端(如 Claude Desktop)调用。以下是配置信息,请根据你的实际使用情况进行调整。

Claude Desktop 配置示例 (claude_desktop_config.json):

{
  "mcpServers": {
    "twilio-agent-payments": {
      "command": "npx",  // 或者使用全局安装的命令 "twilio-agent-payments-mcp-server"
      "args": [
        "-y",
        "twilio-agent-payments-mcp-server", // 如果是全局安装,则替换为 "twilio-agent-payments-mcp-server"
        "your_account_sid_here",      // 替换为你的 Twilio Account SID (以 AC 开头)
        "your_api_key_here",         // 替换为你的 Twilio API Key (以 SK 开头)
        "your_api_secret_here"      // 替换为你的 Twilio API Secret
      ],
      "env": {
        "TOKEN_TYPE": "reusable",       // 支付令牌类型,例如 'reusable' 或 'one-time'
        "CURRENCY": "USD",              // 支付货币,例如 'USD', 'EUR'
        "PAYMENT_CONNECTOR": "your_connector_name", // Twilio 支付连接器名称
        "NGROK_AUTH_TOKEN": "your_ngrok_auth_token_here", // Ngrok 认证令牌,用于回调处理 (必需)
        "NGROK_CUSTOM_DOMAIN": "your_custom_domain_here"  // Ngrok 自定义域名 (可选)
      }
    }
  }
}

配置参数说明:

  • command: 启动 MCP 服务器的命令,通常为 'npx' 或 'twilio-agent-payments-mcp-server' (全局安装时)。
  • args: 传递给启动命令的参数,包括:
    • '-y' (可选): 'npx' 参数,自动确认安装。
    • 'twilio-agent-payments-mcp-server': MCP 服务器 npm 包名称或全局安装的命令名。
    • 'your_account_sid_here', 'your_api_key_here', 'your_api_secret_here': 你的 Twilio API 凭据,请替换为你的实际值
  • env: 环境变量配置,包括:
    • 'TOKEN_TYPE', 'CURRENCY', 'PAYMENT_CONNECTOR': 支付相关的配置,请根据你的 Twilio 配置进行设置
    • 'NGROK_AUTH_TOKEN': 必需,用于 Ngrok 建立隧道接收 Twilio 回调。
    • 'NGROK_CUSTOM_DOMAIN': 可选,使用自定义 Ngrok 域名。

注意: Twilio API 凭据 (accountSid, apiKey, apiSecret) 通过命令行参数传递,而不是环境变量。

基本使用方法

  1. 启动 MCP 服务器: 根据安装步骤和配置信息启动 MCP 服务器。
  2. 配置 MCP 客户端: 在你的 MCP 客户端 (如 Claude Desktop) 中配置连接到该服务器。
  3. 在 LLM 中使用: 在你的 LLM 应用中,你可以指示 LLM 使用 "Twilio Agent Payments MCP server" 来处理支付。服务器会自动提供工具、资源和 Prompt,引导 LLM 完成支付流程。

LLM 系统 Prompt 示例:

你拥有一个 Twilio Agent Payments MCP 服务器,可以帮助处理语音通话中的安全支付。当客户想要付款时,你可以使用此服务器提供的工具安全地捕获付款信息,同时保持 PCI 合规性。服务器将在每个步骤通过情境化的 Prompt 指导你完成支付流程。

可用工具 (Tools)

  • 'startPaymentCapture': 开始新的支付会话。
  • 'captureCardNumber': 开始采集信用卡号。
  • 'captureSecurityCode': 开始采集信用卡安全码。
  • 'captureExpirationDate': 开始采集信用卡有效期。
  • 'completePaymentCapture': 完成支付会话。

可用资源 (Resources)

  • 'payment://{callSid}/{paymentSid}/status': 获取支付会话的当前状态。

MCP Prompts

服务器提供一系列 Prompt,在支付流程的每个阶段指导 LLM 操作,例如 'StartCapturePrompt', 'CardNumberPrompt', 'SecurityCodePrompt', 'ExpirationDatePrompt', 'FinishCapturePrompt', 'CompletionPrompt', 'ErrorPrompt'。

信息

分类

商业系统