Workspace Qdrant MCP
workspace-qdrant-mcp
Векторная база данных с привязкой к проекту для ИИ-ассистентов, обеспечивающая гибридный семантический и ключевой поиск с автоматическим обнаружением проектов.
Возможности
Гибридный поиск — сочетает семантическое сходство с сопоставлением по ключевым словам с использованием Reciprocal Rank Fusion (RRF).
Обнаружение проектов — автоматическое распознавание репозиториев Git и создание коллекций с привязкой к проекту.
6 инструментов MCP — search, retrieve, rules, store, grep, list.
Интеллектуальный анализ кода — семантическая нарезка Tree-sitter + интеграция с LSP для активных проектов.
Граф кода — граф связей с алгоритмами (PageRank, обнаружение сообществ, центральность по посредничеству).
Высокопроизводительный CLI — инструмент командной строки
wqmна языке Rust.Фоновый демон —
memexdдля непрерывного мониторинга и обработки файлов.
Быстрый старт
Предварительные требования
Qdrant —
docker run -d -p 6333:6333 -v qdrant_storage:/qdrant/storage qdrant/qdrantC-компилятор — необходим для компиляции грамматик Tree-sitter при первом использовании. Грамматики Tree-sitter распространяются в виде исходного кода на C и компилируются локально.
macOS:
xcode-select --install(инструменты командной строки Xcode)Linux:
apt install build-essential(Debian/Ubuntu) илиdnf groupinstall "Development Tools"(Fedora)Windows: Установите Visual Studio Build Tools с рабочей нагрузкой C++.
Установка
Вариант 1: Homebrew (рекомендуется — macOS и Linux)
brew install ChrisGVE/tap/workspace-qdrant
brew services start workspace-qdrantВариант 2: Готовые бинарные файлы
# macOS / Linux
curl -fsSL https://raw.githubusercontent.com/ChrisGVE/workspace-qdrant-mcp/main/scripts/download-install.sh | bash
# Windows (PowerShell)
irm https://raw.githubusercontent.com/ChrisGVE/workspace-qdrant-mcp/main/scripts/download-install.ps1 | iexУстанавливает wqm и memexd в ~/.local/bin (Linux/macOS) или %LOCALAPPDATA%\wqm\bin (Windows).
Вариант 3: Сборка из исходного кода
git clone https://github.com/ChrisGVE/workspace-qdrant-mcp.git
cd workspace-qdrant-mcp
./install.shПодробные инструкции и примечания для конкретных платформ см. в справочнике по установке. Для Windows см. Руководство по установке в Windows.
Настройка MCP
Claude Desktop (claude_desktop_config.json):
{
"mcpServers": {
"workspace-qdrant-mcp": {
"command": "node",
"args": ["/path/to/workspace-qdrant-mcp/src/typescript/mcp-server/dist/index.js"],
"env": {
"QDRANT_URL": "http://localhost:6333"
}
}
}
}Claude Code:
claude mcp add workspace-qdrant-mcp -- node /path/to/workspace-qdrant-mcp/src/typescript/mcp-server/dist/index.jsПроверка
wqm --version
wqm status healthИнтеграция с CLAUDE.md
Добавьте следующее в файл CLAUDE.md вашего проекта (или в глобальный ~/.claude/CLAUDE.md), чтобы Claude Code активно использовал workspace-qdrant:
## workspace-qdrant
The `workspace-qdrant` MCP server provides codebase-aware search, a library knowledge base, a scratchpad for accumulated insights, and persistent behavioral rules. The tool schemas are self-describing; these instructions cover *when* and *how* to use them.
### Primary Search and Knowledge Base
**Use `workspace-qdrant` first whenever context is uncertain** — first session on a project, returning after a significant gap, or exploring an unfamiliar subsystem. It is faster and more accurate than walking files manually, and it retrieves findings from prior sessions that would otherwise be lost.
**Three-step protocol:**
1. **Search** with `workspace-qdrant` (`search`, `grep`, `list`, or `retrieve`)
2. **Fall back** to `Grep`, `Glob`, `WebSearch` only when workspace-qdrant is insufficient or unavailable
3. **Store** any new findings, analysis, or design rationale via `store` so they are retrievable in future sessions
When a fresh handover or strong prior context already covers what you need, skip the exploratory search — but always store new findings at the end.
**Collections and their purpose:**
- `projects` — indexed codebase; use `scope="project"` (current project) or `scope="all"` (across all projects)
- `libraries` — external reference docs, API specs, third-party documentation; add via `store` with `collection="libraries"` and search with `includeLibraries=true`
- `scratchpad` — analysis, design rationale, research transcripts, architectural insights; complements session handovers by building a growing, semantically searchable knowledge layer across sessions
- `rules` — persistent behavioral rules; load at session start via `rules` → `action="list"`
**Practical notes:**
- Use `grep` for exact strings or regex; `list` with `format="summary"` to explore project structure
- Store external docs or specs into `libraries` so they are searchable alongside code
- Use the scratchpad to record *why* decisions were made, not just *what* was done — future sessions can retrieve the reasoning
### Sub-Agents
Sub-agents start with only the prompt you give them — they have no session history or handover context. They must always use `workspace-qdrant` first for any code exploration, without exception. Include this verbatim in every agent prompt:
> "You have no prior context about this codebase. Use `workspace-qdrant` as your mandatory first tool for ALL code searches — symbols, functions, architecture, patterns, prior findings. Use `search`, `grep`, `list`, or `retrieve` before touching any file with Read/Grep/Glob. Store any new findings, analysis, or design rationale via `store` (scratchpad for insights, libraries for reference docs) so they persist for future sessions."
### Project Registration
At session start, check whether the current project is registered with workspace-qdrant. If it is not, ask the user whether they want to register it (do not register silently). Once registered, the daemon handles file watching and ingestion automatically — no further action is needed.
### Behavioral Rules
The `rules` tool manages persistent rules that are injected into context across sessions. Rules are **user-initiated only** — add rules when the user explicitly instructs you to, never autonomously. Use `action="list"` at session start to load active rules.
### Issue Reporting
workspace-qdrant is under active development. If you encounter errors, unexpected behavior, or limitations with any workspace-qdrant tool, report them as GitHub issues at https://github.com/ChrisGVE/workspace-qdrant-mcp/issues using the `gh` CLI.Инструменты MCP
Инструмент | Назначение |
| Гибридный семантический поиск + поиск по ключевым словам по индексированному контенту |
| Прямой поиск документа по ID или фильтру метаданных |
| Управление постоянными правилами поведения |
| Хранение контента, регистрация проектов, сохранение заметок |
| Поиск точной подстроки или регулярного выражения с использованием FTS5 |
| Список файлов проекта и структура папок |
Параметры и примеры см. в справочнике по инструментам MCP.
Коллекции
Коллекция | Назначение | Изоляция |
| Код проекта и документация | Мультиарендность по |
| Справочная документация (книги, статьи, доки) | Мультиарендность по |
| Правила поведения и предпочтения | Мультиарендность по |
| Временное рабочее хранилище | Для каждой сессии |
Справочник CLI
# Service management
wqm service start # Start background daemon
wqm service status # Check daemon status
wqm status health # System health check
# Search and content
wqm search "query" # Search collections
wqm ingest file path.py # Ingest a file
wqm rules list # List behavioral rules
# Project and library
wqm project list # List registered projects
wqm project watch pause # Pause file watchers
wqm library list # List libraries
wqm tags list # List tags with counts
# Administration
wqm admin collections list # List collections
wqm admin rebuild all # Rebuild all indexes
wqm admin backup create # Backup snapshots
wqm admin stats overview # Search analytics
# Code graph
wqm graph stats --tenant <t> # Node/edge counts
wqm graph query --node-id <id> --tenant <t> --hops 2 # Related nodes
wqm graph impact --symbol <name> --tenant <t> # Impact analysis
wqm graph pagerank --tenant <t> --top-k 20 # PageRank centrality
# Setup
wqm init completions zsh # Shell completions
wqm init man install # Install man pages
wqm init hooks install # Install Claude Code hooks
# Queue and monitoring
wqm queue stats # Queue statisticsПолную документацию см. в справочнике CLI.
Конфигурация
Переменные окружения
Переменная | По умолчанию | Описание |
|
| URL сервера Qdrant |
| - | API-ключ (требуется для Qdrant Cloud) |
|
| Модель эмбеддингов |
Архитектура
+-----------------+
| Claude/Client |
+--------+--------+
|
+--------v--------+
| MCP Server | (TypeScript)
+--------+--------+
|
+--------------+--------------+
| |
+--------v--------+ +--------v--------+
| Rust Daemon | | Qdrant |
| (memexd) | | Vector Database |
+--------+--------+ +-----------------+
|
+--------v--------+
| File Watcher |
| Code Graph |
| Embeddings |
+-----------------+Демон на Rust обрабатывает отслеживание файлов, генерацию эмбеддингов, извлечение графа кода и обработку очереди. Все операции записи проходят через демон для обеспечения согласованности.
Документация
Руководства пользователя:
Быстрый старт — запуск за 5 минут
Руководство пользователя — полное руководство по использованию
Интеграция с LLM — лучшие практики для Claude
Справочные материалы:
Справочник CLI — все команды
wqmИнструменты MCP — параметры инструментов и примеры
Конфигурация — все опции и значения по умолчанию
Архитектура — обзор компонентов
См. Индекс документации для спецификаций, ADR и ресурсов для разработчиков.
Разработка
# TypeScript MCP server
cd src/typescript/mcp-server && npm install && npm run build && npm test
# Rust daemon and CLI (from src/rust/)
cargo build --release
cargo test
# Graph benchmarks
cargo bench --package workspace-qdrant-core --bench graph_bench
# Binaries output to:
# - target/release/wqm
# - target/release/memexdУчастие в разработке
См. CONTRIBUTING.md для настройки среды разработки и руководящих принципов.
Лицензия
Лицензия MIT — подробности см. в LICENSE.
Вдохновлено claude-qdrant-mcp
Latest Blog Posts
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/ChrisGVE/workspace-qdrant-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server