Skip to main content
Glama
cacity

ResearchBrain MCP Server

by cacity

ResearchBrain

English | 简体中文

Статус Платформа Python Лицензия

ResearchBrain — это локальное рабочее место для научных знаний под Windows, ориентированное на обнаружение, сбор, управление, чтение, анализ, поиск, исследование и цитирование литературы. Оно предоставляет единый рабочий процесс от исходных материалов до отслеживаемых исследовательских выводов.

Оно может как инкрементально зеркалировать записи, коллекции, теги и PDF из Zotero, так и импортировать литературу массово по DOI, а также обнаруживать её через Crossref, OpenAlex, arXiv, PubMed и другие источники, получая полные тексты из легальных открытых источников. Импортированная литература дедуплицируется по идентификаторам, таким как DOI. PDF можно читать напрямую, а с помощью MinerU или PyMuPDF преобразовывать в Markdown с привязкой к страницам и разделам. Записи, аннотации и полные тексты векторизуются отдельно и могут использоваться для локального поиска, локально-приоритетного дополнения из сети и полномасштабного исследования. Каждый ответ сохраняет исходные доказательства, номера страниц или онлайн-источники. Найденная в интернете литература может быть импортирована в библиотеку, исторические сеансы можно восстанавливать, а ссылки экспортировать в CSL-JSON, BibTeX, RIS, список DOI или Markdown, а также передавать через MCP клиентам, таким как Codex.

Записи, PDF, результаты анализа, векторные индексы и записи диалогов по умолчанию сохраняются локально; запросы отправляются только при включении онлайн-обнаружения или вызове MiniMax, DeepSeek. Приложение может работать на Windows 11 независимо, без WSL, gbrain, Docker или PostgreSQL.

Текущая версия — 0.1.8 alpha. Основной исследовательский цикл работает, но это ещё не полная замена Zotero.

Интерфейс ResearchBrain

Основные возможности

  • Локальная библиотека: независимая библиотека или зеркало Zotero только для чтения; инкрементальная синхронизация записей, авторов, коллекций, тегов и PDF-вложений по версии библиотеки Zotero с отображением статуса векторизации аннотаций и полных текстов PDF.

  • Идентификация и инкрементальное определение: идентификация литературы по нормализованным DOI/PMCID/PMID/arXiv, идентификация PDF по SHA-256; чёткое различие пяти состояний: только запись, аннотация проиндексирована, PDF сохранён, PDF проанализирован, полный текст проиндексирован.

  • Сбор литературы: массовый импорт по DOI, метаданные Crossref, онлайн-обнаружение через Crossref/OpenAlex/arXiv/PubMed, дедупликация по нескольким идентификаторам, а также импорт записей без DOI.

  • Легальные полные тексты: поиск PDF через Unpaywall, OpenAlex, PMC и ссылки Crossref с открытой лицензией, а также извлечение PDF из подтверждённо открытых страниц; автоматический откат при неудаче кандидата и поддержка ручного добавления PDF.

  • Анализ PDF: приоритет MinerU, откат на PyMuPDF, вывод Markdown, структурированного JSON, номеров страниц, разделов и расположения рисунков.

  • Локальный поиск: одновременная векторизация записей, аннотаций и полных текстов PDF с помощью MiniMax embo-01, LanceDB для полнотекстового, векторного и RRF-ранжирования; пустая библиотека возвращает чёткое сообщение о готовности.

  • Вопросно-ответные доказательства: поддержка режимов «только локально», «локально-приоритетный + онлайн», «полномасштабное исследование»; DeepSeek может ссылаться только на предоставленные локальные или онлайн-идентификаторы доказательств.

  • Непрерывный диалог: постоянное сохранение всех сеансов, сообщений и ссылок в библиотеке с возможностью восстановления; вес поиска текущего вопроса — 1.0, контекстный вес недавних вопросов — 0.25, исторические ответы модели используются только для понимания контекста, вес доказательств всегда 0.

  • Дополнение Scholar: возможность отправки поискового запроса напрямую в Google Scholar в браузере, избегая нестабильного парсинга страниц.

  • Экспорт литературы: CSL-JSON, BibTeX, RIS, список DOI и Markdown.

  • Интеграция с агентами: FastAPI, CLI, настольное приложение и stdio MCP используют одну и ту же базу данных SQLite и LanceDB.

Related MCP server: Paper Memory MCP Lite

Границы дизайна

  • Зеркало Zotero — одностороннее, только для чтения, без обратной записи в zotero.sqlite, вложения или коллекции.

  • Локальный API Zotero Desktop не предоставляет конечной точки для удаления записей; добавление, изменение и добавление/замена PDF синхронизируются инкрементально, удалённые в Zotero записи в настоящее время автоматически не удаляются из зеркала.

  • Автоматическое получение полных текстов не интегрирует Sci-Hub, LibGen или любые сервисы обхода платного доступа.

  • PDF, записи, векторные базы и чаты остаются локальными; при вызове MiniMax/DeepSeek соответствующий текст отправляется выбранному провайдеру.

  • Базовая установка не включает модели MinerU. При отсутствии конфигурации MinerU автоматически используется PyMuPDF.

  • Версия 0.1.x не включает расширенное редактирование записей, сложное интерактивное объединение дубликатов, аннотации PDF или командную работу.

Подробнее см. в Границах конфиденциальности и безопасности и Примечаниях по лицензированию.

Архитектура

