代码项目向量搜索系统

一个本地向量数据库系统,通过消息控制协议(MCP)为LLM编码代理提供快速、高效的软件项目搜索能力。

  • by randomm
  • Python
  • 本地部署
  • 7 星标
  • 更新于
在 GitHub 查看 randomm/files-db-mcp

使用说明

文件数据库MCP:代码项目的矢量搜索

一种本地矢量数据库系统,通过消息控制协议(MCP)为LLM编码代理提供快速、高效的软件项目搜索功能。

特性

  • 零配置 -自动检测具有合理默认值的项目结构
  • 实时监控 -持续监视文件更改
  • 矢量搜索 -语义搜索以查找相关代码
  • MCP接口 -与Claude Code和其他LLM工具兼容
  • 开源模型 -使用Hugging Face模型进行代码嵌入

安装

选项1:克隆和安装(推荐)

# Using SSH (recommended if you have SSH keys set up with GitHub)
git clone git@github.com:randomm/files-db-mcp.git ~/.files-db-mcp && bash ~/.files-db-mcp/install/setup.sh

# Using HTTPS (if you don't have SSH keys set up)
git clone https://github.com/randomm/files-db-mcp.git ~/.files-db-mcp && bash ~/.files-db-mcp/install/setup.sh

选项2:自动安装脚本

curl -fsSL https://raw.githubusercontent.com/randomm/files-db-mcp/main/install/install.sh | bash

用法

安装后,在任何项目目录中运行:

files-db-mcp

该服务将:

  1. 检测您的项目文件
  2. 在后台开始索引
  3. 立即开始响应MCP搜索查询

需求

  • 码头工人
  • Docker Compose

配置

文件DB MCP无需配置即可工作,但您可以使用环境变量对其进行自定义:

  • EMBEDDING_MODEL -更改嵌入模型(默认:“jinaai/jina-embeddings-v2-base-code”或特定于项目的模型)
  • FAST_STARTUP -设置为“true”以使用较小的模型来加快启动速度(默认值:“false”)
  • QUANTIZATION -启用/禁用量化(默认值:“true”)
  • BINARY_EMBEDDINGS -启用/禁用二进制嵌入(默认值:“false”)
  • IGNORE_PATTERNS -以逗号分隔的要忽略的文件/目录列表

首次启动

首次运行时,Files DB MCP将下载嵌入模型,这可能需要几分钟的时间,具体取决于:

  • 所选型号的大小(高质量型号为300-500MB)
  • 您的互联网连接速度

后续的初创公司将更快,因为模型将缓存在持久的Docker卷中。为了更快地启动,您可以:

# Use a smaller, faster model (90MB)
EMBEDDING_MODEL=sentence-transformers/all-MiniLM-L6-v2 files-db-mcp

# Or enable fast startup mode
FAST_STARTUP=true files-db-mcp

模型缓存

Files DB MCP会自动保存下载的嵌入模型,因此您只需下载一次:

  • 模型存储在名为的Docker卷中 model_cache
  • 此卷在容器重启之间和不同项目之间持续存在
  • 使用计算机上的Files DB MCP为所有项目共享缓存
  • 您不需要为每个项目再次下载模型

Claude代码集成

添加到您的Claude代码配置中:

{
  "mcpServers": {
    "files-db-mcp": {
      "command": "python",
      "args": ["/path/to/src/claude_mcp_server.py", "--host", "localhost", "--port", "6333"]
    }
  }
}

有关详细信息,请参阅 Claude MCP集成.

文档

存储库结构

  • /src -源代码
  • /tests -单元和集成测试
  • /docs -文件
  • /scripts -实用程序脚本
  • /install -安装脚本
  • /.docker -Docker配置
  • /config -配置文件
  • /ai-assist -AI辅助文件

许可证

MIT许可证

贡献

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