Skip to main content

Sourcegraph MCP Server

A Model Context Protocol (MCP) server that provides AI-enhanced code search capabilities using Sourcegraph.

Table of Contents

Overview

This MCP server integrates with Sourcegraph, a universal code search platform that enables searching across multiple repositories and codebases. It provides powerful search capabilities with advanced query syntax, making it ideal for AI assistants that need to find and understand code patterns across large codebases.

Features

  • Code Search: Search across codebases using Sourcegraph's powerful query language
  • 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

  • Sourcegraph Instance: Access to a Sourcegraph instance (either sourcegraph.com or self-hosted)
  • Python 3.10+: Required for running the MCP server
  • UV (optional): Modern Python package manager for easier dependency management

Installation

Using UV (recommended)

# Install dependencies
uv sync

# Run the server
uv run python -m src.main

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 sourcegraph-mcp .

# Run the container with default ports
docker run -p 8000:8000 -p 8080:8080 \
  -e SRC_ENDPOINT=https://sourcegraph.com \
  -e SRC_ACCESS_TOKEN=your-token \
  sourcegraph-mcp

# Or run with custom ports
docker run -p 9000:9000 -p 9080:9080 \
  -e SRC_ENDPOINT=https://sourcegraph.com \
  -e SRC_ACCESS_TOKEN=your-token \
  -e MCP_SSE_PORT=9000 \
  -e MCP_STREAMABLE_HTTP_PORT=9080 \
  sourcegraph-mcp

Configuration

Required Environment Variables

Optional Environment Variables

  • SRC_ACCESS_TOKEN: Authentication token for private Sourcegraph instances
  • 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": {
    "sourcegraph": {
      "url": "http://localhost:8080/sourcegraph/mcp/"
    }
   }
}

MCP Tools

This server provides three powerful tools for AI assistants:

🔍 search

Search across codebases using Sourcegraph'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 repositories.

Development

Linting and Formatting

# Check code style
uv run ruff check src/

# Format code
uv run ruff format src/

Metadata

Release files for iflow-mcp_divar-ir_sourcegraph-mcp 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for iflow-mcp_divar-ir_sourcegraph-mcp 0.1.0
File Size Uploaded
iflow_mcp_divar_ir_sourcegraph_mcp-0.1.0.tar.gz 16.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for iflow-mcp_divar-ir_sourcegraph-mcp 0.1.0
File Interpreter ABI Platform
iflow_mcp_divar_ir_sourcegraph_mcp-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 37.9 kB

Release files / iflow_mcp_divar_ir_sourcegraph_mcp-0.1.0.tar.gz

Download URL iflow_mcp_divar_ir_sourcegraph_mcp-0.1.0.tar.gz
Size 16.8 kB
Tags Source
SHA-256 checksum
How to use checksums
4e41e29568fd2a57d92aae08cc77e1742159d2cc04c2ae07c383e24430700a84
BLAKE2b-256 checksum
How to use checksums
b99b1c0a805c538ecd6f5482dff15cf8c9fe63f69a84caf3b288996213fe8851
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / iflow_mcp_divar_ir_sourcegraph_mcp-0.1.0-py3-none-any.whl

Download URL iflow_mcp_divar_ir_sourcegraph_mcp-0.1.0-py3-none-any.whl
Size 21.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5b101d874ef570102a890e14b8ff36258b525b2c1cbfb047000fcf84975b1609
BLAKE2b-256 checksum
How to use checksums
f0abf8bf85301862904684580b3ed7cd13128d0dc3b70ff86bbcbf54cc70995f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page