多模态对话平台服务器

MCP服务器扩展了Gemini CLI代理的功能,提供YouTube转录检索和结构化信息处理等工具。

  • by arun-esh
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 arun-esh/mcp-server

使用说明

Gemini CLI的MCP服务器

此存储库包含一个MCP(多模式会话平台)服务器,该服务器由以下组件构建 fastmcp 它扩展了Gemini CLI代理的功能。它提供了专门的工具和提示,允许Gemini代理与YouTube等外部服务进行交互,以进行转录检索,并将信息处理成结构化格式。

特性

服务器向连接的Gemini CLI代理公开以下功能:

1. get_youtube_transcript 工具

  • 目的: 获取给定YouTube视频的完整转录。
  • 参数:
    • url_or_id (string):YouTube视频的URL或唯一ID。
    • include_timestamps (布尔值,可选,默认值: False):如果 True,时间戳包含在成绩单的每一行中。
  • 输出: 返回一个JSON字符串,其中包含 video_id, language,数量 snippets,以及 transcript 内容。
  • 错误处理: 优雅地处理成绩单被禁用、找不到或视频不可用的情况。

2. youtube_transcript_to_notes 提示

  • 目的: 一个详细的提示,旨在指导人工智能代理将YouTube视频转录转换为全面的Markdown格式的学习笔记。
  • AI说明: 提示为AI提供了一种结构化的方法:
    • 根据视频标题/描述推断课程名称。
    • 将笔记保存到特定文件路径(./[course_name]/index.md),确保现有笔记被合并和丰富,而不是被覆盖。
    • 专注于彻底解释概念,包括定义、关键思想、示例和现实世界的应用。
    • 使用Markdown进行清晰的格式化(列表、表格、图表)。
    • 以“关键要点”部分结束。
    • 返回整个更新的Markdown文件。

3. search_google_prompt 提示

  • 目的: 指示AI代理使用外部 search_google_tool (假设AI可以使用)执行网络搜索并格式化结果。
  • AI说明: 提示引导AI:
    • 使用执行搜索 search_google_tool 根据给定的查询。
    • 处理来自搜索API的结构化JSON结果。
    • 在格式良好的Markdown列表中显示结果。
    • 将格式化的输出保存到名为的Markdown文件中 /opt/custom/arun-esh.github.io/docs/gemini/query_{query}_time_stamp.md.

先决条件

  • Python 3.12+
  • pip (Python包安装程序)
  • (可选)用于容器化部署的Docker

设置

您可以在本地或使用Docker设置和运行MCP服务器。

本地设置

  1. 克隆存储库:

    git clone https://github.com/test-user/mcp-server.git # Replace with actual repo URL if different
    cd mcp-server
    
  2. 创建并激活虚拟环境:

    python3 -m venv .venv
    source .venv/bin/activate
    
  3. 安装依赖项:

    pip install -r requirements.txt
    
  4. 运行服务器:

    python main.py
    

    服务器将在以下时间启动并可访问 http://0.0.0.0:8000/mcp.

Docker设置

  1. 构建Docker镜像:

    docker build -t mcp-server-image .
    
  2. 运行Docker容器:

    docker run -d -p 8081:8000 --name mcp-server-container mcp-server-image
    

    此命令以分离模式运行服务器,映射容器的端口 8000 到端口 8081 在您的主机上。服务器将可在以下位置访问 http://localhost:8081/mcp.

连接到Gemini CLI

要使Gemini CLI代理能够使用此MCP服务器,您需要配置其 GEMINI_MCP_SERVER_URL.

  1. 安装Gemini CLI: 如果还没有,请安装Gemini CLI(有关最新的安装说明,请参阅其官方文档)。

  2. 配置服务器URL: 设置 GEMINI_MCP_SERVER_URL 环境变量指向正在运行的MCP服务器。

    • 对于本地设置:
      export GEMINI_MCP_SERVER_URL="http://localhost:8000/mcp"
      
    • 对于Docker设置:
      export GEMINI_MCP_SERVER_URL="http://localhost:8081/mcp"
      

    您还可以将此行添加到shell的配置文件中(例如。, .bashrc, .zshrc)使其持久。

    或者,您可以使用 settings.json 文件(通常位于 ~/.gemini/settings.json 或类似的配置目录)。这提供了一种更持久的方法来管理MCP服务器连接。

    示例 settings.json:

    {
      "security": {
        "auth": {
          "selectedType": "oauth-personal"
        }
      },
      "mcpServers": {
        "gemini-mcp-server": {
          "httpUrl": "http://127.0.0.1:8081/mcp/"
        }
      }
    }
    

使用示例(概念性)

连接后,您的Gemini CLI代理可以利用服务器的功能。例如:

  • 获取YouTube文字记录: AI可能会调用 get_youtube_transcript 带有视频URL的工具。
  • 生成学习笔记: AI可能会被提示 youtube_transcript_to_notes("https://www.youtube.com/watch?v=example") 从视频中生成笔记。
  • 执行谷歌搜索: AI可以使用 search_google_prompt("latest AI research") 以获得格式化的搜索结果。

有关与MCP服务器的特定命令和交互模式,请参阅Gemini CLI文档。