Square API MCP Server

本项目是一个基于 Model Context Protocol (MCP) 的服务器,旨在为 LLM 应用提供访问 Square API 功能的接口。通过此服务器,LLM 客户端可以调用 Square API 的各种功能,例如处理支付、管理订单、操作商品目录等。

主要功能点:

  • Square API 功能集成: 提供对 Square API 中 Payments, Terminal, Orders, Catalog, Inventory, Subscriptions, Invoices, Team, Customers, Loyalty, Bookings, Business 等多个模块的访问。
  • 工具 (Tools) 注册: 将 Square API 的各项操作封装为 MCP 工具,方便 LLM 客户端调用。
  • 基于 FastMCP 框架: 使用 FastMCP 框架构建,保证了 MCP 协议的实现和服务器的稳定性。

安装步骤:

  1. 安装依赖:
    uv sync
  2. 设置环境变量:
    • 必须设置 'SQUARE_ACCESS_TOKEN' 环境变量为您的 Square API 访问令牌。
    • 可选设置 'SQUARE_ENVIRONMENT' 环境变量,指定 Square API 环境,默认为 'sandbox' (沙箱环境),可设置为 'production' (生产环境)。
    export SQUARE_ACCESS_TOKEN=your_access_token_here
    export SQUARE_ENVIRONMENT=sandbox  # 可选,默认为 sandbox
  3. 运行服务器:
    uv pip install .
    square-mcp

服务器配置 (JSON):

以下 JSON 配置信息用于 MCP 客户端连接 Square API MCP Server。请注意配置环境变量 'SQUARE_ACCESS_TOKEN' 和 'SQUARE_ENVIRONMENT'。

{
  "server name": "square",
  "command": "square-mcp",
  "args": []
}

基本使用方法:

  1. 启动 Square API MCP Server。
  2. 在 LLM 客户端中,配置上述 JSON 信息以连接到 MCP 服务器。
  3. 使用 MCP 客户端向服务器发送 JSON-RPC 请求,调用预定义的工具 (例如 'payments', 'terminal', 'orders' 等) 及其相应的操作 (例如 'list_payments', 'create_terminal_checkout', 'create_order' 等)。
  4. 请求参数需要符合 Square API 的要求。具体的工具和操作参数请参考代码注释或 Square API 文档。

例如,使用 MCP 客户端调用 'payments' 工具的 'list_payments' 操作,可以获取支付列表。

{
  "jsonrpc": "2.0",
  "method": "call",
  "params": {
    "tool_name": "payments",
    "operation": "list_payments",
    "parameters": {
      "begin_time": "2023-01-01T00:00:00Z",
      "end_time": "2023-12-31T23:59:59Z"
      // ... 更多 list_payments 的参数
    }
  },
  "id": "123"
}

请参考 Square API 文档了解更多关于可用操作和参数的详细信息。

信息

分类

商业系统