返回市场
文件数据库MCP

文件数据库MCP

作者:randomm6 星标更新:2025-07-17

项目介绍

MseeP.ai 安全评估徽章

Files-DB-MCP:代码项目的向量搜索

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

特性

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

安装

方案1:克隆并设置(推荐)

# 使用SSH(如果你已经设置了GitHub的SSH密钥)
git clone git@github.com:randomm/files-db-mcp.git ~/.files-db-mcp && bash ~/.files-db-mcp/install/setup.sh

# 使用HTTPS(如果你没有设置SSH密钥)
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
  • Docker Compose

配置

Files-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卷中。为了加快初始启动速度,你可以:

# 使用较小、较快的模型(90MB)
EMBEDDING_MODEL=sentence-transformers/all-MiniLM-L6-v2 files-db-mcp

# 或启用快速启动模式
FAST_STARTUP=true files-db-mcp

模型缓存

Files-DB-MCP会自动持久化下载的嵌入模型,因此你只需下载一次:

  • 模型存储在一个名为 model_cache 的Docker卷中
  • 这个卷在容器重启之间以及不同项目之间都保持不变
  • 缓存在你的机器上所有使用Files-DB-MCP的项目间共享
  • 对于每个项目,你不需要再次下载模型

Claude Code 集成

添加到你的Claude Code配置中:

{
  "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许可证

贡献

欢迎贡献!请随时提交拉取请求。