使用说明
项目简介
Agent Construct 是一个 MCP 服务器,它遵循 Model Context Protocol 规范,为 AI 模型提供工具和数据的统一访问接口。该项目旨在简化 AI 应用访问工具和数据的流程,提供一个标准化的、可扩展的上下文服务框架。
主要功能点
- MCP 协议兼容: 完全实现了 Model Context Protocol 规范,确保与 MCP 客户端的无缝对接。
- 动态工具管理: 支持动态注册和发现工具,方便扩展服务器的功能。
- 标准化通信: 采用 MCP 标准的 JSON-RPC over SSE 协议进行通信,保证客户端和服务端的高效稳定交互。
- 工具执行: 允许客户端调用服务器注册的工具,执行外部功能,例如网页搜索、数据查询等。
- 上下文管理: 服务器端负责管理和维护上下文信息,为 AI 模型提供必要的运行环境。
- 可扩展架构: 基于 FastAPI 构建,采用模块化设计,易于添加新的工具和功能。
- 开发友好: 提供工具装饰器、日志记录、配置管理和测试框架,方便开发者快速构建和维护工具。
安装步骤
- 克隆仓库
git clone https://github.com/batteryshark/agent_construct.git cd agent_construct - 安装依赖
pip install -r requirements.txt - 配置环境变量
在项目根目录下创建 '.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 (生产环境建议启用) - 运行服务器
服务器默认监听 'http://localhost:8000/sse' 地址,等待 MCP 客户端连接。python -m mcp_server
服务器配置
MCP 客户端需要配置以下 JSON 格式信息以连接 Agent Construct 服务器:
{ "serverName": "agent_construct", // MCP 服务器名称,可以自定义 "command": "python", // 启动服务器的命令 "args": ["-m", "mcp_server"] // 启动服务器命令的参数,这里表示执行 mcp_server 模块 }
基本使用方法
- 启动 Agent Construct 服务器:按照安装步骤中的说明启动服务器。
- 配置 MCP 客户端:在 MCP 客户端中,配置上述服务器配置信息,指定连接 Agent Construct 服务器。
- 连接服务器:MCP 客户端根据配置信息连接到 Agent Construct 服务器。
- 发现工具:客户端可以调用 MCP 协议的 'list_tools' 方法,获取服务器提供的工具列表。
- 调用工具:客户端可以使用 MCP 协议的 'call_tool' 方法,指定工具名称和参数,调用服务器上的工具执行特定功能。
- 接收响应:服务器将通过 JSON-RPC 响应或 SSE 通知将工具执行结果返回给客户端。
请参考仓库中的 'tests' 目录下的示例代码 'test_mcp_client.py' 和 'test_smolagents.py',了解如何编写 MCP 客户端并与 Agent Construct 服务器进行交互。
信息
分类
AI与计算