flowchart LR
  UI["Tauri + React"] --> API["FastAPI sidecar"]
  MCP["Codex / MCP client"] --> CORE["Shared services"]
  API --> CORE
  CORE --> DB["SQLite"]
  CORE --> IDX["LanceDB"]
  CORE --> OBJ["Content-addressed PDFs"]
  CORE --> ZOT["Zotero Local API"]
  CORE --> NET["Crossref / OpenAlex / arXiv / PubMed / Unpaywall"]
  CORE --> MODELS["MiniMax / DeepSeek"]

Решения по архитектуре, модели процессов и права собственности на данные см. в Документации по архитектуре.

Запуск из исходного кода

Предварительные требования

  • Windows 11 x64

  • Python 3.11

  • Node.js 20

  • Rust stable MSVC

  • Visual Studio C++ Build Tools, WebView2 и PowerShell 7 или Windows PowerShell

  • Рекомендуется установка uv

git clone git@github.com:cacity/ResearchBrain.git
cd ResearchBrain

uv venv --python 3.11
uv sync --all-extras --group dev
$env:PYTHONPATH = "src"
.\.venv\Scripts\python.exe -m researchbrain.cli init

cd desktop
npm ci
npm run tauri dev

Запуск только локального API и браузерного фронтенда:

$env:PYTHONPATH = "src"
.\.venv\Scripts\python.exe -m researchbrain.cli serve
cd desktop
npm run dev

Производственная настольная версия выбирает случайный порт loopback и генерирует 256-битный токен сеанса; API разработки по умолчанию использует 127.0.0.1:8765, Vite по умолчанию использует 127.0.0.1:1420.

Первоначальная настройка

  1. В «Настройках» укажите контактный email для Crossref, Unpaywall, OpenAlex и PubMed.

  2. Опционально укажите API-ключи NCBI и OpenAlex для более стабильных онлайн-запросов.

  3. Подтвердите каталог данных Zotero, например %USERPROFILE%\Zotero, и включите локальный API в Zotero.

  4. Сохраните ключи MiniMax и DeepSeek в Windows Credential Manager.

  5. Опционально: установите MinerU, в «Настройки > Анализ документов» укажите полный путь к mineru.exe.

  6. Создайте библиотеку «Зеркало Zotero только для чтения», нажмите «Обнаружить Zotero», затем выполните первую синхронизацию; в дальнейшем нажатие «Инкрементальная синхронизация» обрабатывает только записи и PDF, добавленные или изменённые после уровня версии библиотеки.

  7. В статистике синхронизации просмотрите количество новых записей, PDF, отсутствующих вложений, анализов и векторов; на странице «Задачи» можно массово повторить неудачные задачи.

Каталог данных по умолчанию — %LOCALAPPDATA%\ResearchBrain:

ResearchBrain/
  config/settings.json       # 不含密钥的设置
  data/library.sqlite        # 题录、任务、对话和出处
  data/lancedb/              # 可重建检索索引
  library/objects/           # SHA-256 内容寻址 PDF
  artifacts/                 # Markdown、JSON 和图表产物
  runtime/                   # 可回滚外部组件

Codex и MCP

После установки настольной версии в «Настройки > Codex» нажмите «Зарегистрировать MCP», создайте новую задачу Codex для вызова:

  • list_libraries

  • get_item

  • search_library

  • ask_library

  • export_references

Среда исходного кода также может быть запущена:

.\scripts\register_codex_mcp.ps1
codex.cmd mcp list

Тестирование и сборка

.\.venv\Scripts\python.exe -m ruff format --check --no-cache src tests scripts
.\.venv\Scripts\python.exe -m ruff check --no-cache src tests scripts
.\.venv\Scripts\python.exe -m pytest -p no:cacheprovider
cd desktop
npm run typecheck
npm run format:check

Установочный пакет для Windows:

.\scripts\build_release.ps1

Полный процесс разработки, тестирования и выпуска см. в Руководстве по разработке, Руководстве по выпуску и Контрольном списке публикации на GitHub.

Структура репозитория

src/researchbrain/       Python 业务核心、API、CLI 和 MCP
desktop/src/             React/TypeScript 桌面界面
desktop/src-tauri/       Rust/Tauri 宿主和 sidecar 生命周期
src/researchbrain/migrations/  Alembic 数据库迁移
tests/                   Python 自动化测试
scripts/                 构建、注册、冒烟和视觉检查脚本
docs/                    架构、隐私、许可、路线图和开发文档
.github/                 CI、依赖更新和协作模板

Участие в проекте

Перед отправкой проблемы прочтите Руководство по участию, Инструкцию по поддержке и Политику безопасности. Не загружайте личные PDF, базы данных Zotero, API-ключи, куки браузера или логи, содержащие личные пути.

Лицензия

Проект распространяется под лицензией GNU Affero General Public License v3.0 only. PyMuPDF, MinerU и другие сторонние компоненты сохраняют свои собственные лицензии; перед распространением установочного пакета необходимо прочитать Примечания по сторонним лицензиям.

Related MCP Connectors

Related MCP Servers

  • F
    license
    C
    quality
    D
    maintenance
    Exposes a local biomedical literature pipeline as MCP tools for automated research workflows. Enables literature search, open-access paper retrieval, and draft generation for biomedical and pathology domains through standard MCP clients.
    6
    -
  • F
    license
    A
    quality
    C
    maintenance
    Enables bibliographic research on a private local Calibre library by providing read-only metadata search, book inspection, and optional RAG-based content retrieval through MCP.
    5
    -
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables a local academic research workflow via any MCP client: literature search across Scopus and OpenAlex, citation chains, per-project research memory, paper download, and PDF-to-Markdown conversion through MinerU.
    GPL 3.0