DocsAgent MCP
Локальный MCP-сервер позволяет агенту искать и читать вашу библиотеку Zotero, хранилище Obsidian и Apple Notes через ядро на C++
- 578 ★ репозитория
- Последний коммит
Расширенный доступ
Почему такой уровень
- Агент читает личную библиотеку, заметки и аннотации целиком, включая то, что не относится к вашему вопросу
- По умолчанию ядро слушает адрес 0.0.0.0 на порту 23120, то есть все сетевые интерфейсы: сузьте `coreHost` до локального адреса
- Включенные инструменты записи добавляют заметки и теги и меняют коллекции в Zotero, до 200 записей за вызов
Установка
- Работает в
Ручная установка
npx @docsagent/docsagent startЗапускает ядро поиска для вашей платформы. Проверка состояния: npx @docsagent/docsagent status.
Доступ и проверки
Как мы проверяемРасширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.
- Агент читает личную библиотеку, заметки и аннотации целиком, включая то, что не относится к вашему вопросу
- По умолчанию ядро слушает адрес 0.0.0.0 на порту 23120, то есть все сетевые интерфейсы: сузьте `coreHost` до локального адреса
- Включенные инструменты записи добавляют заметки и теги и меняют коллекции в Zotero, до 200 записей за вызов
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
DocsAgent соединяет личную базу знаний с MCP-клиентом. Агент ищет по статьям и PDF из Zotero, по заметкам хранилища Obsidian и по Apple Notes на macOS. В смешанном режиме сервер сводит результаты трех источников в один список. Поиском занимается резидентное ядро на C++: оно строит индекс BM25 и ранжирует отрывки текста. По замерам автора, поиск по библиотеке из 1506 PDF занимает около 15 миллисекунд, а индекс строится 141 секунду. Инструментов восемь. Пять читают данные: `list_sources`, `search`, `get_content`, `get_metadata` и `list_library`. Три пишут в Zotero: `import_item`, `add_note` и `batch_modify`.
Для кого. Для исследователей и студентов с библиотекой Zotero и для тех, кто ведет заметки в Obsidian или Apple Notes и хочет искать по ним из Claude Desktop, Cursor или Cline.
Подходит, если
- Нужно найти в сотнях PDF из Zotero отрывки по теме и получить их со ссылкой на запись библиотеки
- Нужно собрать список источников: метаданные, аннотации и цитату в формате BibTeX или CSL JSON
- Нужен поиск по точному фрагменту: режим `grep` ищет буквальную строку без токенизации
- Нужно добавить заметку к записи Zotero или импортировать статью по DOI, ISBN либо идентификатору arXiv
Не подходит, если
- Нужен поиск в интернете: сервер ищет только в личных источниках на вашем компьютере
- Материалы лежат в другом менеджере ссылок или в облачных заметках, кроме Zotero, Obsidian и Apple Notes
- Система работает на Linux ARM: ядро поставляется для macOS, Windows x64 и Linux x64
- Нужно править Obsidian или Apple Notes: эти источники доступны только на чтение
Пример запроса к агенту
Найди в моей библиотеке Zotero отрывки о методах оценки качества поиска и покажи цитаты в формате BibTeX для трех самых подходящих статей.MCP
- Транспорт
- stdio, http
- Авторизация
- не нужна
Переменные окружения
DOCSAGENT_CONFIG- Путь к общему файлу конфигурации, по умолчанию ~/.docsagent/config.json.
DOCSAGENT_OBSIDIAN_VAULT- Путь к хранилищу Obsidian, если оно лежит не в Documents/Obsidian Vault.
DOCSAGENT_APPLE_NOTES_DB- Путь к хранилищу Apple Notes вместо системного.
Ограничения
Перед работой ядро запускают отдельно командой `npx @docsagent/docsagent start`. Оболочка MCP сама его не поднимает и без него сразу завершается с подсказкой. Apple Notes доступны только на macOS. Хранилище Obsidian программа ищет в папке Documents/Obsidian Vault, другой путь задает переменная `DOCSAGENT_OBSIDIAN_VAULT`. Файл SKILL.md в корне репозитория относится к другому режиму: он описывает команды `docsagent add` и `docsagent search` для PDF, PPTX и DOCX. Пакет для Python пока ставится только из исходников командой `pip install ./python`.
Как отключить. Уберите блок `docsagent` из mcpServers в настройках клиента и остановите ядро командой `npx @docsagent/docsagent stop`. Конфигурация лежит в файле `~/.docsagent/config.json`, индексы и исходные данные Zotero и Obsidian на этом не затрагиваются.
Частые вопросы
Как подключить DocsAgent к Cursor или Claude Desktop?
Добавьте в mcpServers блок `docsagent` с командой `npx` и аргументами `-y @docsagent/docsagent`. Тот же блок подходит для Cline и Qwen Code.
Отправляет ли DocsAgent мои заметки и PDF в облако?
Нет. Ядро читает Zotero, хранилище Obsidian и хранилище Apple Notes на вашем компьютере и строит индексы там же. В сеть сервер ходит, только если вы указали групповые библиотеки Zotero в `zoteroGroups`: их он синхронизирует с zotero.org.
Что нужно настроить, чтобы агент мог писать в Zotero?
Задайте `enableWrites` со значением `true` в `~/.docsagent/config.json`, и сервер зарегистрирует инструменты записи. Вызов с `confirmed` равным `false` возвращает предпросмотр. Подтвержденных записей по умолчанию не больше 30 в час.
Чем смешанный поиск отличается от обычного?
Обычный `search` идет по источнику из `defaultSource`, по умолчанию это Zotero. Смешанный поиск ранжирует каждый источник отдельно и сливает списки методом reciprocal rank fusion с коэффициентом 60. Причина в том, что оценки BM25 разных источников несравнимы.
Можно ли запустить DocsAgent как удаленный сервер с ключом?
Да. Задайте `transport` со значением `streamable-http`, адрес в `httpListenAddr` (по умолчанию `0.0.0.0:8080`) и `authMode`: `api-key` либо `oauth2` с интроспекцией токенов. Еще доступны проверка origin через `allowedOrigins`, роли в `rbacRoles` и проверка состояния по адресу `/health`.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
MCP-серверыПлагин Zotero со встроенным MCP-сервером: агент ищет по библиотеке, читает PDF и заметки, работает с аннотациями и метаданными
CLI и MCP-сервер для библиотеки научных статей: агент ищет, импортирует и читает статьи, ведет заметки Markdown в вашем хранилище
MCP-сервер открывает агенту чтение и поиск по локальным базам Molio, включая дерево файлов и вопросы по содержимому.
Локальная база документов для агента: гибридный поиск по смыслу и словам и веб-интерфейс для просмотра и загрузки
Локальный MCP-сервер для работы с научной литературой arXiv: чтение статей по разделам, BibTeX из метаданных, отслеживание тем
Самостоятельно размещаемая RAG-платформа: ответы с цитатами по GitHub, Notion, Drive и файлам, MCP-режим для Claude Code.
Сравнение с похожими
Карточки с тем же главным запросом: чем они отличаются.
| Инструмент | Официальный | Авторизация | Звезды репозитория | Главное отличие |
|---|---|---|---|---|
| DocsAgent (эта карточка) | нет | не нужна | 578 | |
| Zotero MCP | нет | не нужна | 1 264 | подключает только библиотеку Zotero, без Obsidian и Apple Notes |
| Obsidian MCP | нет | не нужна | 748 | читает и правит Markdown-файлы в явно указанных папках хранилища Obsidian |
Коротко о README
Описание проекта строится вокруг схемы из трех слоев: оболочка MCP, обмен по JSON-RPC и резидентное ядро на C++. В таблицах собраны параметры инструментов, замеры производительности и ключи конфигурации.