Getting Started & Installation
Relevant source files
The following files were used as context for generating this wiki page:
Introduction
Memory Context Browser (MCB) is a high-performance Model Context Protocol (MCP) server designed to provide AI coding agents with persistent memory, semantic code search, and codebase understanding. It leverages a multi-provider architecture for embeddings and vector storage, alongside tree-sitter parsing for AST-aware analysis across 14 programming languages.
The installation process transforms the Rust source code into a functional system service capable of integrating with MCP-compatible clients like Claude Desktop. This guide covers the prerequisites, build steps, and initial configuration required to deploy MCB within a development environment.
Sources: README.md:1-12, README.md:16-24
Prerequisites
Before installing MCB, the following components must be available on the host system:
- Rust Toolchain: Version 1.92+ (stable) is required for compilation.
- Build Tools:
makeand a POSIX-compliant shell are used for task automation. - Embedding Provider: A valid source for vector embeddings, which can be local (e.g., Ollama, FastEmbed) or API-based (e.g., OpenAI, Gemini).
Sources: README.md:28-32, AGENTS.md:143-145
Build and System Installation
The project utilizes a Makefile to orchestrate the build and installation process. The standard workflow involves cloning the repository, compiling the binary in release mode, and installing it as a system service.
# Clone the repository
git clone https://github.com/marlonsc/mcb.git
cd mcb
# Build release binary
make build RELEASE=1
# Install as a systemd user service
make install
Sources: README.md:34-44
Installation Logic Flow
The installation process not only compiles the binary but also manages configuration placement and service registration.
The make release WHAT=install APPLY=Y command specifically handles building the binary, deploying configuration files to the user's home directory, updating MCP client configurations, and managing the mcb systemd service.
Sources: README.md:42-44, AGENTS.md:209-213
Configuration Reference
MCB is configured via environment variables and profile-specific YAML files located in the config/ directory.
Core Environment Variables
Users must define their embedding provider during the initial setup to enable semantic search capabilities.
| Variable | Description | Example Values |
|---|---|---|
EMBEDDING_PROVIDER | The source for vector embeddings | fastembed, ollama, openai |
OLLAMA_BASE_URL | URL for local Ollama instance | http://localhost:11434 |
OPENAI_API_KEY | API Key for OpenAI services | sk-your-key |
Sources: README.md:46-60
Runtime Profiles
Configuration is loaded based on the environment profile, which defines ports and storage backends.
- Development: Uses port
3000, SQLite, and Ollama embeddings. - Test: Uses dynamic port
0, FastEmbed, and EdgeVec for isolated testing. - Production: Uses port
8080, SQLite, and includes admin API key enforcement.
Sources: AGENTS.md:231-238
MCP Client Integration
To integrate MCB with Claude Desktop, the server must be added to the claude_desktop_config.json file. This allows the AI agent to invoke MCB's tools via the standard protocol.
{
"mcpServers": {
"mcb": {
"command": "mcb",
"args": ["serve", "--stdio"]
}
}
}
Sources: README.md:65-75
Tool Families
Upon successful installation, MCB exposes 24 tools across several families:
Sources: README.md:79-92, AGENTS.md:243-254
Development Verification
After installation, developers can verify the integrity of the build and architecture using built-in quality gates.
| Command | Purpose |
|---|---|
make test | Runs all 1700+ unit and integration tests |
make lint | Performs Clippy and format checks |
make validate | Enforces Clean Architecture rules via mcb-validate |
make check | Full pipeline execution (fmt + lint + test + validate) |
The make validate command is critical for ensuring that layer boundaries (Domain, Infrastructure, Server) are respected according to the project's Clean Architecture principles.
Sources: README.md:112-119, codex.md:10-15, config/mcb-validate.toml:23-31
Conclusion
Setting up MCB involves a standard Rust build process followed by specific configuration of embedding providers. By utilizing the provided Makefile and integrating with an MCP client, users can establish a persistent memory and semantic search layer for AI-assisted development. Adherence to the defined quality gates during installation ensures the server operates within its intended architectural boundaries.
Sources: README.md:139-141, AGENTS.md:286-292