返回市场
代理构建

代理构建

作者:ai-mcp-garage13 星标更新:2025-03-18

项目介绍

Agent Construct

<p align="center"> <img src="artwork/logo.png" alt="Logo" width="300"/> </p>

“我们可以加载任何东西,从衣物到设备、武器、训练模拟,我们需要的一切。” -《黑客帝国》(1999)

Agent Construct 是一个基于模型上下文协议(MCP)的服务器实现,它标准化了AI应用程序如何访问工具和上下文。正如《黑客帝国》中的构造体为操作员提供了即时访问所需设备的能力一样,Agent Construct 提供了一个标准化接口,使AI模型能够通过MCP规范访问工具和数据。

基于模型上下文协议规范构建,它充当一个中央枢纽,管理AI应用程序的工具发现、执行和上下文管理。它提供了一种强大且可扩展的方式来通过标准化协议向AI模型暴露能力。它还提供了一个简化配置和工具结构,使得添加新功能变得轻松!其中包括一个用于使用Gemini进行网络搜索的示例工具。

核心特性

MCP协议实现

  • 完全符合MCP规范:完整实现了模型上下文协议规范
  • 工具发现:动态工具注册和发现机制
  • 标准化通信:实现了MCP的通信模式以进行工具交互

服务器架构

  • FastAPI后端:高性能异步服务器实现
  • 事件流:通过服务发送事件(SSE)实现实时更新
  • 模块化设计:核心协议处理与工具实现之间的清晰分离
  • 处理器系统:可扩展的请求处理器架构,适用于不同的MCP操作
  • 基于工具的速率限制:让服务器处理您可配置的每工具速率限制

开发特性

  • 工具装饰器系统:一种简单的方法,通过MCP暴露新的工具
  • 日志与监控:全面的日志系统,用于调试和监控
  • 配置管理:基于环境的配置,默认安全设置
  • 测试框架:广泛的测试套件,确保协议合规性
  • 代理框架友好:包括自定义客户端或smolagents框架的实现示例

快速开始

预备条件

  • Python 3.8 或更高版本
  • pip 包管理器

安装

  1. 克隆仓库:

    git clone https://github.com/yourusername/agent-construct.git
    cd agent-construct
    
  2. 安装依赖项:

    pip install -r requirements.txt
    
  3. 设置环境变量: 在根目录创建一个.env文件,并添加以下变量:

    # 服务器配置
    SERVER_HOST=localhost
    SERVER_PORT=8000
    
    # MCP协议设置
    MCP_VERSION=1.0
    TOOL_DISCOVERY_ENABLED=true
    
    # 安全设置
    ENABLE_AUTH=false  # 生产环境中启用
    
  4. 运行服务器:

    python -m mcp_server
    

核心架构

mcp_server/
├── core/               # 核心MCP协议实现
│   ├── server.py      # 主服务器实现
│   ├── protocol.py    # MCP协议处理器
│   └── context.py     # 上下文管理
├── handlers/          # MCP操作处理器
│   ├── discovery.py   # 工具发现
│   ├── execution.py   # 工具执行
│   └── context.py     # 上下文操作
├── utils/            # 实用函数
│   ├── logging.py    # 日志配置
│   ├── security.py   # 安全实用工具
│   └── config.py     # 配置管理
└── __main__.py       # 服务器入口点

MCP协议特性

工具发现

  • 动态工具注册系统
  • 工具能力广告
  • 版本管理
  • 工具元数据和文档

上下文管理

  • 高效的上下文存储和检索
  • 上下文作用域和隔离
  • 实时上下文更新
  • 上下文持久化选项

通信模式

  • 同步请求/响应
  • 服务发送事件以更新
  • 流式响应
  • 错误处理和恢复

未来增强

协议扩展

  • 高级上下文管理功能
  • 自定义协议扩展
  • 协议处理器插件系统

安全

  • 身份验证和授权
  • 工具访问控制
  • [-] 速率限制和配额管理
  • 审计日志
  • 端到端加密

性能

  • 工具执行优化
  • 上下文缓存
  • 负载均衡
  • 请求队列
  • 资源管理

开发

  • 交互式协议探索器
  • 工具开发SDK
  • 协议合规性测试工具
  • 性能监控仪表板

贡献

欢迎贡献!请随意提交Pull Request。对于重大更改,请先打开一个问题来讨论您想要更改的内容。

许可证

此项目根据MIT许可证发布 - 查看LICENSE文件了解详情。

致谢

  • 模型上下文协议提供的协议规范
  • FastAPI提供的优秀Web框架
  • 开源社区提供的各种工具和库,用于此项目