使用说明
带 MCP 和 Gemini 的 AI 代理
这是一个小型AI代理,它使用MCP(模型控制器 - 演示器)库将语言模型(Google Gemini)连接到本地Python工具集。
代理能够以自然语言解释用户请求,决定运行哪个工具(包括server.py中可用的工具),然后使用正确的参数调用该工具。
该项目符合AI工作的要求,包括:
- 具有集成LLM的MCP客户端(client.py)。
- 至少3个工具(server.py)。
- 一个工具(remove_duplicates) 护栏 输入和输出(使用Pydantic)和 日志记录 在一个.json文件中的操作。
可用工具
- calculater_potence:计算一个乘以指数的基数。
- inverter_text:反转一个文本字符串。
- remover_duplicatas:从列表中删除重复项,返回结构化JSON,并将操作记录到operations_log.json。
先决条件
- Python 3.10或更高级
- Google Gemini API 密钥 谷歌人工智能工作室)
1. 安装
首先,克隆此仓库,创建虚拟环境并安装依赖关系。
# 1 。创建虚拟环境
python-m venv-venv
# 2 。启用虚拟环境
#无Windows(PowerShell/CMD):
.\venv\Scripts\activate
#没有Linux/macOS:
源venv/bin/activate
# 3 。安装必要的库
pip安装mcp-ai谷歌generativeai
2. 如何执行
要运行该项目,您需要 两个终端 在项目文件夹中打开(并且两者都启用了虚拟环境)。
终端 1: 运行服务器 (server.py)
在第一个终端上,运行服务器。它将等待客户端连接。
python服务器.py
您应该看到一个输出, 表明服务器正在运行 :
信息:root:🚀 MCP 服务器正在运行http://localhost:8000
INFO:root:可用的工具: calculate_power, inverter_text, remove_duplicates
保持此终端打开 。
终端 2: 运行客户端 (client.py)
在第二个终端中,您需要首先设置API密钥,然后运行客户端。
1. 设置Gemini API密钥
替换 SUA_CHAVE_AIza 。真正的API密钥。
-
没有PowerShell(Windows):
$env:GEMINI_API_KEY=“关键字…” -
无CMD(Windows):
设置 GEMINI_API_KEY=“SUA_CHAVE_AIza…” -
没有Linux或macOS:
export GEMINI_API_KEY=“SUA_CHAVE_AIza…”
2. 运行客户端
现在,在设置密钥的同一个终端上,运行 client.py:
python客户端.py
3. 如何使用
客户会问你想做什么。以下是您可以测试的一些示例:
🤖 你想做什么? (例如:“2乘以10是多少?”)
5乘以3是多少?
🤖 你想做什么? (例如:“2乘以10是多少?”)
翻译“sensational”一词
🤖 你想做什么? (例如:“2乘以10是多少?”)
> 清除此列表 [1, 1, 2, “ola”, 2, “ola”]
测试 Guardrails
您也可以测试 护栏 我们定义的输入(验证规则):
- **为 inverter_text (至少 1 个字符):**反转空文本
- (MCP 必须返回验证错误)
- **为了删除重复项(列表不能为空):**从空列表中删除重复项
- (MCP 必须返回验证错误)