使用说明

项目简介

Gemini Context MCP 服务器是一个基于 Model Context Protocol (MCP) 标准构建的后端服务,专为大型语言模型 (LLM) 应用设计。它充分利用 Google Gemini 模型的强大上下文处理能力,并提供高效的 API 缓存机制,旨在帮助开发者构建更智能、更经济的 LLM 应用。

主要功能点

  • 强大的上下文管理: 支持高达 2M tokens 的上下文窗口,充分发挥 Gemini 的能力,实现更深入的对话和更复杂的任务处理。
  • 会话管理: 基于会话的对话管理,跨多轮交互维护对话状态,让 LLM 应用具备连贯的记忆能力。
  • 智能上下文跟踪: 支持添加、检索和搜索上下文,并可附加元数据进行精细化管理和组织。
  • 语义搜索: 通过语义相似性查找相关上下文,提高上下文检索的准确性和效率。
  • API 缓存: 高效缓存大型 Prompt 和指令,减少重复计算,优化 token 使用成本,并支持 TTL 管理和自动清理。
  • MCP 协议兼容: 完全兼容 Model Context Protocol,可与各种 MCP 客户端(如 Cursor, Claude Desktop, VS Code 等)无缝集成。

安装步骤

  1. 克隆仓库:

    git clone https://github.com/ogoldberg/gemini-context-mcp-server.git
    cd gemini-context-mcp-server
  2. 安装依赖:

    npm install
  3. 配置环境变量:

    • 复制 '.env.example' 文件为 '.env':
      cp .env.example .env
    • 在 '.env' 文件中填入你的 Gemini API 密钥 ('GEMINI_API_KEY')。你可以在 Google AI for Developers 获取 API 密钥。
  4. 构建服务器:

    npm run build

服务器配置

对于 MCP 客户端,你需要配置连接到 Gemini Context MCP 服务器。以下是一个通用的 MCP 服务器配置示例 (JSON 格式),你需要将其填入 MCP 客户端的相应配置项中。请注意,MCP客户端只需要配置服务器的启动命令,无需修改代码。

{
  "name": "gemini-context",  //  服务器名称,可自定义
  "command": "node",      //  启动服务器的命令,这里使用 Node.js
  "args": ["dist/mcp-server.js"] //  启动命令的参数,指向编译后的服务器入口文件
}

参数说明:

  • 'name': MCP 服务器的名称,用于在客户端中标识和管理。
  • 'command': 运行 MCP 服务器的命令,通常是 Node.js 的执行命令 'node'。
  • 'args': 传递给 'command' 的参数数组,指定服务器的入口文件 'dist/mcp-server.js'。

不同 MCP 客户端的配置方式略有不同,请参考客户端的文档,并使用上述 JSON 配置信息进行配置。 例如,在 Cursor 中,你可能需要在 AI/MCP 设置中添加以上配置。

基本使用方法

  1. 启动服务器:

    node dist/mcp-server.js

    或者,如果你希望以 HTTP 模式启动并指定端口 (例如 3000),可以使用:

    node dist/mcp-server.js --http --port 3000
  2. 集成 MCP 客户端:

    • 根据你的 MCP 客户端 (如 Cursor, Claude Desktop, VS Code 等) 的文档,配置连接到 Gemini Context MCP 服务器。你需要提供服务器的启动命令和参数(如上面的 JSON 配置示例)。
    • 配置完成后,你就可以在 MCP 客户端中使用 Gemini Context MCP 服务器提供的上下文管理和缓存功能了。具体的工具和使用方法,请参考 'README-MCP.md' 文档。
  3. 使用示例:

    • 你可以使用仓库中提供的测试脚本 ('test-gemini-context.js', 'test-gemini-api-cache.js') 来测试服务器的基本功能。
    • 你也可以在你的 Node.js 应用中集成 'GeminiContextServer' 类,直接使用其 API 进行上下文管理和缓存操作。示例代码请参考 'README.md' 中的 "Using in your Node.js application" 和 "For Power Users" 部分。

信息

分类

AI与计算