MCP.so
Sign In

Sourcebot

@sourcebot-dev

About Sourcebot

Fetch code context from multiple code hosts (GitHub, GitLab, Bitbucket, etc)

Config

Add this server to your MCP-compatible client using the configuration below.

{
  "mcpServers": {
    "sourcebot": {
      "command": "npx",
      "args": [
        "-y",
        "@sourcebot/mcp@latest"
      ]
    }
  }
}

Tools

7

Searches for code that matches the provided search query as a substring by default, or as a regular expression if useRegex is true. Useful for exploring remote repositories by searching for exact symbols, functions, variables, or specific code patterns. To determine if a repository is indexed, use the `list_repos` tool. By default, searches are global and will search the default branch of all repositories. Searches can be scoped to specific repositories, languages, and branches. When referencing code outputted by this tool, always include the file's external URL as a link. This makes it easier for the user to view the file, even if they don't have it locally checked out.

Get a list of commits for a given repository.

Lists repositories in the organization with optional filtering and pagination.

Reads the source code for a given file.

Lists files and directories from a repository path. This can be used as a repo tree tool or directory listing tool. Returns a flat list of entries with path metadata and depth relative to the requested path.

Lists the available language models configured on the Sourcebot instance. Use this to discover which models can be specified when calling ask_codebase.

Ask a natural language question about the codebase. This tool uses an AI agent to autonomously search code, read files, and find symbol references/definitions to answer your question. The agent will: - Analyze your question and determine what context it needs - Search the codebase using multiple strategies (code search, symbol lookup, file reading) - Synthesize findings into a comprehensive answer with code references Returns a detailed answer in markdown format with code references, plus a link to view the full research session (including all tool calls and reasoning) in the Sourcebot web UI. When using this in shared environments (e.g., Slack), you can set the visibility parameter to 'PUBLIC' to ensure everyone can access the chat link. This is a blocking operation that may take 30-60+ seconds for complex questions as the agent researches the codebase.

Overview

What is Sourcebot?

Sourcebot is the open source Sourcegraph alternative. It indexes all repos and branches across multiple code hosts (GitHub, GitLab, Bitbucket, Gitea, or Gerrit) and searches through them using a blazingly fast interface.

How to use Sourcebot?

Deploy Sourcebot in seconds using the official Docker image: create a config.json, run the provided docker run command, and start searching at http://localhost:3000. Full configuration details are available in the docs.

Key features of Sourcebot

  • One-command deployment using Docker.
  • Multi-repo search across GitHub, GitLab, Bitbucket, Gitea, Gerrit.
  • Lightning fast performance built on the Zoekt search engine.
  • Modern web app with syntax highlighting, light/dark mode, vim-style navigation.
  • Full file visualization showing the entire file for any search result.

Use cases of Sourcebot

  • Index and search multiple public and private repositories across different code hosts.
  • Search across multiple branches within repositories.
  • Self-host a fast, open source alternative to Sourcegraph.
  • Enable team‑wide code search without sending data to third‑party services.

FAQ from Sourcebot

What is the difference between Sourcebot and alternatives?

Sourcebot is an open source, self‑hosted Sourcegraph alternative designed for one‑command Docker deployment and multi‑repo search.

What are the system requirements to run Sourcebot?

Docker is required; the official Docker image from ghcr.io/sourcebot-dev/sourcebot:latest handles all dependencies.

Where does Sourcebot store data?

Sourcebot persists a .sourcebot cache and .zoekt index files in the mounted volume (specified with -v $(pwd):/data).

Does Sourcebot collect telemetry?

Yes, anonymous usage data is collected by default to help improve the product. No sensitive data is collected, and telemetry can be disabled by setting the environment variable SOURCEBOT_TELEMETRY_DISABLED=true.

What code host authentication does Sourcebot support?

Authentication is configured per connection in the config.json file (e.g., GitHub repos require a token if private). The README shows a starter connection using a public repo without explicit credentials.

Frequently asked questions

What is the difference between Sourcebot and alternatives?

Sourcebot is an open source, self‑hosted Sourcegraph alternative designed for one‑command Docker deployment and multi‑repo search.

What are the system requirements to run Sourcebot?

Docker is required; the official Docker image from `ghcr.io/sourcebot-dev/sourcebot:latest` handles all dependencies.

Where does Sourcebot store data?

Sourcebot persists a `.sourcebot` cache and `.zoekt` index files in the mounted volume (specified with `-v $(pwd):/data`).

Does Sourcebot collect telemetry?

Yes, anonymous usage data is collected by default to help improve the product. No sensitive data is collected, and telemetry can be disabled by setting the environment variable `SOURCEBOT_TELEMETRY_DISABLED=true`.

What code host authentication does Sourcebot support?

Authentication is configured per connection in the config.json file (e.g., GitHub repos require a token if private). The README shows a starter connection using a public repo without explicit credentials.

Comments

More Version Control MCP servers