使用说明

项目简介

本项目是一个基于 Agent-to-Agent (A2A) 协议构建的代理伙伴服务器,它实现了类似于 Model Context Protocol (MCP) 的功能。该服务器允许智能代理注册和使用工具,接收和管理来自客户端的任务请求,并提供任务状态更新和推送通知等服务,旨在构建一个支持多智能体协作的应用框架。

主要功能点

  • 工具注册与管理: 允许代理注册和发布自身提供的功能(工具),供其他代理或客户端调用。
  • 任务接收与管理: 接收客户端发送的任务请求,进行任务的创建、执行、状态跟踪和管理。
  • 任务状态更新: 实时更新任务的执行状态,例如:已提交、工作中、完成、失败等。
  • 流式任务处理: 支持对长时间运行的任务进行流式响应,逐步返回任务执行结果。
  • 推送通知: 支持将任务状态变化以推送通知的方式发送给客户端。
  • JSON-RPC 通信: 使用标准的 JSON-RPC 协议与客户端进行通信,保证了协议的通用性和易用性。

安装步骤

  1. 安装依赖: 在仓库根目录下,打开终端并执行以下命令安装项目依赖:
    pip install -r requirements.txt

服务器配置

MCP 客户端需要配置 MCP 服务器的连接信息,以下是根据仓库信息生成的 JSON 格式配置,客户端根据此配置连接到 A2A 代理伙伴服务器。

{
  "serverName": "A2AAgentPartner",
  "command": "python",
  "args": ["agentpartner.py", "--host", "localhost", "--port", "8000"],
  // 服务器启动命令,使用 python 解释器运行 agentpartner.py 脚本
  // --host 参数指定服务器监听的主机地址,这里设置为 localhost
  // --port 参数指定服务器监听的端口号,这里设置为 8000
  "transport": "http-json",
  // 使用 HTTP JSON-RPC 协议进行通信
  "url": "http://localhost:8000/"
  // MCP 服务器的根 URL 地址
}

基本使用方法

  1. 启动服务器: 在终端中,导航到仓库根目录,并执行以下命令启动 A2A 代理伙伴服务器:

    python agentpartner.py --host localhost --port 8000

    或者直接运行:

    python agentpartner.py

    服务器默认监听 'localhost:8000'。

  2. 客户端交互: 使用 MCP 客户端(例如 'google_host_agent.py' 或 'host_agent.py' 示例代码)配置上述服务器连接信息,即可与 A2A 代理伙伴服务器进行交互,发送任务请求并接收响应。客户端可以利用服务器提供的工具来完成特定的任务,例如货币汇率查询等。

信息

分类

AI与计算