JSPM

code-context-mcp

1.0.4
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 4
  • Score
    100M100P100Q37133F
  • License MIT

MCP server for semantic code search powered by MongoDB Atlas Vector Search and Voyage AI embeddings

Package Exports

  • code-context-mcp
  • code-context-mcp/dist/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (code-context-mcp) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

code-context-mcp

npm version License: MIT MCP Compatible

An MCP (Model Context Protocol) server that provides semantic code search capabilities to AI assistants using MongoDB Atlas Vector Search and Voyage AI embeddings.

🚀 Features

  • Semantic Code Search: Find relevant code based on meaning, not just keywords
  • MongoDB Atlas Vector Search: Unified platform for vectors and data
  • Voyage AI Embeddings: State-of-the-art code embeddings (MongoDB exclusive)
  • Native Hybrid Search: Combine vector and text search with MongoDB's $rankFusion
  • Real-time Sync: Automatic updates with MongoDB Change Streams
  • Multi-language Support: TypeScript, JavaScript, Python, Java, Go, Rust, C++

📋 Prerequisites

  1. MongoDB Atlas Account (Free tier available)

  2. Voyage AI API Key (200M tokens free)

🔧 Installation

For Claude Desktop

# Install globally
npm install -g code-context-mcp

# Or use npx (recommended)
npx code-context-mcp

Configuration

Add to your Claude Desktop configuration:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "code-context": {
      "command": "npx",
      "args": ["code-context-mcp"],
      "env": {
        "MONGODB_URI": "mongodb+srv://username:password@cluster.mongodb.net/",
        "VOYAGE_API_KEY": "va_xxx"
      }
    }
  }
}

For Other AI Assistants

Cursor

Add to ~/.cursor/mcp.json:

{
  "mcpServers": {
    "code-context": {
      "command": "npx",
      "args": ["code-context-mcp"],
      "env": {
        "MONGODB_URI": "mongodb+srv://...",
        "VOYAGE_API_KEY": "va_xxx"
      }
    }
  }
}

Windsurf

Add to your Windsurf configuration:

{
  "mcpServers": {
    "code-context": {
      "command": "npx",
      "args": ["code-context-mcp"],
      "env": {
        "MONGODB_URI": "mongodb+srv://...",
        "VOYAGE_API_KEY": "va_xxx"
      }
    }
  }
}

🛠️ Available Tools

The MCP server provides the following tools to AI assistants:

index_codebase

Index a codebase for semantic search.

{
  "path": "/path/to/project",
  "name": "my-project"
}

search_code

Search for code semantically.

{
  "projectPath": "/path/to/project",
  "query": "authentication middleware",
  "limit": 10,
  "threshold": 0.7
}

get_file_content

Retrieve specific file content.

{
  "projectPath": "/path/to/project",
  "relativePath": "src/auth.ts",
  "startLine": 10,
  "endLine": 50
}

list_indexed_projects

List all indexed projects.

clear_index

Clear the index for a project.

{
  "projectPath": "/path/to/project"
}

get_project_stats

Get statistics about an indexed project.

{
  "projectPath": "/path/to/project"
}

⚙️ Configuration

Environment Variables

Variable Description Required Default
MONGODB_URI MongoDB Atlas connection string -
VOYAGE_API_KEY Voyage AI API key -
MONGODB_DATABASE Database name code_context
MONGODB_COLLECTION Collection name embeddings
VOYAGE_MODEL Voyage AI model voyage-3.5
BATCH_SIZE Embedding batch size 10
MAX_FILE_SIZE Max file size (MB) 10

Voyage AI Models

Model Best For Performance
voyage-context-3 RAG systems, long documents +14.24% vs OpenAI
voyage-3-large Highest accuracy +9.74% vs OpenAI
voyage-3.5 General purpose (default) +8.26% vs OpenAI
voyage-3.5-lite High throughput +6.34% vs OpenAI
voyage-code-3 Source code Best for code

🏗️ MongoDB Atlas Setup

1. Create a Vector Search Index

In MongoDB Atlas:

  1. Navigate to your cluster
  2. Click "Search" → "Create Search Index"
  3. Choose "Atlas Vector Search"
  4. Use this configuration:
{
  "fields": [{
    "type": "vector",
    "path": "embedding",
    "numDimensions": 1024,
    "similarity": "cosine"
  }]
}

2. Enable Hybrid Search (Optional)

For MongoDB 8.0+, create both vector and text indexes:

{
  "mappings": {
    "fields": {
      "embedding": {
        "type": "knnVector",
        "dimensions": 1024,
        "similarity": "cosine"
      },
      "content": {
        "type": "string",
        "analyzer": "lucene.standard"
      }
    }
  }
}

📊 Performance

Based on 2025 benchmarks:

  • Storage: 83% less than competitors with int8 quantization
  • Accuracy: Up to 14.24% better retrieval than OpenAI
  • Speed: Native hybrid search 30% faster
  • Cost: 96% storage reduction with binary quantization

🔍 Example Usage in Claude

Once configured, you can use natural language commands:

"Index my TypeScript project at /Users/me/my-project"

"Search for authentication middleware in my-project"

"Show me the implementation of the UserService class"

"Find all database connection code"

"What files handle error logging?"

🐛 Troubleshooting

Connection Issues

  1. MongoDB Connection Failed

    • Verify your connection string
    • Check IP whitelist in Atlas
    • Ensure cluster is running
  2. Voyage AI Authentication Failed

    • Verify API key is correct
    • Check API key has credits
  3. MCP Not Responding

    • Check logs in stderr
    • Verify environment variables
    • Restart AI assistant

Debug Mode

Set DEBUG=true in environment variables for verbose logging:

{
  "env": {
    "DEBUG": "true",
    "MONGODB_URI": "...",
    "VOYAGE_API_KEY": "..."
  }
}

🤝 Contributing

Contributions are welcome! Please see our Contributing Guide.

📄 License

MIT License - see LICENSE for details.


Built with 💚 by MongoDB and Voyage AI