Allows running the server using Docker containers through docker-compose for easy setup and deployment
Enables configuration of the server through environment variables stored in a .env file
Allows for cloning repositories to be indexed by the service
The server is built on Python and uses it for code indexing functionality
Local Code Indexing for Cursor
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.
Setup
Clone and enter the repository:
git clone <repository-url> cd cursor-local-indexingCreate a
.envfile by copying.env.example:cp .env.example .envConfigure your
.envfile:PROJECTS_ROOT=~/your/projects/root # Path to your projects directory FOLDERS_TO_INDEX=project1,project2 # Comma-separated list of folders to indexExample:
PROJECTS_ROOT=~/projects FOLDERS_TO_INDEX=project1,project2Start the indexing server:
docker-compose up -dConfigure Cursor to use the local search server: Create or edit
~/.cursor/mcp.json:{ "mcpServers": { "workspace-code-search": { "url": "http://localhost:8978/sse" } } }Restart Cursor IDE to apply the changes.
The server will start indexing your specified projects, and you'll be able to use semantic code search within Cursor when those projects are active.
Open a project that you configured as indexed.
Create a .cursorrules file and add the following:
Start using the Cursor Agent mode and see it doing local vector searches!