drio
Open app

Local Code Indexing for Cursor

Source

ChromaDB-powered local indexing support for Cursor, exposed as an MCP server

Catalog onlyCatalog onlySTDIO

Overview

Local Code Indexing for Cursor is an experimental Python-based server that locally indexes codebases using ChromaDB and provides a semantic search tool via an MCP (Model Context Protocol) server for tools like Cursor.

To use this project, clone the repository, set up your environment variables, start the indexing server using Docker, and configure Cursor to use the local search server.

  • Local indexing of codebases using ChromaDB - Semantic search capabilities for code - Integration with Cursor IDE for enhanced code navigation
  1. Indexing multiple project folders for efficient code search.
  2. Enhancing code navigation in Cursor IDE with semantic search.
  3. Facilitating quick access to code functionalities through local vector searches.

Add to your AI client

Use these steps to connect Local Code Indexing for Cursor in Cursor, Claude, VS Code, and other MCP-compatible apps. The same JSON appears in the Use with menu above for one-click copy.

Cursor

Add this to your .cursor/mcp.json file in your project root, then restart Cursor.

.cursor/mcp.json

{
  "mcpServers": {
    "cursor-local-indexing-luotocompany": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-cursor-local-indexing-luotocompany"
      ]
    }
  }
}

Claude Desktop

Add this server entry to the mcpServers object in your Claude Desktop config, then restart the app.

~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)

{
  "mcpServers": {
    "cursor-local-indexing-luotocompany": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-cursor-local-indexing-luotocompany"
      ]
    }
  }
}

Claude Code

Add this to your project's .mcp.json file. Claude Code will detect it automatically.

.mcp.json (project root)

{
  "mcpServers": {
    "cursor-local-indexing-luotocompany": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-cursor-local-indexing-luotocompany"
      ]
    }
  }
}

VS Code (Copilot)

Add this to your .vscode/mcp.json file. Requires the GitHub Copilot extension with MCP support enabled.

.vscode/mcp.json

{
  "servers": {
    "cursor-local-indexing-luotocompany": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-cursor-local-indexing-luotocompany"
      ]
    }
  }
}

Windsurf

Add this to your Windsurf MCP config file, then restart Windsurf.

~/.codeium/windsurf/mcp_config.json

{
  "mcpServers": {
    "cursor-local-indexing-luotocompany": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-cursor-local-indexing-luotocompany"
      ]
    }
  }
}

Cline

Open Cline settings, navigate to MCP Servers, and add this server configuration.

Cline MCP Settings (via UI)

{
  "mcpServers": {
    "cursor-local-indexing-luotocompany": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-cursor-local-indexing-luotocompany"
      ]
    }
  }
}

FAQ

What is ChromaDB?

ChromaDB is a database designed for managing and querying vector embeddings, which is used for semantic search.

How do I configure the projects to index?

You can specify the projects to index in the `.env` file under the `FOLDERS_TO_INDEX` variable.

Is this project suitable for large codebases?

Yes, it is designed to handle multiple projects and can be optimized for larger codebases.7:["$","div",null,{"className":"container mx-auto flex flex-col gap-4","children":["$L26","$L27",["$","$L28",null,{"currentProject":{"id":3512,"uuid":"edb879c0-073d-4bb1-9054-e32e8e0846bb","name":"cursor-local-indexing","title":"Local Code Indexing for Cursor","description":"ChromaDB-powered local indexing support for Cursor, exposed as an MCP server","avatar_url":"https://avatars.githubusercontent.com/u/37174172?v=4","created_at":"2025-03-20T00:39:09.350Z","updated_at":"2025-03-20T01:29:49.475Z","status":"created","author_name":"LuotoCompany","author_avatar_url":"https://avatars.githubusercontent.com/u/37174172?v=4","tags":"[]","category":"developer-tools","is_featured":false,"sort":1,"url":"https://github.com/LuotoCompany/cursor-local-indexing","target":"_self","content":"$29","summary":"$2a","img_url":null,"type":null,"metadata":"{\"star\":\"5\",\"license\":\"\",\"language\":\"Python\",\"is_official\":false,\"latest_commit_time\":\"2025-03-20 11:05:55\"}","user_uuid":null,"tools":null,"sse_url":null,"sse_provider":null,"sse_params":null,"is_official":false,"server_command":null,"server_params":null,"server_config":null,"allow_call":false,"is_innovation":false,"is_dxt":false,"dxt_manifest":null,"dxt_file_url":null,"is_audit":false},"randomProjects":[],"currentServerKey":"$undefined"}]]}]