使用说明

项目简介

Agent Construct 是一个 MCP 服务器,它遵循 Model Context Protocol 规范,为 AI 模型提供工具和数据的统一访问接口。该项目旨在简化 AI 应用访问工具和数据的流程,提供一个标准化的、可扩展的上下文服务框架。

主要功能点

  • MCP 协议兼容: 完全实现了 Model Context Protocol 规范,确保与 MCP 客户端的无缝对接。
  • 动态工具管理: 支持动态注册和发现工具,方便扩展服务器的功能。
  • 标准化通信: 采用 MCP 标准的 JSON-RPC over SSE 协议进行通信,保证客户端和服务端的高效稳定交互。
  • 工具执行: 允许客户端调用服务器注册的工具,执行外部功能,例如网页搜索、数据查询等。
  • 上下文管理: 服务器端负责管理和维护上下文信息,为 AI 模型提供必要的运行环境。
  • 可扩展架构: 基于 FastAPI 构建,采用模块化设计,易于添加新的工具和功能。
  • 开发友好: 提供工具装饰器、日志记录、配置管理和测试框架,方便开发者快速构建和维护工具。

安装步骤

  1. 克隆仓库
    git clone https://github.com/batteryshark/agent_construct.git
    cd agent_construct
  2. 安装依赖
    pip install -r requirements.txt
  3. 配置环境变量 在项目根目录下创建 '.env' 文件,并根据需要配置以下环境变量:
    SERVER_HOST=localhost  # 服务器Host地址,默认为 localhost
    SERVER_PORT=8000     # 服务器端口,默认为 8000
    MCP_VERSION=1.0       # MCP 协议版本,默认为 1.0
    TOOL_DISCOVERY_ENABLED=true # 是否启用工具发现,默认为 true
    ENABLE_AUTH=false     # 是否启用认证,默认为 false (生产环境建议启用)
  4. 运行服务器
    python -m mcp_server
    服务器默认监听 'http://localhost:8000/sse' 地址,等待 MCP 客户端连接。

服务器配置

MCP 客户端需要配置以下 JSON 格式信息以连接 Agent Construct 服务器:

{
  "serverName": "agent_construct",  // MCP 服务器名称,可以自定义
  "command": "python",             // 启动服务器的命令
  "args": ["-m", "mcp_server"]     // 启动服务器命令的参数,这里表示执行 mcp_server 模块
}

基本使用方法

  1. 启动 Agent Construct 服务器:按照安装步骤中的说明启动服务器。
  2. 配置 MCP 客户端:在 MCP 客户端中,配置上述服务器配置信息,指定连接 Agent Construct 服务器。
  3. 连接服务器:MCP 客户端根据配置信息连接到 Agent Construct 服务器。
  4. 发现工具:客户端可以调用 MCP 协议的 'list_tools' 方法,获取服务器提供的工具列表。
  5. 调用工具:客户端可以使用 MCP 协议的 'call_tool' 方法,指定工具名称和参数,调用服务器上的工具执行特定功能。
  6. 接收响应:服务器将通过 JSON-RPC 响应或 SSE 通知将工具执行结果返回给客户端。

请参考仓库中的 'tests' 目录下的示例代码 'test_mcp_client.py' 和 'test_smolagents.py',了解如何编写 MCP 客户端并与 Agent Construct 服务器进行交互。

信息

分类

AI与计算