项目简介

VISO TRUST MCP 服务端是一个旨在将 VISO TRUST 平台的丰富 API 功能通过 Model Context Protocol (MCP) 暴露给大型语言模型(LLM)客户端的应用后端。它允许 AI 助手通过标准化的 JSON-RPC 协议调用 VISO TRUST API,实现对评估、审计日志、业务案例、数据类型、智能查询响应、关系管理及 Webhook 等数据的访问和操作。该服务端作为 AI 助手与 VISO TRUST 平台之间的桥梁,使得 AI 能够更好地理解和利用 VISO TRUST 的上下文信息和功能。

主要功能点

  • API 能力集成: 将 VISO TRUST 的多项核心 API(如评估管理、关系维护、审计日志查询等)封装为可供 LLM 调用的工具。
  • 工具调用: 支持 AI 助手直接调用这些封装好的工具,以获取或操作 VISO TRUST 平台上的数据。例如,可以查询所有关系,创建新的评估,或询问关于AI信任中心的问题。
  • 灵活的部署: 支持本地 Java 运行或通过 Docker 容器化部署,简化环境配置,适应不同用户的需求。
  • 多种通信协议: 支持标准 I/O (stdio) 和 Server-Sent Events (SSE) 等传输协议,可以根据客户端连接需求选择合适的通信方式。
  • 安全性: 通过 JWT 认证机制确保与 VISO TRUST API 的安全通信,保护敏感数据。

安装步骤

  1. 准备环境:

    • 确保您的系统已安装 Java 21 或更高版本,以及 Gradle 构建工具。
    • 如果选择 Docker 容器化部署,请确保已安装 Docker。
    • 从 VISO TRUST 平台获取您的 API 令牌。
  2. 构建项目:

    • 克隆仓库:'git clone https://github.com/visotrust/viso-mcp-server.git'
    • 进入项目目录:'cd viso-mcp-server'
    • 构建 JAR 包:'./gradlew bootJar'
    • (可选)构建 Docker 镜像:'docker build -t viso-mcp-server .'
  3. 运行服务器:

    • 使用 Java 直接运行:

      # 默认模式(使用标准I/O)
      java -jar build/libs/viso-mcp-server-<version>.jar --visotrust.api.token=<your-api-token>
      
      # 远程模式(使用Server-Sent Events)
      java -jar build/libs/viso-mcp-server-<version>.jar --spring.profiles.active=remote --visotrust.api.token=<your-api-token>

      请将 '<version>' 替换为实际版本号(例如 '1.0.0')。

    • 使用 Docker 容器运行:

      # 默认模式(使用标准I/O)
      docker run -i --rm -e VISOTRUST_API_TOKEN=<your-api-token> viso-mcp-server
      
      # 远程模式(使用Server-Sent Events)
      docker run -i --rm -e VISOTRUST_API_TOKEN=<your-api-token> -e SPRING_PROFILES_ACTIVE=remote viso-mcp-server

MCP 客户端配置示例

为了让您的 MCP 客户端(例如 VS Code 的 AI 助手或 Claude Desktop)能够连接并使用此服务器,您需要提供相应的配置。以下是两种常见配置方式的 JSON 示例,您需要将这些配置添加到您的 MCP 客户端的用户或工作区设置中。

  • Docker 方式 (推荐):

    {
        "mcpServers": {
            "viso-mcp": {
                "command": "docker",
                "args": [
                    "run",
                    "-i",
                    "--rm",
                    "-e", "VISOTRUST_API_TOKEN=${input:viso_token}",
                    "-e", "VISOTRUST_API_BASEURL=${input:viso_baseurl}",
                    "visotrustai/viso-mcp-server:latest"
                ],
                "env": {
                    "VISOTRUST_API_BASEURL": "${input:viso_baseurl}",
                    "VISOTRUST_API_TOKEN": "${input:viso_token}"
                },
                "inputs": [
                    {
                        "type": "promptString",
                        "id": "viso_baseurl",
                        "description": "VISO TRUST API Base URL",
                        "default": "https://app.visotrust.com"
                    },
                    {
                        "type": "promptString",
                        "id": "viso_token",
                        "description": "VISO TRUST API Token",
                        "password": true
                    }
                ]
            }
        }
    }
    • viso-mcp: 您为该 MCP 服务器实例定义的名称。
    • command: 启动服务器的命令,这里是 'docker'。
    • args: 传递给 'docker' 命令的参数,包括:
      • 'run -i --rm': 运行 Docker 容器并移除。
      • '-e VISOTRUST_API_TOKEN=${input:viso_token}': 将 API 令牌作为环境变量传递给容器。
      • '-e VISOTRUST_API_BASEURL=${input:viso_baseurl}': 将 API 基础 URL 作为环境变量传递。
      • 'visotrustai/viso-mcp-server:latest': 使用最新的 VISO TRUST MCP 服务器 Docker 镜像。
    • env: 定义环境变量,其值将由 'inputs' 动态提供。
    • inputs: 定义客户端在连接服务器时需要用户输入的参数,'viso_baseurl' 和 'viso_token' 将被用于填充 'args' 和 'env'。
  • Java JAR 包方式:

    {
        "mcpServers": {
            "viso-mcp": {
                "command": "java",
                "args": [
                    "-jar",
                    "path/to/viso-mcp-server-<version>.jar",
                    "--visotrust.api.token=${input:viso_token}",
                    "--visotrust.api.base-url=${input:viso_baseurl}"
                ],
                "env": {
                    "VISOTRUST_API_BASEURL": "${input:viso_baseurl}",
                    "VISOTRUST_API_TOKEN": "${input:viso_token}"
                },
                "inputs": [
                    {
                        "type": "promptString",
                        "id": "viso_baseurl",
                        "description": "VISO TRUST API Base URL",
                        "default": "https://app.visotrust.com"
                    },
                    {
                        "type": "promptString",
                        "id": "viso_token",
                        "description": "VISO TRUST API Token",
                        "password": true
                    }
                ]
            }
        }
    }
    • command: 启动服务器的命令,这里是 'java'。
    • args: 传递给 'java' 命令的参数,包括:
      • '-jar path/to/viso-mcp-server-<version>.jar': 指定要运行的 JAR 包路径和文件名。请将 'path/to/viso-mcp-server-<version>.jar' 替换为 MCP 服务器 JAR 文件的实际路径和版本号。
      • '--visotrust.api.token=${input:viso_token}': 将 API 令牌作为启动参数传递。
      • '--visotrust.api.base-url=${input:viso_baseurl}': 将 API 基础 URL 作为启动参数传递。
    • envinputs: 功能与 Docker 方式相同。

基本使用方法

一旦 MCP 客户端配置并成功连接到 VISO TRUST MCP 服务端,AI 助手将能够识别并调用服务端提供的各种工具。您可以通过自然语言向 AI 助手提问或发出指令,例如:

  • 获取评估信息: "获取 ID 为 '12345' 的评估详细信息。"
  • 创建评估: "开始一个针对关系 ID '67890' 的新评估,接收人邮箱是 '[email protected]',姓名为 'John Doe'。"
  • 查询审计日志: "查询从 '2023-01-01' 到 '2023-01-31' 期间的用户审计日志事件。"
  • 获取关系列表: "获取所有第三方的关系和它们的评估详情。"
  • 提问关于信任中心: "AI 信任中心是如何处理数据隐私的?"

AI 助手会根据您的请求,自动选择并执行 MCP 服务器提供的相应工具,并将 VISO TRUST API 的结果返回给您。

信息

分类

AI与计算