Kontxt MCP Server

Kontxt MCP Server

一个模型上下文协议服务器,它将 AI 客户端连接到本地代码仓库,并使用 Gemini 2.0 Flash 分析代码库,并根据用户查询生成有针对性的上下文。

Category
访问服务器

README

Kontxt MCP 服务器

一个模型上下文协议 (MCP) 服务器,旨在解决代码库索引问题(在代理能够做到之前)。

功能特性

  • 连接到用户指定的本地代码仓库。
  • 为 AI 客户端(如 Cursor、Claude Desktop)提供 (get_codebase_context) 工具。
  • 内部使用 Gemini 2.0 Flash 的 1M 输入窗口来分析代码库,并根据用户的客户端查询生成上下文。
  • Flash 本身可以使用内部工具(list_repository_structureread_filesgrep_codebase)来理解代码。
  • 支持 SSE(推荐)和 stdio 传输协议。
  • 支持来自客户端查询的用户附加文件/文档/上下文,以进行更有针对性的分析。
  • 跟踪 token 使用情况,并提供 API 消耗的详细分析。
  • 最大化可能的上下文 token,以获得最佳的索引摘要。

设置

  1. 克隆/下载: 获取服务器代码。
  2. 创建环境:
    python -m venv venv
    source venv/bin/activate  # 在 Windows 上:venv\Scripts\activate
    
  3. 安装依赖:
    pip install -r requirements.txt
    
  4. 安装 tree 确保您的系统上可以使用 tree 命令。
    • macOS: brew install tree
    • Debian/Ubuntu: sudo apt update && sudo apt install tree
    • Windows: 需要安装一个端口或使用 WSL。
  5. 配置 API 密钥:
    • 复制 .env.example.env
    • 编辑 .env 并添加您的 Google Gemini API 密钥:
      GEMINI_API_KEY="YOUR_ACTUAL_API_KEY"
      
    • 或者,您可以通过 --gemini-api-key 命令行参数提供密钥。

作为独立服务器运行(推荐)

默认情况下,服务器以 SSE 模式运行,这允许您:

  • 独立启动服务器
  • 从多个客户端连接
  • 在重启客户端时保持运行

运行服务器:

python kontxt_server.py --repo-path /path/to/your/codebase

PS: 您可以使用 pwd 来列出项目路径

服务器将默认在 http://127.0.0.1:8080/sse 上启动。

对于其他选项:

python kontxt_server.py --repo-path /path/to/your/codebase --host 0.0.0.0 --port 6900

关闭服务器

可以通过在运行服务器的终端中按 Ctrl+C 来停止服务器。服务器将尝试以 3 秒超时时间优雅地关闭。

从客户端连接到服务器(Cursor 示例)

一旦您的服务器正在运行,您可以通过编辑您的 ~/.cursor/mcp.json 文件将 Cursor 连接到它:

{
  "mcpServers": {
    "kontxt-server": {
      "serverType": "sse",
      "url": "http://localhost:8080/sse"
    }
  }
}

PS: 记住始终在 Cursor 设置或其他客户端上刷新 MCP 服务器,以通过 sse 连接到 MCP

替代方案:使用 stdio 传输运行

如果您更喜欢让客户端启动和管理服务器进程:

python kontxt_server.py --repo-path /path/to/your/codebase --transport stdio

对于此模式,请像这样配置您的 ~/.cursor/mcp.json 文件:

{
  "mcpServers": {
    "kontxt-server": {
      "serverType": "stdio",
      "command": "python",
      "args": ["/absolute/path/to/kontxt_server.py", "--repo-path", "/absolute/path/to/your/codebase", "--transport", "stdio"],
      "env": {
        "GEMINI_API_KEY": "your-api-key-here"
      }
    }
  }
}

命令行参数

  • --repo-path PATH: 必需。要分析的本地代码仓库的绝对路径。
  • --gemini-api-key KEY: Google Gemini API 密钥(如果提供,则覆盖 .env)。
  • --token-threshold NUM: 上下文的目标最大 token 计数(默认值:800000)。
  • --gemini-model NAME: 要使用的特定 Gemini 模型(默认值:'gemini-2.0-flash')。
  • --transport {stdio,sse}: 要使用的传输协议(默认值:sse)。
  • --host HOST: SSE 服务器的主机地址(默认值:127.0.0.1)。
  • --port PORT: SSE 服务器的端口(默认值:8080)。

基本用法

示例查询:

  • "这个代码库是关于什么的"
  • "身份验证系统是如何工作的?"
  • "解释应用程序中的数据流"

PS: 如果代理没有使用 MCP 工具,您可以进一步指定代理使用它:"auth 文件的第三个代码块的最后一个词是什么?使用可用的 MCP 工具。"

上下文附件

您在查询中引用的文件/上下文将作为分析的上下文包含在内:

  • "解释这个文件是如何工作的:@kontxt_server.py"
  • "查找所有与 @user_model.py 交互的文件"
  • "比较 @file1.js 和 @file2.js 的实现"

服务器会将这些文件提及给 Gemini,但不会自动读取或包含它们的内容。相反,Gemini 将根据查询上下文决定使用其工具读取哪些文件。

这种方法允许 Gemini 仅读取实际需要的文件,并防止上下文被不相关的文件内容膨胀。

Token 使用情况跟踪

服务器跟踪不同操作中的 token 使用情况:

  • 仓库结构列表
  • 文件读取
  • Grep 搜索
  • 来自用户查询的附加文件
  • 生成的响应

此信息在操作期间被记录,帮助您监控 API 使用情况并优化您的查询。

PD: 想要改进这个工具吗?欢迎提交 PR。

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选