fulltext-article-downloader — MCP-сервер для Claude Code: скачивание
Тянет полный текст научной статьи по DOI, arXiv, PMC или OpenReview id и проверяет, что вернулся именно запрошенный файл. Нужен, когда агенту нужен исходник статьи, а не аннотация.
claude mcp add --env UNPAYWALL_EMAIL=<UNPAYWALL_EMAIL> --env FULLTEXT_OUTPUT_DIR=<FULLTEXT_OUTPUT_DIR> --env WILEY_API_KEY=<WILEY_API_KEY> --env ELSEVIER_API_KEY=<ELSEVIER_API_KEY> --env SPRINGER_API_KEY=<SPRINGER_API_KEY> --transport stdio fulltext-article-downloader -- uvx fulltext-article-downloaderЧто делает fulltext-article-downloader
Сервер принимает идентификатор и пробует источник за источником: API издательств, индексы открытого доступа, репозитории препринтов. Если один маршрут не сработал, берётся следующий. Скачанный PDF сверяется с названием статьи, а записи без полного текста и файлы с дополнительными материалами отбрасываются. Поэтому в ответе оказывается нужная работа, а не что-то похожее.
В каждом отчёте видно, каким путём получен файл и есть ли пометка, что это препринт или принятая рукопись, а не издательская версия. Без ключей и вне кампуса надёжно проходят статьи открытого доступа, препринты и рукописи работ, оплаченных DOE. Платные статьи без ключа издательства чаще всего не скачаются: сервер замечает обрезанный ответ и переключается дальше.
Ключи Elsevier, Wiley, Springer и Semantic Scholar задаются в переменных окружения при регистрации сервера, а UNPAYWALL_EMAIL нужен Unpaywall и Crossref, чтобы запрос шёл через их более быстрый пул. Есть необязательные дополнения tls и aps: первое подстраивает отпечаток TLS под Chrome, второе переиспользует вашу сессию APS. Оба режима стоит сверить с лицензионными соглашениями вашей организации до включения.
Какие задачи решает
- скачать PDF статьи по DOI прямо из чата с агентом
- найти открытую копию платной публикации через Unpaywall и Europe PMC
- проверить, что скачанный файл совпадает с запрошенной работой
- отличить препринт от издательской версии в отчёте о загрузке
- забрать пачку статей по списку идентификаторов за один запуск
Примеры запросов агенту
- Скачай полный текст
10.1371/journal.pone.0171501в папкуpapers - Найди PDF для
arXiv:2310.19377и скажи, каким источником он получен - Загрузи
PMC6561843и проверь, что вернулась именно эта статья
Как установить fulltext-article-downloader
Командой платформы
claude mcp add --env UNPAYWALL_EMAIL=<UNPAYWALL_EMAIL> --env FULLTEXT_OUTPUT_DIR=<FULLTEXT_OUTPUT_DIR> --env WILEY_API_KEY=<WILEY_API_KEY> --env ELSEVIER_API_KEY=<ELSEVIER_API_KEY> --env SPRINGER_API_KEY=<SPRINGER_API_KEY> --transport stdio fulltext-article-downloader -- uvx fulltext-article-downloaderВместо <…> подставьте свои значения. Ещё 1 переменная окружения — в README сервера. uvx запускает команду с именем пакета; если в README она другая — uvx --from fulltext-article-downloader <команда>
Командой платформы
codex mcp add fulltext-article-downloader --env UNPAYWALL_EMAIL=<UNPAYWALL_EMAIL> --env FULLTEXT_OUTPUT_DIR=<FULLTEXT_OUTPUT_DIR> --env WILEY_API_KEY=<WILEY_API_KEY> --env ELSEVIER_API_KEY=<ELSEVIER_API_KEY> --env SPRINGER_API_KEY=<SPRINGER_API_KEY> -- uvx fulltext-article-downloaderВместо <…> подставьте свои значения. Ещё 1 переменная окружения — в README сервера. uvx запускает команду с именем пакета; если в README она другая — uvx --from fulltext-article-downloader <команда>
Файл настроек
{
"mcpServers": {
"fulltext-article-downloader": {
"command": "uvx",
"args": [
"fulltext-article-downloader"
],
"env": {
"UNPAYWALL_EMAIL": "<UNPAYWALL_EMAIL>",
"FULLTEXT_OUTPUT_DIR": "<FULLTEXT_OUTPUT_DIR>",
"WILEY_API_KEY": "<WILEY_API_KEY>",
"ELSEVIER_API_KEY": "<ELSEVIER_API_KEY>",
"SPRINGER_API_KEY": "<SPRINGER_API_KEY>"
}
}
}
}Вместо <…> подставьте свои значения. Ещё 1 переменная окружения — в README сервера. uvx запускает команду с именем пакета; если в README она другая — uvx --from fulltext-article-downloader <команда>
Файл настроек
{
"servers": {
"fulltext-article-downloader": {
"type": "stdio",
"command": "uvx",
"args": [
"fulltext-article-downloader"
],
"env": {
"UNPAYWALL_EMAIL": "<UNPAYWALL_EMAIL>",
"FULLTEXT_OUTPUT_DIR": "<FULLTEXT_OUTPUT_DIR>",
"WILEY_API_KEY": "<WILEY_API_KEY>",
"ELSEVIER_API_KEY": "<ELSEVIER_API_KEY>",
"SPRINGER_API_KEY": "<SPRINGER_API_KEY>"
}
}
}
}Вместо <…> подставьте свои значения. Ещё 1 переменная окружения — в README сервера. uvx запускает команду с именем пакета; если в README она другая — uvx --from fulltext-article-downloader <команда>
Командой платформы
gemini mcp add -e UNPAYWALL_EMAIL=<UNPAYWALL_EMAIL> -e FULLTEXT_OUTPUT_DIR=<FULLTEXT_OUTPUT_DIR> -e WILEY_API_KEY=<WILEY_API_KEY> -e ELSEVIER_API_KEY=<ELSEVIER_API_KEY> -e SPRINGER_API_KEY=<SPRINGER_API_KEY> fulltext-article-downloader uvx fulltext-article-downloaderВместо <…> подставьте свои значения. Ещё 1 переменная окружения — в README сервера. uvx запускает команду с именем пакета; если в README она другая — uvx --from fulltext-article-downloader <команда>
По шагам, с командами для каждой платформы: Как подключить MCP-сервер: Claude Code, Codex, Cursor, VS Code, Gemini CLI и другие
Вопросы о fulltext-article-downloader
Как установить fulltext-article-downloader в Claude Code?
Добавьте сервер командой `claude mcp add fulltext-article-downloader -e WILEY_API_KEY=<WILEY_API_KEY> -e ELSEVIER_API_KEY=<ELSEVIER_API_KEY> -e SPRINGER_API_KEY=<SPRINGER_API_KEY> -e SEMANTIC_SCHOLAR_API_KEY=<SEMANTIC_SCHOLAR_API_KEY> -- uvx fulltext-article-downloader`. Ключи подставьте свои, без них останутся только открытые маршруты.
Что делает fulltext-article-downloader?
По идентификатору ищет полный текст статьи, обходя несколько источников по очереди, и сверяет результат с названием работы. Возвращает путь к файлу, имя сработавшего источника и пометку, если это препринт или принятая рукопись.
Какие ключи нужны для платных издательств?
Elsevier, Wiley и Springer Nature открывают доступ по своим API-ключам, Semantic Scholar повышает лимит запросов. Ещё нужен UNPAYWALL_EMAIL — ваш адрес для Unpaywall и Crossref. Ключи хранятся на вашей машине.