使用说明

项目简介

本项目展示了如何使用 Model Context Protocol (MCP) 将 Amazon Nova Act 的 Web 自动化能力以标准化的方式暴露给大型语言模型 (LLM)。通过部署此 MCP 服务器,LLM 客户端(如 Claude Desktop)可以调用 Nova Act 提供的浏览器自动化工具,实现网页浏览、数据抓取、表单填写等功能,从而扩展 LLM 在 Web 环境中的应用能力。

主要功能点

  • 标准化 LLM 集成: 通过 MCP 协议,实现与各类 LLM 客户端的标准化对接,即插即用。
  • Web 自动化能力: 集成 Amazon Nova Act,提供强大的网页自动化操作,包括页面导航、元素点击、文本输入、数据提取等。
  • 并行任务执行: 支持并行执行多个浏览器任务,提高效率,可同时处理多个网页自动化流程。
  • 数据提取与处理: 能够从网页中提取结构化和非结构化数据,并进行初步处理。
  • 会话管理: 服务器端管理浏览器会话,支持会话的启动、保持和关闭。
  • 工具注册与发现: 通过 MCP 协议声明和注册 Nova Act 提供的工具,方便 LLM 客户端发现和调用。
  • 示例客户端: 提供 Python 示例客户端,演示如何与 MCP 服务器进行交互。
  • Claude Desktop 集成: 提供与 Claude Desktop 等 MCP 客户端的集成指南。

安装步骤

  1. 克隆仓库:

    git clone https://github.com/aws-samples/sample-agents-with-nova-act-and-mcp
    cd sample-agents-with-nova-act-and-mcp
  2. 安装依赖:

    pip install -r requirements.txt
  3. 配置 Nova Act API 密钥: 获取 Nova Act API 密钥 (https://nova.amazon.com/act) 并设置为环境变量 'NOVA_ACT_API_KEY'。

    export NOVA_ACT_API_KEY="your_api_key"
  4. 配置 AWS 凭证: 确保已配置 AWS 凭证,以便访问 Amazon Bedrock 服务。参考 AWS CLI Quickstart Guide

服务器配置

MCP 客户端(例如 'mcp_examples/nova_act_mcp_client.py' 或 Claude Desktop)需要以下配置信息来连接到 Nova Act MCP 服务器。将以下 JSON 配置添加到 MCP 客户端的服务器列表中:

{
  "serverName": "nova-act-server",  // 服务器名称,可自定义
  "command": "python",             // 启动服务器的命令,这里使用 python 解释器
  "args": [                       // 启动参数
    "mcp_examples/nova_act_mcp_server.py" // MCP 服务器脚本的路径
  ],
  "env": {                         // 环境变量 (可选)
    "NOVA_ACT_API_KEY": "<your_api_key>" // (可选) 如果不在系统环境变量中设置,可以在这里配置API密钥,需要替换为你的实际API密钥
  }
}

注意:

  • 请将 '<your_api_key>' 替换为您实际的 Nova Act API 密钥。
  • 如果已经在系统环境变量中设置了 'NOVA_ACT_API_KEY',则 'env' 部分可以省略。
  • 'serverName' 可以自定义,用于在 MCP 客户端中标识该服务器连接。
  • 'command' 和 'args' 确保指向正确的 Python 解释器和 'nova_act_mcp_server.py' 脚本路径。

基本使用方法

  1. 启动 MCP 服务器: 无需手动启动服务器,MCP 客户端在连接时会自动启动 'mcp_examples/nova_act_mcp_server.py'。

  2. 运行 MCP 客户端: 使用仓库提供的示例客户端 'mcp_examples/nova_act_mcp_client.py' 连接到服务器。

    cd mcp_examples
    python nova_act_mcp_client.py nova_act_mcp_server.py

    或者,您可以配置 Claude Desktop 连接到该 MCP 服务器,具体步骤参考 Claude Desktop MCP Setup Guide

  3. 通过 LLM 客户端调用工具: 连接成功后,您可以在 LLM 客户端中(例如 Claude Desktop 或示例客户端的交互式界面)向 LLM 发送指令,LLM 将根据指令和工具描述,自动调用 Nova Act MCP 服务器提供的工具,例如 'browser_session', 'browser_action', 'execute_parallel_browser_tasks' 等,实现网页自动化操作。

    例如,在示例客户端的交互式界面中,您可以输入自然语言查询,客户端会调用 Bedrock Claude 模型理解您的意图,并利用可用的 Nova Act 工具执行相应的 Web 自动化任务。

  4. 查看结果: 工具执行结果将返回给 LLM 客户端,您可以在客户端界面查看结果,或通过 'list_results', 'get_result', 'save_results' 等工具管理和查看历史结果。

示例查询:

在 'mcp_examples/nova_act_mcp_client.py' 客户端中,您可以尝试以下查询:

  • "Search for the price of iPhone 15 on Amazon and tell me the price."
  • "Go to google.com and search for 'weather in Seattle'."
  • "Take a screenshot of the current webpage."

Claude Desktop 集成:

按照 Claude Desktop MCP Setup Guide 配置 Claude Desktop 连接到该 MCP 服务器后,您可以在 Claude Desktop 中直接使用自然语言指令,让 Claude 调用 Nova Act 的 Web 自动化能力。

信息

分类

网页与API