CLI工具服务器

Gemini MCP Chatbot是一个通过STDIO暴露计算器、文件读写工具的MCP服务器,用于Gemini CLI代理的快速自动化。

  • by NanthagopalEswaran
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 NanthagopalEswaran/Gemini-MCP-Integration

使用说明

Gemini MCP聊天机器人

一个基于STDIO的简单MCP(模型上下文协议)服务器,为Gemini CLI代理提供计算器、文件读取和文件写入工具。

特性

  • 计算器
  • 文件读取
  • 文件写入

建筑一瞥

Gemini CLI ──STDIO──> MCP Server (src/server.py) ──Tools──> Your Python Functions

CLI启动MCP服务器,通过STDIO流式传输请求,并在不需要套接字或REST的情况下接收工具响应。

项目参观

.gemini/settings.json

// filepath: f:\Workspace\AI Training\Gemini CLI\.gemini\settings.json
{
  "mcpServers": {
    "pythonTools": {
      "command": "poetry",
      "args": ["run", "python", "src/server.py"],
      "cwd": "",
      "env": {
        "MCP_PROXY_AUTH_TOKEN": "<MCP_PROXY_AUTH_TOKEN>"
      },
      "timeout": 15000
    }
  }
}

此配置将CLI连接到通过Poetry生成MCP服务器,注入代理令牌,并强制执行15秒的超时。

注意:当服务器启动时,它会在终端中打印配置的令牌,以便您确认占位符值。

Python工具

CLI装载中定义的MCP服务器 src/server.py,公开计算器和文件帮助程序以实现快速自动化。

MCP-进口

FastMCP 类从 mcp 该包可用于立即创建mcp服务器。

# filepath: f:\Workspace\AI Training\Gemini CLI\src\server.py
from mcp.server.fastmcp import FastMCP

mcp = FastMCP("demo")

用于工具注册的MCP装饰器

装饰者将计算器和文件实用程序作为可发现的MCP工具公开。
Docstring为每个工具定义参数和返回值,以便Gemini CLI可以构建正确的模式进行调用。

# filepath: f:\Workspace\AI Training\Gemini CLI\src\server.py
@mcp.tool()
def handle_calculator(expression):
    """
    Evaluate a mathematical expression and return the result.
    ...
    """
    ...

@mcp.tool()
def handle_file_read(path):
    """
    Read the contents of a file at the given path.
    ...
    """
    ...

@mcp.tool()
def handle_file_write(path: str, content: str):
    """
    Write content to a file at the given path.
    ...
    """
    ...

运行MCP服务器

# filepath: f:\Workspace\AI Training\Gemini CLI\src\server.py
if __name__ == "__main__":
    mcp.run()

默认情况下,服务器监听STDIO,准备处理来自Gemini CLI的传入工具调用。这 transport 参数 mcp.run() 可以调整这种行为。

设置

  1. 安装Python 3.6+和Poetry。
  2. 在项目文件夹中运行:
    poetry install
    
    (无需外部依赖)

正在运行MCP服务器

启动MCP服务器(STDIO传输):

poetry run python src/server.py

进程保持连接到STDIO(无TCP端口)。

Gemini CLI集成

Gemini CLI配置为通过以下方式连接到此MCP服务器 .gemini/settings.json (命令指向 python src/server.py).

启动Gemini CLI:

gemini

使用 /mcp 在CLI中列出连接的MCP服务器和工具。

Gemini代理可以根据需要调用这些工具。

您可以自然地提问(例如“Compute 2+2*3”或“Read./notes.txt”),代理将调用相应的工具。

使用示例

用户: “嘿,47.50美元的钞票上15%的小费是多少?”

代理人: _[建议使用计算器工具:47.50 _ 0.15]_

工具调用和响应:(经用户批准) ✓ handle_calculator(pythonTools MCP服务器){“表达式”:“47.50*0.15”}