项目简介

AutoGen MCP Server 是一个基于 Model Context Protocol (MCP) 标准构建的后端服务器,它专注于将 Microsoft AutoGen 框架的能力以标准化的方式提供给 LLM 客户端。通过该服务器,您可以创建、配置和管理 AI 智能体,并进行多智能体对话,实现复杂的自然语言交互和协作任务。

主要功能点

  • 智能体管理: 支持创建和管理多种类型的 AutoGen 智能体,包括 AssistantAgent 和 UserProxyAgent。您可以自定义智能体的角色设定 (system_message) 和配置参数。
  • 多智能体对话: 支持一对一和多智能体群聊模式。您可以指定参与对话的智能体,并设定初始消息,服务器将负责协调智能体之间的对话流程。
  • 灵活的配置: 允许通过配置文件 (config.json) 和环境变量 (.env) 定制服务器行为,包括 LLM 模型配置 (如 OpenAI API 密钥、模型选择、温度参数等) 和代码执行环境设置。
  • 标准 MCP 接口: 遵循 Model Context Protocol 规范,通过 JSON-RPC 协议与客户端通信,提供标准化的工具调用接口,方便集成到各种 MCP 客户端应用中。

安装步骤

  1. 克隆仓库

    git clone https://github.com/DynamicEndpoints/Autogen_MCP.git
    cd Autogen_MCP
  2. 安装依赖

    确保您已安装 Python 和 Node.js 环境。然后,分别安装 Python 和 Node.js 依赖:

    pip install -e .  # 安装 Python 依赖
    cd src
    npm install      # 安装 Node.js 依赖 (如果需要,根据实际情况安装 ts-node: npm install -g ts-node)
    cd ..
  3. 配置环境变量

    复制 '.env.example' 文件并重命名为 '.env',根据需要配置环境变量,例如 'OPENAI_API_KEY' 和 'AUTOGEN_MCP_CONFIG'(指向 'config.json' 文件的路径)。

    cp .env.example .env
    # 编辑 .env 文件,设置 API 密钥等
  4. 配置服务器

    复制 'config.json.example' 文件并重命名为 'config.json',根据需要配置服务器设置,例如 LLM 模型配置和代码执行配置。

    cp config.json.example config.json
    # 编辑 config.json 文件,配置 LLM 和代码执行参数

服务器配置

以下是 MCP 客户端连接 AutoGen MCP Server 时需要配置的服务器信息 (JSON 格式):

{
  "serverName": "autogen-mcp-server",
  "command": "node",
  "args": ["src/index.ts"],
  "transport": "stdio"
}

配置参数说明:

  • 'serverName': 服务器名称,可以自定义,用于在 MCP 客户端中标识该服务器。
  • 'command': 启动服务器的命令,这里使用 'node' (假设您已安装 Node.js 并将 'node' 命令添加到系统 PATH 环境变量中)。
  • 'args': 传递给启动命令的参数,'["src/index.ts"]' 表示执行 'src' 目录下的 'index.ts' 文件作为服务器入口点。(请确保在 'Autogen_MCP' 仓库根目录下执行此命令,或者根据实际 'index.ts' 的路径进行调整)
  • 'transport': 传输协议,这里使用 'stdio' (标准输入输出)。

注意: 如果您的 Node.js 环境配置或 'ts-node' 环境与上述配置不同,请根据实际情况调整 'command' 和 'args' 参数。例如,如果您使用 'ts-node' 直接运行 TypeScript 代码,可能需要将 'command' 设置为 'ts-node',并相应调整 'args'。 建议在 'Autogen_MCP' 仓库根目录下启动 MCP 服务器。

基本使用方法

  1. 启动服务器

    在 'Autogen_MCP' 仓库根目录下,打开终端并执行以下命令启动服务器:

    node src/index.ts

    服务器成功启动后,您应该能在终端看到类似 'AutoGen MCP server running on stdio' 的信息。

  2. 使用 MCP 客户端

    配置您的 MCP 客户端,使其连接到上述配置的 AutoGen MCP Server。客户端通过发送 JSON-RPC 请求与服务器交互。

    常用操作示例 (MCP 请求格式):

    • 创建智能体 (create_agent)

      {
        "jsonrpc": "2.0",
        "method": "call_tool",
        "params": {
          "name": "create_agent",
          "arguments": {
            "name": "tech_lead",
            "type": "assistant",
            "system_message": "You are a technical lead with expertise in software architecture and design patterns."
          }
        },
        "id": "1"
      }
    • 一对一聊天 (execute_chat)

      {
        "jsonrpc": "2.0",
        "method": "call_tool",
        "params": {
          "name": "execute_chat",
          "arguments": {
            "initiator": "agent1",
            "responder": "agent2",
            "message": "Let's discuss the system architecture."
          }
        },
        "id": "2"
      }
    • 群聊 (execute_group_chat)

      {
        "jsonrpc": "2.0",
        "method": "call_tool",
        "params": {
          "name": "execute_group_chat",
          "arguments": {
            "agents": ["agent1", "agent2", "agent3"],
            "message": "Let's review the proposed solution."
          }
        },
        "id": "3"
      }

    请参考仓库的 README.md 文件和代码,了解更多可用的操作和参数详情。

信息

分类

AI与计算