openalex-mcp-server — MCP-сервер для Claude Code: OpenAlex в агенте
Открывает агенту каталог OpenAlex: более 270 млн публикаций, авторы, источники, организации и темы. Пригодится, когда нужно искать литературу или строить граф цитирований прямо в чате.
claude mcp add --transport http openalex-mcp-server https://openalex.caseyjhand.com/mcpЧто делает openalex-mcp-server
Сервер даёт пять инструментов. openalex_search_entities ищет и фильтрует объекты восьми типов, openalex_analyze_trends считает группировки для распределений, openalex_resolve_name сводит имя или идентификатор к каноническому OpenAlex ID, openalex_get_citation_graph проходит по цитированиям на один шаг, а openalex_describe_fields подсказывает допустимые поля фильтров. Ещё два промпта задают сценарии: обзор литературы и разбор ландшафта исследований по теме.
Работает по STDIO через npx -y @cyanheads/openalex-mcp-server либо по Streamable HTTP. Публичный хост — https://openalex.caseyjhand.com/mcp, его можно прописать без локального запуска. Для STDIO-варианта есть переменные окружения: OPENALEX_API_KEY, OPENALEX_MAILTO, OPENALEX_BASE_URL, OPENALEX_CLAMP_PER_PAGE и OPENALEX_FILTER_STRING_INPUT.
Фильтры принимают объект или нативную строку вроде issn:0920-8542. Ловушка в смешении | и + в одном значении: такая конструкция отклоняется с ошибкой mixed_and_or_in_filter_value, и AND нужно переносить в отдельный ключ. Значение без парных двойных кавычек тоже не пройдёт.
Какие задачи решает
- найти публикации по теме с фильтром по году и открытому доступу
- свести DOI или ORCID к каноническому OpenAlex ID
- посмотреть, какие работы цитируют выбранную статью
- построить распределение публикаций по институциям
- провести обзор литературы по новой теме
Примеры запросов агенту
- Найди через openalex-mcp-server статьи про графовые нейросети за последние годы с открытым доступом
- Разреши DOI
10.1038/nature14539в OpenAlex ID и покажи, кто его цитирует - Построй распределение публикаций по институциям для темы «graph neural networks»
Как установить openalex-mcp-server
1Командой платформы: удалённый сервер
claude mcp add --transport http openalex-mcp-server https://openalex.caseyjhand.com/mcp2Командой платформы
claude mcp add --env OPENALEX_CLAMP_PER_PAGE=<OPENALEX_CLAMP_PER_PAGE> --env OPENALEX_FILTER_STRING_INPUT=<OPENALEX_FILTER_STRING_INPUT> --env OPENALEX_API_KEY=<OPENALEX_API_KEY> --env OPENALEX_MAILTO=<OPENALEX_MAILTO> --env OPENALEX_BASE_URL=<OPENALEX_BASE_URL> --transport stdio openalex-mcp-server -- npx -y @cyanheads/openalex-mcp-serverВместо <…> подставьте свои значения. Ещё 6 переменных окружения — в README сервера
1Командой платформы: удалённый сервер
codex mcp add openalex-mcp-server --url https://openalex.caseyjhand.com/mcp2Командой платформы
codex mcp add openalex-mcp-server --env OPENALEX_CLAMP_PER_PAGE=<OPENALEX_CLAMP_PER_PAGE> --env OPENALEX_FILTER_STRING_INPUT=<OPENALEX_FILTER_STRING_INPUT> --env OPENALEX_API_KEY=<OPENALEX_API_KEY> --env OPENALEX_MAILTO=<OPENALEX_MAILTO> --env OPENALEX_BASE_URL=<OPENALEX_BASE_URL> -- npx -y @cyanheads/openalex-mcp-serverВместо <…> подставьте свои значения. Ещё 6 переменных окружения — в README сервера
Файл настроек
{
"mcpServers": {
"openalex-mcp-server": {
"url": "https://openalex.caseyjhand.com/mcp"
}
}
}{
"mcpServers": {
"openalex-mcp-server": {
"command": "npx",
"args": [
"-y",
"@cyanheads/openalex-mcp-server"
],
"env": {
"OPENALEX_CLAMP_PER_PAGE": "<OPENALEX_CLAMP_PER_PAGE>",
"OPENALEX_FILTER_STRING_INPUT": "<OPENALEX_FILTER_STRING_INPUT>",
"OPENALEX_API_KEY": "<OPENALEX_API_KEY>",
"OPENALEX_MAILTO": "<OPENALEX_MAILTO>",
"OPENALEX_BASE_URL": "<OPENALEX_BASE_URL>"
}
}
}
}Вместо <…> подставьте свои значения. Ещё 6 переменных окружения — в README сервера
Файл настроек
{
"servers": {
"openalex-mcp-server": {
"type": "http",
"url": "https://openalex.caseyjhand.com/mcp"
}
}
}{
"servers": {
"openalex-mcp-server": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@cyanheads/openalex-mcp-server"
],
"env": {
"OPENALEX_CLAMP_PER_PAGE": "<OPENALEX_CLAMP_PER_PAGE>",
"OPENALEX_FILTER_STRING_INPUT": "<OPENALEX_FILTER_STRING_INPUT>",
"OPENALEX_API_KEY": "<OPENALEX_API_KEY>",
"OPENALEX_MAILTO": "<OPENALEX_MAILTO>",
"OPENALEX_BASE_URL": "<OPENALEX_BASE_URL>"
}
}
}
}Вместо <…> подставьте свои значения. Ещё 6 переменных окружения — в README сервера
1Командой платформы: удалённый сервер
gemini mcp add -t http openalex-mcp-server https://openalex.caseyjhand.com/mcp2Командой платформы
gemini mcp add -e OPENALEX_CLAMP_PER_PAGE=<OPENALEX_CLAMP_PER_PAGE> -e OPENALEX_FILTER_STRING_INPUT=<OPENALEX_FILTER_STRING_INPUT> -e OPENALEX_API_KEY=<OPENALEX_API_KEY> -e OPENALEX_MAILTO=<OPENALEX_MAILTO> -e OPENALEX_BASE_URL=<OPENALEX_BASE_URL> openalex-mcp-server npx -y @cyanheads/openalex-mcp-serverВместо <…> подставьте свои значения. Ещё 6 переменных окружения — в README сервера
По шагам, с командами для каждой платформы: Как подключить MCP-сервер: Claude Code, Codex, Cursor, VS Code, Gemini CLI и другие
Вопросы о openalex-mcp-server
Как установить openalex-mcp-server в Claude Code?
Проще подключить публичный хост: claude mcp add --transport http openalex-mcp-server https://openalex.caseyjhand.com/mcp. Для локального STDIO-запуска есть вариант с npx -y @cyanheads/openalex-mcp-server и переменными окружения через --env.
Что делает openalex-mcp-server?
Даёт агенту доступ к каталогу OpenAlex: поиск и фильтрация сущностей, агрегации, разрешение имён в ID, обход графа цитирований и справка по полям фильтров.
Какие переменные окружения нужны для локального запуска?
OPENALEX_API_KEY, OPENALEX_MAILTO, OPENALEX_BASE_URL, OPENALEX_CLAMP_PER_PAGE и OPENALEX_FILTER_STRING_INPUT. Если поставить OPENALEX_FILTER_STRING_INPUT=false, фильтры придётся передавать только объектами.