MCP Gemini Server

MCP Gemini Server

site icon
2025.04.04 11
TypeScript模型集成文本生成对话系统文件管理缓存优化内容生成
MCP Gemini Server 是一个基于 MCP(Model Context Protocol)标准的服务器,封装了 Google 的 Gemini 模型功能,为其他 LLM(如 Cline)或兼容 MCP 的系统提供标准化的工具接口。该服务器简化了与 Gemini 模型的集成,提供了文本生成、函数调用、状态化聊天、文件处理和缓存等功能。
View on GitHub

Overview

基本能力

产品定位

MCP Gemini Server 是一个中间件服务器,旨在通过 MCP 标准将 Google 的 Gemini 模型功能暴露为标准化工具,便于其他 LLM 或 MCP 兼容系统调用。

核心功能

  • 核心生成:支持标准文本生成(gemini_generateContent)和流式文本生成(gemini_generateContentStream)。
  • 函数调用:允许 Gemini 模型请求执行客户端定义的函数(gemini_functionCall)。
  • 状态化聊天:管理多轮对话的上下文(gemini_startChatgemini_sendMessagegemini_sendFunctionResult)。
  • 文件处理:支持文件的上传、列表、检索和删除(gemini_uploadFilegemini_listFilesgemini_getFilegemini_deleteFile)。
  • 缓存管理:支持缓存的创建、列表、检索、更新和删除(gemini_createCachegemini_listCachesgemini_getCachegemini_updateCachegemini_deleteCache)。

适用场景

  • 内容生成:如生成诗歌、解释概念等。
  • 对话系统:支持多轮对话的上下文管理。
  • 文件处理:上传和管理文件以供模型使用。
  • 缓存优化:通过缓存优化提示词和生成内容。

工具列表

  1. 核心生成工具
  2. gemini_generateContent:生成非流式文本内容。
  3. gemini_generateContentStream:生成流式文本内容(当前实现为收集所有块后返回完整文本)。
  4. 函数调用工具
  5. gemini_functionCall:发送提示和函数声明,返回文本响应或函数调用对象。
  6. 状态化聊天工具
  7. gemini_startChat:启动新的聊天会话。
  8. gemini_sendMessage:在现有会话中发送消息。
  9. gemini_sendFunctionResult:发送函数执行结果回会话。
  10. 文件处理工具
  11. gemini_uploadFile:上传文件。
  12. gemini_listFiles:列出上传的文件。
  13. gemini_getFile:检索文件元数据。
  14. gemini_deleteFile:删除文件。
  15. 缓存管理工具
  16. gemini_createCache:创建缓存内容。
  17. gemini_listCaches:列出缓存内容。
  18. gemini_getCache:检索缓存元数据。
  19. gemini_updateCache:更新缓存元数据。
  20. gemini_deleteCache:删除缓存内容。

常见问题解答

  • API 密钥问题:仅支持 Google AI Studio 的 API 密钥,不支持 Vertex AI 凭证。
  • 文件上传问题:需要绝对路径。
  • 流式生成问题:当前实现为收集所有块后返回完整文本,未实现真正的流式传输。
  • 分页问题gemini_listFilesgemini_listCaches 可能无法可靠返回 nextPageToken

使用教程

使用依赖

  • Node.js:v18 或更高版本。
  • Google AI Studio API Key:从 Google AI Studio 获取。

安装教程

通过 Smithery 安装

npx -y @smithery/cli install @bsmi021/mcp-gemini-server --client claude

手动安装

  1. 克隆/放置项目:确保 mcp-gemini-server 项目目录可访问。
  2. 安装依赖bash npm install
  3. 构建项目bash npm run build
  4. 配置 MCP 客户端:将服务器配置添加到 MCP 客户端的设置文件中(如 cline_mcp_settings.json)。
  5. 重启 MCP 客户端:重启客户端以加载新配置。

调试方式

  • 环境变量:确保 GOOGLE_GEMINI_API_KEYGOOGLE_GEMINI_MODEL 正确设置。
  • 日志检查:查看服务器日志以排查错误。
  • 参数验证:使用 Zod 定义的参数模式进行验证。

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。