项目简介

本项目是一个高级Python库,专注于构建和管理能够协同解决复杂任务的自治AI Agent网络。它特别设计用于集成遵循OpenAPI标准的外部API。通过提供简洁、类型安全的接口,该库简化了Agent团队的创建、配置和运行流程。此外,它还内置了对MCP (Model Context Protocol) 的支持,允许将基于API生成的Agent工具暴露为标准化的MCP服务,供大型语言模型 (LLM) 客户端调用。

主要功能点

  • API工具自动生成: 从OpenAPI规范自动解析API,并生成可供Agent使用的工具函数。
  • Agent团队构建: 轻松定义和配置Agent,将它们组织成协同工作的团队。
  • 智能任务规划: 内置规划Agent自动分解复杂任务,并协调团队成员执行。
  • MCP服务器能力: 将基于API生成的工具通过MCP协议暴露给外部LLM客户端。
  • 流式交互: 支持Agent间以及与客户端的实时流式通信。
  • 内置HTTP客户端: 简化API调用实现。
  • 类型安全: 使用Pydantic进行数据验证和模型定义。

安装步骤

通过pip安装库:

pip install asktheapi-team-builder

服务器配置

该库实现的MCP服务器主要用于将外部API转换为LLM可用的工具。LLM客户端通常需要以下信息来连接并启动MCP服务器进程:

配置信息为JSON格式,通常包含以下字段:

  • 'name': MCP服务的名称(例如,'asktheapi_mcp')。
  • 'command': 启动MCP服务器进程的命令(例如,'python')。
  • 'args': 传递给启动命令的参数列表。对于本库构建的MCP服务器,这些参数通常需要包含指定OpenAPI规范URL和可能的认证头信息,以便服务器知道要加载哪些API作为工具。例如,'['your_server_script.py', '--spec-url', 'https://api.example.com/openapi.json', '--headers', '{"Authorization": "Bearer token"}']'。实际的'command'和'args'取决于您如何将该库集成到您的MCP服务器启动脚本中。

基本使用方法

本库可以作为标准Python库构建和运行Agent团队,也可以通过其内置的MCP服务模块启动一个MCP服务器。

要启动MCP服务器:

  1. 编写一个Python脚本,导入'MCPService'和'MCPConfig'。
  2. 创建'MCPConfig'实例,配置服务器名称、端口和传输协议(如'sse')。
  3. 创建'MCPService'实例,传入配置。
  4. 调用'mcp_service.start_from_spec()'方法,提供OpenAPI规范的URL和必要的请求头。

示例 (类似README中展示的):

from asktheapi_team_builder import MCPService, MCPConfig
import asyncio

async def start_mcp():
    mcp_config = MCPConfig(
        transport="sse",
        port=8000,
        name="my_api_tools_mcp"
    )
    mcp_service = MCPService(mcp_config)

    # 启动MCP服务器,加载指定OpenAPI规范并暴露工具
    await mcp_service.start_from_spec(
        url_spec="https://api.example.com/openapi.json",
        headers={"Authorization": "Bearer your-api-token"} # 如果API需要认证
    )

# 在主程序中运行
if __name__ == "__main__":
    asyncio.run(start_mcp())

运行此脚本后,一个基于该库构建的MCP服务器将在指定端口启动,并将OpenAPI规范中定义的API作为工具暴露给支持MCP协议的LLM客户端。

信息

分类

开发者工具