Skip to main content
Glama

hal-mcp

Сервер MCP (Model Context Protocol) для HAL — французского национального открытого архива (Hyper Articles en Ligne). Он позволяет ИИ-ассистенту — Claude или любому MCP-совместимому клиенту — запрашивать HAL: искать публикации, вычислять статистику, экспортировать цитаты и отслеживать результаты исследователя.

Не требуется API-ключ. Он выходит за рамки простого поиска благодаря фасетам (агрегированная статистика), отслеживанию авторов по IdHAL и встроенному библиографическому экспорту.

Возможности (6 инструментов)

Инструмент

Описание

search_publications

Поиск с удобными фильтрами: диапазон лет, тип документа, открытый доступ, наличие полного текста, сортировка.

get_publication

Полная запись для одного документа по его идентификатору HAL.

export_citations

Экспорт в BibTeX / EndNote / CSV / TEI (через собственный параметр wt HAL).

get_publication_stats

Агрегированные подсчёты (по году, типу, ключевому слову, автору) с использованием фасетов Solr.

get_author_production

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

search_structures

Поиск лабораторий / исследовательских структур.

Related MCP server: Crossref Academic MCP Server

Требования

  • Python 3.10 или новее

  • SDK mcp версии 1.x (см. важное примечание ниже)

⚠️ Важно — версия SDK mcp Этот сервер использует FastMCP, который был удалён в mcp v2.0.0. Поэтому проект закрепляет mcp>=1.2.0,<2.0.0. Если при запуске вы видите ошибку импорта FastMCP, значит, по ошибке была установлена v2: переустановите с помощью pip install "mcp<2.0.0".

Установка

git clone https://github.com/Arpany-Tech/hal-mcp
cd hal-mcp
pip install -e .

Проверка работы

1. Проверьте, что сервер запускается

python -m hal_mcp.server

Курсор зависает без вывода: это нормально. Сервер запущен и ожидает сообщения MCP на стандартном вводе. Нажмите Ctrl+C, чтобы остановить его. (Если вместо этого вы получили ошибку, см. примечание о SDK mcp выше.)

2. Интерактивное тестирование с MCP Inspector

Официальный инструмент для изучения MCP-сервера без полного клиента:

npx @modelcontextprotocol/inspector python -m hal_mcp.server

Откройте напечатанный URL, нажмите Подключиться, затем Список инструментов: появятся 6 инструментов. Вы можете вызвать каждый из них вручную и просмотреть ответы.

3. Проверьте слой API напрямую (без MCP)

python3 - << 'PY'
import asyncio
from hal_mcp import client

async def main():
    res = await client.search_publications(
        "artificial intelligence", year_from=2023,
        open_access_only=True, rows=3,
    )
    print("Total:", res["total"])
    for d in res["documents"]:
        print("-", d.get("label_s"))

asyncio.run(main())
PY

Подключение к Claude Desktop

В claude_desktop_config.json (Настройки → Разработчик → Изменить конфигурацию):

{
  "mcpServers": {
    "hal": {
      "command": "python",
      "args": ["-m", "hal_mcp.server"]
    }
  }
}

Полностью перезапустите Claude Desktop. Инструменты HAL появятся в индикаторе инструментов окна сообщений.

Совет: если Claude Desktop не может найти python, используйте полный путь к вашему интерпретатору (например, C:\\Python313\\python.exe в Windows) вместо "python" в command.

Примеры вопросов

  • "Найдите статьи в открытом доступе по федеративному обучению с 2023 года."

  • "Покажите публикации исследователя с IdHAL dominique-lesselier, с соавторами."

  • "Какова разбивка публикаций по глубокому обучению по годам?"

  • "Экспортируйте 10 самых свежих публикаций по трансформерам в BibTeX."

  • "Какие лаборатории занимаются квантовой физикой?"

Как это работает

HAL предоставляет поисковый API на основе Apache Solr, доступный по HTTP без аутентификации. Этот сервер преобразует удобные для человека параметры (year_from, doc_type, open_access_only...) в синтаксис Solr (fq, facet, wt...), поэтому агент получает простой интерфейс, сохраняя при этом преимущества Solr (фильтры, фасеты, экспорт).

Архитектура

src/hal_mcp/
├── server.py    # declares the 6 MCP tools (FastMCP)
├── client.py    # calls to HAL's Solr API (httpx)
└── fields.py    # constants: Solr fields, document types

Слой client.py не зависит от MCP: его можно тестировать изолированно.

Разработка

Запустите тесты:

pip install pytest pytest-asyncio
pytest                    # all tests
pytest -m "not network"   # unit tests only (offline, fast)
pytest -m network         # integration tests that call HAL

Планы

  • get_structure_output — публикации заданной лаборатории.

  • Сводные фасеты (пересечение типа × полный текст, год × тип).

  • Диапазонные фасеты (facet.range) для графиков временных рядов/эволюции.

  • Фильтрация по коллекциям / порталам, доступная как параметр.

  • HTTP-транспорт для Claude.ai (коннектор) и ChatGPT (режим разработчика).

Лицензия

MIT — см. файл LICENSE.

Отказ от ответственности

Независимый проект, не связан с CCSD (который управляет HAL). Метаданные получены из публичного API HAL. Пожалуйста, соблюдайте условия использования HAL и лицензию каждой отдельной публикации.

A
license - permissive license
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    An MCP server for academic paper search that integrates with AI assistants (e.g., Claude Code, Cursor), enabling them to search and retrieve academic paper metadata.
    237
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    MCP server for the OpenAlex scholarly database, providing AI agents with tools to search and retrieve academic works, authors, and institutions via natural language queries.
    8
    MIT
  • F
    license
    A
    quality
    B
    maintenance
    AI-powered research assistant MCP server for searching academic papers and answering research questions with DOI citations.
    3

View all related MCP servers

Related MCP Connectors

  • Academic research MCP server for paper search, citation checks, graphs, and deep research.

  • MCP server for Altmetric APIs - track research attention across news, policy, social media, and more

  • Hosted MCP server exposing US hospital procedure cost data to AI assistants

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Arpany-Tech/hal-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server