Hal Fr logo

Hal Fr

HAL — French national open research archive

Install Hal Fr

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "hal-fr": {
      "command": "npx",
      "args": [
        "-y",
        "@pipeworx/mcp-hal-fr"
      ]
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Automated check passed— started and listed 4 tools correctly (5d ago).

Overview

Tools4

What Hal Fr lets your agent do. Expand a tool for its parameters.

Verified live~247 tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked Today

Recent health check succeeded.

9/9 checks healthy over the last 45d

What it can do

From the 4 tools this server returned when we ran it.

Read-only tools · 4
Network at startup3 connections
Files written at startupNone
Install scriptsNone
npm provenanceSigned build
Package age161 days
Maintainers1

Observed 2026-10-23 in an isolated sandbox. A description of reach, not a security audit.

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 4d ago via OSV.dev · @pipeworx/mcp-hal-fr (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

npm downloads426Package downloads in the last 30 days.
Last commitTodayMost recent push to the default branch.
Availability100%Our rolling endpoint + install checks that succeeded.
Install checkPassedOur sandbox started it and listed its tools.
Tools exposed4Callable tools this server registers over MCP.
Directory activity1 viewsConfig copies, upvotes, and views on AllMCPs.

From the project README

@pipeworx/hal-fr

HAL MCP — Hyper Articles en Ligne, the French national open archive of research output. Keyless.

Part of Pipeworx — an MCP gateway connecting AI agents to 1856+ live data sources. This is an independent, unofficial integration — not affiliated with, endorsed by, or published by the upstream provider.

Tools

  • search(query, fl?, fq?, rows?, start?, sort?) — Solr-style search across HAL
  • get(hal_id) — single document by HAL id (e.g. "hal-00001234")
  • author(name|id) — author lookup
  • structure(query) — research structure (lab/department) lookup

Data source

https://api.archives-ouvertes.fr/search/ (Solr-backed REST).

Quick Start

Add to your MCP client (Claude Desktop, Cursor, Windsurf, etc.):

config.json
{
  "mcpServers": {
    "hal-fr": {
      "url": "https://gateway.pipeworx.io/hal-fr/mcp"
    }
  }
}

What this endpoint actually serves

tools/list at https://gateway.pipeworx.io/hal-fr/mcp returns the tools in the table above plus the shared Pipeworx meta-tools — ask_pipeworx, discover_tools, search_within, remember/recall and the rest of the gateway-wide set. So the tool count you see is larger than this table: a single-pack endpoint currently lists roughly 30 shared tools alongside the pack's own. The connection's initialize response states its exact scope, and is the authoritative answer for a given day.

This is deliberate, not multiplexing by accident. The meta-tools are what let a scoped connection answer a question this pack does not cover — via ask_pipeworx, which routes across the whole catalog — without you adding a second MCP server. There is currently no way to mount a pack endpoint without them; if the extra schemas cost you more context than the routing is worth, connect to the full gateway once rather than to several pack endpoints.

Or connect to the full Pipeworx gateway to get every pack's tools listed directly, instead of just this one's:

config.json
{
  "mcpServers": {
    "pipeworx": {
      "url": "https://gateway.pipeworx.io/mcp"
    }
  }
}

Both URLs reach the same gateway and the same 1856+ data sources. The only difference is which pack's tools are listed directly; ask_pipeworx reaches all of them from either one.

No MCP client? Call it over HTTP

Terminal
curl -X POST https://gateway.pipeworx.io/v1/tools/hal_fr_search \
  -H 'Content-Type: application/json' \
  -d '{"query":"title_t:transformer"}'

No account needed for the first calls. Inspect any tool: GET https://gateway.pipeworx.io/v1/tools/hal_fr_search. Find one: POST https://gateway.pipeworx.io/v1/tools/search_packs with {"query":"..."}.

Run it from npm

@pipeworx/mcp-hal-fr is a local stdio bridge to the Pipeworx gateway: your MCP client starts it with npx, and it forwards every call to the same https://gateway.pipeworx.io/hal-fr/mcp endpoint shown above. It needs network access; there is no offline mode.

config.json
{
  "mcpServers": {
    "hal-fr": {
      "command": "npx",
      "args": ["-y", "@pipeworx/mcp-hal-fr"]
    }
  }
}

Without a key it calls anonymously, capped at 50 calls a day. A free account raises that to 200 a day: get a key at https://pipeworx.io/signup and add "env": { "PIPEWORX_API_KEY": "<your key>" } to the server entry. The key is sent as a Bearer token, the same way a hosted connection sends it, so calls are metered and billed exactly as they are there.

It lists only this pack's tools by default. Set PIPEWORX_META_TOOLS=1 to also list ask_pipeworx and the other gateway-wide tools.

Behind an HTTPS proxy: Node's built-in fetch does not read HTTPS_PROXY by default. Newer Node releases honour it when NODE_USE_ENV_PROXY=1 is set; check your Node version's documentation.

Using with ask_pipeworx

Instead of calling tools directly, you can ask questions in plain English — this works on the pack endpoint above as well as on the full gateway:

Code
ask_pipeworx({ question: "your question about Hal Fr data" })

The gateway picks the right tool and fills the arguments automatically.

More

License

MIT

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Hal Fr

Hal Fr is an MCP server that provides keyless access to HAL, the French national open research archive. It lets developers search HAL with Solr-style parameters, retrieve documents by HAL ID, and look up authors or research structures. It is available through Pipeworx’s gateway or as a standalone local stdio server.

Use the `search` tool with a query and optional `fl`, `fq`, `rows`, `start`, and `sort` parameters. Searches run across HAL using the Solr-backed HAL REST API.

Use the `get` tool with a HAL identifier such as `hal-00001234` to retrieve a single document.

Yes. Use `author` for an author name or ID, and use `structure` with a query to look up a research structure such as a laboratory or department.

Add `https://gateway.pipeworx.io/hal-fr/mcp` as an MCP server URL in clients such as Claude Desktop, Cursor, or Windsurf. You can also run `npx -y @pipeworx/mcp-hal-fr` as a local stdio MCP server without a Pipeworx account.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewHal Fr AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/hal-fr?style=directory)](https://allmcps.com/mcp/hal-fr)
HTML Embed
<a href="https://allmcps.com/mcp/hal-fr"><img src="https://allmcps.com/api/badge/hal-fr?style=directory" alt="Hal Fr on AllMCPs" /></a>