Skip to main content
Glama

Zoekt MCP Server

by divar-ir

Zoekt MCP Server

A Model Context Protocol (MCP) server that provides code search capabilities powered by Zoekt, the indexed code search engine used by Sourcegraph.

Table of Contents

Overview

This MCP server integrates with Zoekt, a text search engine optimized for code repositories. Zoekt provides trigram-based indexing for searches across large codebases, making it suitable for AI assistants that need to find and understand code patterns.

Features

  • Code Search: Search across codebases using Zoekt's trigram indexing
  • Advanced Query Language: Support for regex patterns, file filters, language filters, and boolean operators
  • Repository Discovery: Find repositories by name and explore their structure
  • Content Fetching: Browse repository files and directories
  • AI Integration: Designed for LLM integration with guided search prompts

Prerequisites

  • Zoekt Instance: You need access to a running Zoekt search server. See the Zoekt documentation for setup instructions.
  • Python 3.10+: Required for running the MCP server
  • UV (optional): Modern Python package manager for easier dependency management

Installation

# Install dependencies uv sync # Run the server uv run zoekt-mcp

Using pip

# Create virtual environment python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate # Install package pip install -e . # Run the server python -m src.main

Using Docker

# Build the image docker build -t zoekt-mcp . # Run the container with default ports docker run -p 8000:8000 -p 8080:8080 \ -e ZOEKT_API_URL=http://your-zoekt-instance \ zoekt-mcp # Or run with custom ports docker run -p 9000:9000 -p 9080:9080 \ -e ZOEKT_API_URL=http://your-zoekt-instance \ -e MCP_SSE_PORT=9000 \ -e MCP_STREAMABLE_HTTP_PORT=9080 \ zoekt-mcp

Configuration

Required Environment Variables

  • ZOEKT_API_URL: URL of your Zoekt search instance

Optional Environment Variables

  • MCP_SSE_PORT: SSE server port (default: 8000)
  • MCP_STREAMABLE_HTTP_PORT: HTTP server port (default: 8080)

Usage with AI Tools

Cursor

After running the MCP server, add the following to your .cursor/mcp.json file:

{ "mcpServers": { "zoekt": { "url": "http://localhost:8080/zoekt/mcp/" } } }

MCP Tools

This server provides three powerful tools for AI assistants:

Search across indexed codebases using Zoekt's advanced query syntax with support for regex, language filters, and boolean operators.

📖 search_prompt_guide

Generate a context-aware guide for constructing effective search queries based on your specific objective.

📂 fetch_content

Retrieve file contents or explore directory structures from indexed repositories.

Development

Linting and Formatting

# Check code style uv run ruff check src/ # Format code uv run ruff format src/
-
security - not tested
A
license - permissive license
-
quality - not tested

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

An MCP server that provides code search capabilities for AI tools and LLMs using Zoekt, allowing for searching across codebases with advanced query syntax and content fetching.

  1. Table of Contents
    1. Overview
      1. Features
        1. Prerequisites
          1. Installation
            1. Using UV (recommended)
            2. Using pip
            3. Using Docker
          2. Configuration
            1. Required Environment Variables
            2. Optional Environment Variables
          3. Usage with AI Tools
            1. Cursor
          4. MCP Tools
            1. 🔍 search
            2. 📖 search_prompt_guide
            3. 📂 fetch_content
          5. Development
            1. Linting and Formatting

          Related MCP Servers

          • A
            security
            A
            license
            A
            quality
            The Search MCP Server enables seamless integration of network and local search capabilities in tools like Claude Desktop and Cursor, utilizing the Brave Search API for high-concurrency and asynchronous requests.
            Last updated -
            1
            71
            Python
            MIT License
            • Linux
          • -
            security
            F
            license
            -
            quality
            An MCP server that integrates real-time web search capabilities into AI assistants using the Exa API, providing both basic and advanced search functionality with formatted markdown results.
            Last updated -
            141
            Python
            • Linux
            • Apple
          • -
            security
            A
            license
            -
            quality
            An MCP server that provides semantic search over local git repositories, enabling users to clone repositories, process branches, and search code through vectorized code chunks.
            Last updated -
            11
            TypeScript
            MIT License
            • Apple
          • -
            security
            A
            license
            -
            quality
            An MCP server that enables AI assistants like Claude Desktop to search and retrieve information from custom search indexes created with Searchcraft.
            Last updated -
            5
            TypeScript
            Apache 2.0

          View all related MCP servers

          MCP directory API

          We provide all the information about MCP servers via our MCP API.

          curl -X GET 'https://glama.ai/api/mcp/v1/servers/divar-ir/zoekt-mcp'

          If you have feedback or need assistance with the MCP directory API, please join our Discord server