语义代码搜索服务

Seroost Search MCP Server 是一个基于 Seroost 语义搜索引擎的 MCP 服务器,为 AI 代理提供强大的代码库语义搜索功能。

  • by Parado-xy
  • JavaScript
  • 本地部署
  • 7 星标
  • 更新于
在 GitHub 查看 Parado-xy/semantic-search-mcp

使用说明

Serost搜索MCP服务器

模型上下文协议(MCP)服务器,使用 血清学 语义搜索引擎。

特性

  • 语义代码搜索:使用自然语言查询查找函数、类和代码模式
  • 排名结果:获取带有行号和文件路径的相关性评分搜索结果
  • 快速索引:快速索引整个代码库,包括依赖关系
  • MCP集成:适用于任何兼容MCP的AI系统(Claude、VS Code Copilot等)
  • 应用程序接口:结构化响应非常适合程序化使用

先决条件

  • Node.js 18+
  • 血清学 安装并内置发布模式
  • TypeScript(用于开发)

安装

  1. 安装Serost (如果尚未安装):

    # Clone and build Seroost
    git clone https://github.com/Parado-xy/seroost
    cd seroost
    cargo build --release
    # Make sure the binary is in your PATH
    
  2. 克隆此存储库:

    git clone https://github.com/Parado-xy/semantic-search-mcp
    cd search-mcp
    
  3. 安装依赖项:

    npm install
    
  4. 构建项目:

    npm run build
    

用法

作为MCP服务器

配置您的MCP客户端以使用此服务器:

{
  "mcpServers": {
    "seroost-search": {
      "command": "node",
      "args": ["/path/to/search-mcp/build/index.js"]
    }
  }
}

可用工具

seroost_set_index

配置目标目录以进行索引。

参数:

  • path (string):要索引的目录的绝对路径

例子:

{
  "name": "seroost_set_index",
  "arguments": {
    "path": "/home/user/my-project"
  }
}

seroost_index

为配置的目录构建搜索索引。

参数: 无(使用由设置的路径 seroost_set_index)

例子:

{
  "name": "seroost_index",
  "arguments": {}
}

seroost_search

在索引代码库中搜索。

参数:

  • query (string):搜索词、函数名或自然语言描述

例子:

{
  "name": "seroost_search",
  "arguments": {
    "query": "user authentication functions"
  }
}

答复:

{
  "query": "user authentication functions",
  "results": [
    {
      "rank": 1,
      "path": "/home/user/project/src/auth.js",
      "score": 0.8543,
      "line_matches": [
        {
          "line": 42,
          "content": "function authenticateUser(credentials) {"
        }
      ]
    }
  ]
}

工作流程

  1. 设置索引路径:使用 seroost_set_index 配置要搜索的目录
  2. 生成索引:运行 seroost_index 处理和索引所有文件
  3. 搜索:使用 seroost_search 使用自然语言查询查找相关代码

搜索示例

  • "function createUser" -查找用户创建功能
  • "error handling" -查找错误处理模式
  • "database connection" -查找数据库相关代码
  • "React components" -查找React组件定义
  • "API endpoints" -查找REST API路由定义

发展

建筑

npm run build

项目结构

src/
├── index.ts        # MCP server setup and tool definitions
├── commands.ts     # Seroost command wrappers
build/              # Compiled JavaScript output

运作原理

此MCP服务器充当AI代理和Seroost搜索引擎之间的桥梁:

  1. 索引:Serost处理您的代码库并创建可搜索的索引
  2. 询问:AI代理通过MCP协议发送搜索查询
  3. 结果:Seroost返回经过排序的、带有元数据的相关代码片段
  4. 整合:AI代理可以使用这些结果来理解和使用您的代码

AI代理的好处

  • 更快的代码发现:在不读取整个文件的情况下查找相关代码
  • 语义理解:按意图搜索,而不仅仅是精确的文本匹配
  • 背景结果:获取具有相关性得分的排名结果
  • 大型代码库支持:处理包含数千个文件的项目
  • 跨文件分析:查找整个项目的使用模式

许可证

国际协调委员会

贡献

欢迎投稿!请随时提交问题和拉取请求。

相关项目