AI代理工具

一个使用MCP框架连接Google Gemini语言模型和本地Python工具的AI代理,能够解析自然语言请求并执行相应工具操作。

  • by VitorCardias
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 VitorCardias/Server_MCP

使用说明

带 MCP 和 Gemini 的 AI 代理

这是一个小型AI代理,它使用MCP(模型控制器 - 演示器)库将语言模型(Google Gemini)连接到本地Python工具集。

代理能够以自然语言解释用户请求,决定运行哪个工具(包括server.py中可用的工具),然后使用正确的参数调用该工具。

该项目符合AI工作的要求,包括:

  1. 具有集成LLM的MCP客户端(client.py)。
  2. 至少3个工具(server.py)。
  3. 一个工具(remove_duplicates) 护栏 输入和输出(使用Pydantic)和 日志记录 在一个.json文件中的操作。

可用工具

  • calculater_potence:计算一个乘以指数的基数。
  • inverter_text:反转一个文本字符串。
  • remover_duplicatas:从列表中删除重复项,返回结构化JSON,并将操作记录到operations_log.json。

先决条件

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 必须返回验证错误)