AI代理工具集成

一个基于MCP协议的AI代理,通过集成外部工具执行智能工作流,适用于自动化任务和智能决策场景。

  • by brij-joe
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 brij-joe/ai_agent_with_mcp

使用说明

🤖 带有MCP的AI代理

一个端到端的实现 由MCP(模型上下文协议)驱动的AI代理 它通过MCP服务器集成外部工具,并使用LangChain/LangGraph执行智能工作流。


🚀 概述

该项目演示了如何构建 工具增强型人工智能代理 即:

  • 通过SSE连接到MCP服务器
  • 动态发现和使用外部工具
  • 通过LLM推理执行工具调用
  • 返回结构化和人类可读的响应

🧩 建筑

User Query
↓
AI Agent (MCPAgent)
↓
LLM (Gemini / other models)
↓
Tool Decision
↓
MCP Client
↓
MCP Server (MServer)
↓
External Tools (e.g., Web Search)

📦 关键组件

🔹 MServer

  • MCP服务器实现
  • 通过MCP协议公开工具
  • 手柄:
    • 工具注册
    • 工具执行
    • 基于SSE的通信

🔹 MCPAgent

  • 集成LLM+MCP工具的AI代理
  • 责任:
    • 连接到MCP服务器
    • 动态加载可用工具
    • 执行工具调用工作流
    • 格式化最终回复

🛠️ 特性

  • ✅ MCP(模型上下文协议)集成
  • ✅ 基于SSE的持久通信
  • ✅ 动态工具发现
  • ✅ 工具调用AI代理
  • ✅ Gemini/LLM支持
  • ✅ 异步架构
  • ✅ 可扩展的工具框架

⚙️ 设置

1.克隆存储库

git clone https://github.com/brij-joe/ai_agent_with_mcp.git
cd ai_agent_with_mcp

2.创建虚拟环境

uv venv .venv
.venv\Scripts\activate   # Windows

3.配置环境

Create a .env file: and copy your API key
GOOGLE_API_KEY=your_api_key

▶️ 运行项目

1.启动MCP服务器

python src/start_mcp.py

2.运行AI代理

python src/ask_agent.py

🧪 查询示例

告诉我今天的十大新闻亮点

🔧 示例工具

🌐 网络搜索(Tavilly API)

📊 (可扩展到数据库、API等)

🧠 运作原理

代理通过SSE连接到MCP服务器

动态加载可用工具

用户查询已发送到LLM

LLM决定是否调用工具

工具通过MCP服务器执行

生成并返回最终响应

📁 项目结构

src/
│
├── agents/
│   └── mcp_agent.py       # MCPAgent implementation
├── agents/
│   └── mcp_agent.py       # MCP Server implementation
├── start_mcp.py           # MCP server (MServer)
├── ask_agent.py           # Entry point for agent queries
├── app_constants.py       # Configurations

⚠️ 已知挑战

SSE连接生命周期管理

异步流处理

工具执行同步

模型工具调用可靠性(取决于LLM)

🚀 未来的增强功能

🔄 MCP呼叫的重试和弹性

🧠 内存(矢量数据库集成)

🌐 多工具编排

📡 流媒体响应

📊 可观察性和追踪

🤝 贡献

欢迎投稿!请随时打开问题或提交pull请求。

📜 许可证

MIT许可证

🙌 致谢

语言链/语言图

MCP协议

Google Gemini API


📌 备注

这不是生产级。这是一个简单的概念演示。如需深入了解“带MCP的代理AI系统”的设计和架构,请随时联系:📧 brij_joe@yahoo.com