Zotero MCP-сервер
Английский оригинал | Сервер для взаимодействия с библиотекой Zotero через протокол MCP (Model Context Protocol) в AI-ассистентах (Claude и другие).
Что это
Этот Python-сервер реализует MCP для доступа к вашей библиотеке Zotero из AI-помощников. Он предоставляет три инструмента, которые можно вызывать последовательно для поиска, получения метаданных и полных текстов PDF из Zotero.
Инструменты:
zotero_search_items — поиск по текстовому запросу в вашей библиотеке Zotero
zotero_item_metadata — получение подробной информации о конкретном элементе
zotero_item_fulltext — получение полного текста PDF-файла элемента
Каждый инструмент возвращает отформатированный текст. AI-ассистенты могут использовать их цепочкой: сначала найти элементы, затем запросить метаданные или содержимое.
Установка
Через Claude Desktop
Добавьте в конфигурацию mcpServers:
{
"mcpServers": {
"zotero": {
"command": "uvx",
"args": ["zotero-mcp"],
"env": {
"ZOTERO_LOCAL": "true"
}
}
}
}
Переменная ZOTERO_LOCAL=true указывает на локальный API Zotero. Для этого нужен Zotero 7 (или бета-версия) на том же компьютере, что и клиент. Без этой настройки сервер будет пытаться подключиться к веб-API.
Для веб-API
- Создайте API-ключ в настройках учётной записи: https://www.zotero.org/settings/keys
- Найдите ваш Library ID (User ID) там же.
Настройте окружение:
ZOTERO_LOCAL=false
ZOTERO_API_KEY=ваш_ключ
ZOTERO_LIBRARY_ID=ваш_id
ZOTERO_LIBRARY_TYPE=user # или group
Переменные окружения
| Переменная |
Описание |
По умолчанию |
ZOTERO_LOCAL |
Использовать локальный API (true) или веб-API (false) |
false |
ZOTERO_API_KEY |
API-ключ Zotero (не требуется для локального API) |
— |
ZOTERO_LIBRARY_ID |
ID вашей библиотеки (User ID; не требуется для локального API) |
— |
ZOTERO_LIBRARY_TYPE |
Тип библиотеки: user или group |
user |
Важное замечание по полному тексту
Для работы zotero_item_fulltext через локальный API требуется Zotero Beta Build (на дату 2025-03-07). Следите за обновлениями в репозитории: zotero/zotero#5004.
Разработка
- Клонируйте репозиторий
- Установите зависимости через uv:
uv sync
- Создайте
.env в корне проекта с нужными переменными окружения
- Запустите MCP Inspector для отладки:
npx @modelcontextprotocol/inspector uv run zotero-mcp
Тестирование
uv run pytest
Полезные ссылки
Комментарии
Комментариев пока нет. Будьте первым.