Skip to main content
Glama
zeriaxdev

helmet

by zeriaxdev

helmet

HelMet library catalogue (Helsinki, Espoo, Vantaa, Kauniainen), exposed over MCP. Same shape as tori: no cache, no DB, no scheduler.

Not a scraper — HelMet's catalogue (helmet.finna.fi) is part of Finna, run by the National Library of Finland, which has an open REST API at https://api.finna.fi/. No API key. HelMet records are scoped with the building:0/Helmet/ filter. src/finna.ts is a thin client over /search and /record.

Tools

tool

what

search

terms, page, sort, filters, facets → records with owning branches

get_record

Finna ID → full metadata (authors, subjects, summary, e-links, branches)

where_to_borrow

a title → branches that own it, formats, free-online flag, other editions

filters are Lucene fragments taken from a previous result's facets, e.g. { format: "1/Book/Book/", language: "fin", search_daterange_mv: "[2015 TO 2020]", free_online_boolean: "1" }.

Related MCP server: statfin-fi

Availability caveat

The open API returns collection holdings — which branches own a copy — not real-time shelf status. There is no "3 available at Pasila right now" in api.finna.fi; that lives behind the Finna web UI's authenticated ILS calls. For live status, check helmet.finna.fi or the library.

Legality

Finna's API is meant for programmatic use. Metadata is mostly CC0/CC-BY (a few source-specific restrictions). This client only reads public catalogue data — no accounts, no personal data. House rules still apply: one request in flight, 500 ms gap, real User-Agent.

Run

bun install
bun test          # hits the live API; set OFFLINE=1 to skip
bun run mcp       # stdio MCP server (src/mcp/server.ts)
bun run mcp:http  # streamable-HTTP MCP server on $MCP_PORT (default 3001), for hosting
claude mcp add helmet -- bun "$(pwd)/src/mcp/server.ts"   # run from the repo root

For a remote (hosted) server: claude mcp add --transport http helmet https://<host>/mcp.

Not here

  • Real-time availability — needs the authenticated Finna online interface / ILS. Would be helmet.finna.fi/AJAX/JSON?method=getItemStatuses scraping; skipped on purpose.

  • Personal account (loans, holds, fees, renew) — needs per-user credentials. Different tool, different legal posture. Not wired up.

  • No cache / scheduler / DB — stateless by design; add if a request ever needs it.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

No tool schema history has been recorded yet.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Provides access to Sweden's National Library (Kungliga biblioteket) open APIs, enabling search and retrieval of 20M+ bibliographic records, 10M+ cultural heritage objects, 2M+ research publications, and linked data through 52 tools across 10 endpoints.
    2
    -
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables querying Statistics Finland's public statistical database using PxWeb API. Supports retrieving table metadata and pulling data with PxWeb query objects.
    16
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    MCP server for Finnish public procurement (HILMA): search tenders, awards and procurement plans by keyword, CPV, region and buyer, and fetch full notice details.
    14
    MIT

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/zeriaxdev/helmet-scraper'

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