基于模型上下文协议(MCP)的代理AI
该项目实现了一个代理AI系统,该系统通过自定义模型上下文协议(MCP)服务器将Groq托管的LLM(qwen-qwq-32b模型)与各种工具连接起来。该系统通过提供维基百科、互联网搜索(通过Tavily API)和财务数据(通过Yahoo Finance API)的上下文信息,增强了LLM的能力。
关于MCP
模型上下文协议(MCP)是Anthropic开发的一个开放标准,用于标准化应用程序如何为大型语言模型(LLM)提供上下文。它促进了LLM应用程序与外部数据源和工具之间的无缝集成,允许AI系统通过标准化的接口与各种服务动态交互。
MCP的主要特征:
- 标准化:为AI助手与结构化工具和数据层的接口提供通用协议。
- 模块化架构:在持久流上遵循客户端-服务器模式,通常由主机AI系统介导。
- 动态内省:支持通过工具/列表和资源/列表等方法动态发现工具和资源。
安全性:结合了主机介导的身份验证,并支持安全的传输协议。 通过采用MCP,开发人员可以构建更具互操作性、安全性和复杂工作流程能力的AI应用程序。
要向MCP服务器添加新工具,请执行以下操作:
- 定义工具:创建一个处理特定任务或数据检索的新函数。
- 注册工具:更新服务器的工具注册表以包含新功能,指定工具的名称和描述。
- 处理请求:确保服务器能够根据查询将传入请求路由到适当的工具。
这种模块化方法允许轻松扩展服务器的功能,使语言模型能够访问更广泛的上下文信息。
特性
- MCP服务器:提供各种工具访问的中心枢纽
- 三个集成工具:
1. 维基百科搜索-事实信息检索 1. 互联网搜索-由Tavily API提供全面的网络搜索结果 1. 雅虎财经API-实时股票和财务数据
- Groq API集成:使用qwen-qwq-32b型号的超快速LLM处理
- 客户端-服务器体系结构:工具管理和LLM交互之间的清晰分离
先决条件
在开始之前,请确保您拥有以下内容:
安装
- 克隆存储库:
git clone https://github.com/dev484p/AgenticAI_MCP
cd AgenticAI_MCP- 安装依赖项:
uv add "mcp[cli]"- 设置环境变量:
更新keys.json中的Groq和Tavily api密钥
- 可选(使用MCP Inspector运行服务器进行开发):
uv run mcp dev server.py- 运行以下命令启动聊天机器人:
uv run client.py可用工具
系统通过MCP服务器提供三个工具:
- Wiki搜索:
- 访问维基百科信息
- 示例查询:“告诉我人工智能的历史”
- 互联网搜索(Tavily):
- 获取全面的网络搜索结果
- 示例查询:“量子计算的最新进展是什么?”
- 雅虎财经:
- 访问股票价格和财务数据
- 示例查询:“AAPL股票的当前价格是多少?”
参考
- https://modelcontextprotocol.io/introduction
- https://github.com/langchain-ai/langchain-mcp-adapters
- https://github.com/krishnaik06/MCP-CRASH-Course
