
searchcraft
sathergate
343 звёзд
Searchcraft — MCP-сервер для полнотекстового поиска в приложениях Next.js. Он использует алгоритм BM25 для ранжирования результатов и поддерживает нечёткое совпадение (fuzzy matching). Главное отличие — сервер не требует внешних сервисов. Никакого Elasticsearch, Algolia или Redis. Вся логика поиска работает в рантайме Next.js на чистом TypeScript. Сервер индексирует документы прямо в памяти и настраивает вес полей — заголовок может быть в два раза важнее контента. Это даёт релевантные результаты без сложной инфраструктуры. Searchcraft подходит для блогов, документации, каталогов товаров и любых проектов Next.js, где нужен быстрый поиск по тексту.
Установка
npx -y searchcraftХарактеристики
Общее
- СтатусСообщество
- Разработчикsathergate
Технологии
- ЯзыкиTypeScript
- Транспортstdio
Описание
Возможности
- BM25-ранжирование — результаты сортируются по релевантности, а не по алфавиту или дате
- Схема индекса — задайте вес для каждого поля документа (заголовок, описание, контент)
- Нечёткое совпадение — поиск находит результаты, даже если в запросе есть опечатки или похожие слова
- Индексация в памяти — не требует установки и настройки внешних баз данных
- Zero-конфиг запуск — сервер поднимается одной командой npx -y searchcraft
- Полная типизация — TypeScript SDK помогает избежать ошибок на этапе компиляции
- Zero-зависимости — пакет работает без внешних библиотек
- Интеграция с AI-агентами — через MCP-протокол поиском могут управлять Claude, Cursor и другие ассистенты
Как подключить
1. Запустите MCP-сервер одной командой (установка не требуется):
npx -y searchcraft2. Добавьте сервер в конфигурацию MCP-клиента. Пример для Claude Desktop:
{
"mcpServers": {
"searchcraft": {
"command": "npx",
"args": ["-y", "searchcraft"]
}
}
}3. Перезапустите клиент. После этого AI-ассистент сможет выполнять поиск по вашим документам.
Примеры запросов
Попросите ассистента выполнить одно из этих действий:
- «Найди статьи по теме машинного обучения, используй BM25-ранжирование и взвешивание полей: заголовок вес 3, тело вес 1»
- «Покажи документы, наиболее похожие на «Introduction to React», используй нечёткое совпадение»
- «Проиндексируй массив объектов products и выполни поиск по полю name с нечётким совпадением»
- «Создай поиск по каталогу товаров и отсортируй результаты по релевантности, покажи топ-10»
Технические детали
- Язык: TypeScript
- Транспорт: stdio
- Лицензия: MIT
- Совместимые клиенты: Claude Desktop, VS Code, Cursor, GitHub Copilot, Zed, любое приложение, поддерживающее MCP