本地化Claude上下文服务器

一个完全本地运行的Claude上下文服务器,使用PostgreSQL和pgvector替代云服务,支持多模态嵌入模型,确保隐私且无API成本。

  • by MikeO-AI
  • TypeScript
  • 本地部署
  • 16 星标
  • 更新于
在 GitHub 查看 MikeO-AI/claude-context-local

使用说明

克劳德当地语境

项目理念:本项目保留了原作的完整历史 克劳德语境 为了提高透明度和归因,但代表了 专注于隐私和本地运营的分歧分支。虽然最初的版本继续向云集成发展,但我们致力于 100%本地,隐私优先这两个项目服务于生态系统中的不同需求。

claude-context MCP服务器的本地首次实现,用本地替代方案取代云依赖关系,实现完全隐私和零API成本。

🚀 主要特点

  • 100%本地:没有外部API调用,所有处理都发生在您的计算机上
  • PostgreSQL+pgvector:用本地PostgreSQL替换Milvus/Zilliz Cloud
  • 奥利玛嵌入物:使用免费的开源模型而不是OpenAI
  • 隐私第一:你的代码永远不会离开你的机器
  • API成本为零:无订阅费或使用费
  • 多模式支持:Nomic嵌入模型支持文本和图像

⚡ 快速开始

先决条件

  1. 安装PostgreSQL和pgvector:
brew install postgresql@14 pgvector
brew services start postgresql@14
  1. 安装并配置Olama:
brew install ollama
ollama serve  # Start in a separate terminal
ollama pull DC1LEX/nomic-embed-text-v1.5-multimodal
  1. 设置数据库:
psql -U postgres -c "CREATE DATABASE embeddings;"
psql -U postgres -d embeddings -c "CREATE EXTENSION IF NOT EXISTS vector;"

安装

# Clone the repository
git clone https://github.com/MikeO-AI/claude-context-local.git
cd claude-context-local

# Install dependencies
pnpm install

# Build the project
pnpm build

# Test the integration
node test-postgres.js

运行MCP服务器

方法1:直接安装(推荐)

# First, validate your setup
node validate-mcp-setup.js

# Start with default settings (PostgreSQL on localhost, Ollama on localhost:11434)
node packages/mcp/dist/index-postgres.js

# Or with custom configuration
POSTGRES_HOST=your-db POSTGRES_PASSWORD=your-pass node packages/mcp/dist/index-postgres.js

方法2:NPM包

从npm全局安装:

npm install -g @mikeo-ai/claude-context-local-mcp
claude-context-local-mcp

# Or use with npx (recommended)
npx @mikeo-ai/claude-context-local-mcp@latest

方法3:Claude MCP添加命令

claude mcp add claude-context-local \
  -e EMBEDDING_PROVIDER=Ollama \
  -e POSTGRES_DATABASE=embeddings \
  -- npx @mikeo-ai/claude-context-local-mcp@latest

有关详细的设置说明,请参阅 MCP-SETUP-GUIDE.md

⚙️ 配置

Claude代码集成

添加到您的Claude代码配置中(~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "claude-context-local": {
      "command": "node",
      "args": ["/absolute/path/to/claude-context-local/packages/mcp/dist/index-postgres.js"],
      "env": {
        "EMBEDDING_PROVIDER": "Ollama",
        "OLLAMA_MODEL": "DC1LEX/nomic-embed-text-v1.5-multimodal",
        "OLLAMA_HOST": "http://localhost:11434",
        "POSTGRES_HOST": "localhost",
        "POSTGRES_PORT": "5432",
        "POSTGRES_DATABASE": "embeddings",
        "POSTGRES_USER": "postgres",
        "POSTGRES_PASSWORD": "postgres"
      }
    }
  }
}

环境变量

变量 默认值 描述
EMBEDDING_PROVIDER Ollama 嵌入提供者(Ollama推荐)
OLLAMA_MODEL DC1LEX/nomic-embed-text-v1.5-multimodal 使用Olama模型
OLLAMA_HOST http://localhost:11434 Ollama服务器URL
POSTGRES_HOST localhost PostgreSQL主机
POSTGRES_PORT 5432 PostgreSQL端口
POSTGRES_DATABASE embeddings 数据库名称
POSTGRES_USER postgres 数据库用户
POSTGRES_PASSWORD postgres 数据库密码

🐳 Docker设置(可选)

为了更容易部署,请使用Docker Compose:

# docker-compose.yml
version: '3.8'
services:
  postgres:
    image: pgvector/pgvector:pg16
    environment:
      POSTGRES_DB: embeddings
      POSTGRES_USER: postgres
      POSTGRES_PASSWORD: postgres
    ports:
      - "5432:5432"
    volumes:
      - postgres_data:/var/lib/postgresql/data

  ollama:
    image: ollama/ollama
    ports:
      - "11434:11434"
    volumes:
      - ollama_data:/root/.ollama
    command: serve

volumes:
  postgres_data:
  ollama_data:

然后:

docker-compose up -d
docker exec -it claude-context-local_ollama_1 ollama pull DC1LEX/nomic-embed-text-v1.5-multimodal

🔧 MCP工具

add_codebase

索引代码库目录以进行语义搜索:

add_codebase({
  path: "/path/to/your/project"
})

search_codebase

搜索索引代码库:

search_codebase({
  query: "authentication logic",
  path: "/path/to/your/project",
  limit: 10
})

📊 与原版比较

特性 原始(Milvus) 本地(PostgreSQL)
向量数据库 Milvus/Zilliz Cloud PostgreSQL+pgvector
嵌入 OpenAI/VoyageAI Ollama(本地)
隐私 数据发送到云端 100%本地
成本 API使用费 免费
安装 需要云帐户 本地安装
Internet 必需 不必需
尺寸 可变 768(可配置)

🙏 署名与归属

该项目基于 克劳德语境 靠近 齐利兹,根据麻省理工学院许可证获得许可。

发生了什么变化

  • 将Milvus/Zilliz Cloud替换为PostgreSQL+pgvector
  • 用Ollama替换OpenAI嵌入
  • 添加了多模式嵌入支持
  • 删除了所有外部API依赖项
  • 添加了全面的PostgreSQL实现

原始贡献者

📚 文档

🔍 故障排除

常见问题

  1. 未找到pgvector

    brew install pgvector
    psql -U postgres -d embeddings -c "CREATE EXTENSION vector;"
    
  2. Ollama连接失败

    ollama serve  # Start Ollama service
    
  3. 未找到型号

    ollama pull DC1LEX/nomic-embed-text-v1.5-multimodal
    

🗺️ 路线图

  • []SQLite支持更简单的设置
  • []额外的Olama车型支持
  • []用于代码库管理的Web UI
  • []增量索引
  • []Docker一键部署
  • []支持更多本地嵌入模型

🤝 贡献

欢迎投稿!这是一个社区项目,旨在为基于云的代码上下文解决方案提供完全本地的替代方案。

如何做出贡献

  1. 分叉存储库
  2. 创建要素分支
  3. 进行更改
  4. 提交拉取请求

贡献领域

  • 支持其他数据库(SQLite、DuckDB)
  • 更多嵌入模型集成
  • 性能优化
  • 文档改进
  • 测试和错误修复

📄 许可证

MIT许可证-请参阅 许可证 了解详情。

此项目包括来自的代码 克劳德语境 Zilliz也获得了麻省理工学院的许可。

⭐ 明星历史

如果你觉得这个项目有用,请考虑给它一颗星!


内置于❤️ 为社区 MikeO AI