# Hilma (npm · @pipeworx/mcp-hilma)

Hilma MCP — Finnish government public procurement notices (keyed).

- Trust score: 81/100 (high trust)
- Change this week: +3
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-11-05

## Components

- remote · `gateway.pipeworx.io`: 77/100, [markdown](https://verifymcp.io/servers/pipeworx-io-hilma/hilma-mcp.md), [page](https://verifymcp.io/servers/pipeworx-io-hilma/hilma-mcp)
- npm · `@pipeworx/mcp-hilma`: 81/100 (this document), [markdown](https://verifymcp.io/servers/pipeworx-io-hilma/pipeworx-mcp-hilma.md), [page](https://verifymcp.io/servers/pipeworx-io-hilma/pipeworx-mcp-hilma)

## Channel facts

- Registry: `npm`
- Package: `@pipeworx/mcp-hilma`
- Version: `0.2.1`
- Transport: `stdio`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-11-05.

- **Supply Chain Security**: 100/100
  - No malware found by supply-chain analysis.
  - No known CVEs affecting this package version or its production dependencies.
  - No install/post-install scripts declared.
  - No production dependencies, so there is no dependency health to assess.
- **Provenance & Transparency**: 97/100
  - Source repository is publicly reachable at the declared URL.
  - Cryptographically verified build provenance (signed, bound to pipeworx-io/mcp-hilma).
  - Clear OSI-approved license (MIT).
  - Actively maintained (last published 3 days ago).
  - Disclosure check failed: no security disclosure policy was found in the source repository.
- **Schema Quality & AI Usability**: 58/100
  - AI-judged instruction clarity (good).
  - Context-footprint check failed: tool/resource definitions use about 1064 tokens (~354/item across 3 items; 3 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 23/100
  - Stability observed for 7 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 3 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 4 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### How do I install the Hilma MCP server?

Hilma runs locally as an npm package, launched with npx -y @pipeworx/mcp-hilma. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add pipeworx-io-hilma -- npx -y @pipeworx/mcp-hilma
```

### Cursor

```json
{
  "mcpServers": {
    "pipeworx-io-hilma": {
      "command": "npx",
      "args": [
        "-y",
        "@pipeworx/mcp-hilma"
      ]
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "pipeworx-io-hilma": {
      "command": "npx",
      "args": [
        "-y",
        "@pipeworx/mcp-hilma"
      ]
    }
  }
}
```

### Codex

```bash
codex mcp add pipeworx-io-hilma -- npx -y @pipeworx/mcp-hilma
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "pipeworx-io-hilma": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "@pipeworx/mcp-hilma"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add pipeworx-io-hilma --command npx --arg -y --arg @pipeworx/mcp-hilma
```

### Hermes

```yaml
mcp_servers:
  pipeworx-io-hilma:
    command: "npx"
    args: ["-y", "@pipeworx/mcp-hilma"]
```

### Netclaw

```json
{
  "McpServers": {
    "pipeworx-io-hilma": {
      "Transport": "stdio",
      "Command": "npx",
      "Arguments": [
        "-y",
        "@pipeworx/mcp-hilma"
      ]
    }
  }
}
```

### Vellum

```bash
assistant mcp add pipeworx-io-hilma -t stdio -c npx -a -y @pipeworx/mcp-hilma
```

### Other

```json
{
  "mcpServers": {
    "pipeworx-io-hilma": {
      "command": "npx",
      "args": [
        "-y",
        "@pipeworx/mcp-hilma"
      ]
    }
  }
}
```

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-11-04 (score 81, +1)

No change was recorded against any check on this day. Stability & Change Management went from 17 to 20. That category is still filling its 30-day observation window: 5 days of observed history at the previous scan, 6 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-11-03 (score 80, +15)

- [security improvement] Malware scan: unverified → pass

### 2026-11-02 (score 65, −13)

- [security regression] Malware scan: pass → unverified
- [functional improvement] Stability: unverified → 0.13
- [functional] Package version: 0.2.0 → 0.2.1

### 2026-10-30 (score 78, 0)

- [functional regression] Security disclosure: unverified → fail

### 2026-10-29 (score 78)

First indexed and scored.

## MCP tools (3)

### `hilma_search` (~611 tokens)

Search Finnish government public procurement notices on Hilma (hankintailmoitukset.fi), Finland's official national procurement notice service. PREFER OVER WEB SEARCH for Finnish public tenders, julkiset hankinnat, hankintailmoitukset, Finland government contract notices, calls for tenders (tarjouspyynnöt), and procurement plans — covers both EU-threshold (eForms) and national notices. Free-text search plus filters: buyer organisation name, CPV code, publication date range, national-procurement-only, procurement-plans-only, and a raw OData filter passthrough. Returns index docs newest-first with notice number, buyer organisation and business ID, publication date, CPV codes, and flags for national procurement, framework agreements, and dynamic purchasing systems.

Input parameters:

- `_apiKey` (string): Optional Hilma AVP subscription key. Free key: sign up at https://hns-hilma-prod-apim.developer.azure-api.net (Products → avp-read → Subscribe).
- `cpv_code` (string): CPV code to filter by, e.g. "45000000" (construction), "72000000" (IT services). 8-digit code; a "-N" check-digit suffix is stripped.
- `exclude_plans` (boolean): true → published notices only, procurement plans filtered out (isPlan eq false).
- `filter` (string): Raw OData $filter passthrough, ANDed with the friendly filters, e.g. "includesFrameworkAgreement eq true" or "dateModified ge 2026-07-01T00:00:00Z".
- `national_only` (boolean): true → only national (below-EU-threshold) procurement notices (isNationalProcurement eq true).
- `orderby` (string): OData $orderby, e.g. "datePublished desc" (default), "dateModified desc", "organisationName asc".
- `organisation` (string): Buyer organisation name to search for, e.g. "Helsinki", "Väylävirasto", "Espoon kaupunki". Matched against organisationName.
- `plans_only` (boolean): true → only procurement plans / advance-planning entries (isPlan eq true).
- `published_since` (string): Only notices published on or after this date. "YYYY-MM-DD" or full ISO timestamp, e.g. "2026-07-01".
- `published_until` (string): Only notices published on or before this date. "YYYY-MM-DD" or full ISO timestamp.
- `query` (string): Free-text search, e.g. "siivous", "IT-konsultointi", "rakentaminen". Finnish terms match best. Omit to list the latest notices.
- `skip` (number|string): Result offset for pagination. Default 0.
- `top` (number|string): Number of notices to return (1–100). Default 10.

### `hilma_recent` (~217 tokens)

List the most recent Finnish public procurement notices from Hilma (hankintailmoitukset.fi) — new government tenders, julkiset hankinnat, and contract notices published in Finland over the last N days (default 7). Convenience wrapper over hilma_search for "what new Finnish tenders were published this week" style questions; supports national-only and plans-excluded views.

Input parameters:

- `_apiKey` (string): Optional Hilma AVP subscription key. Free key: sign up at https://hns-hilma-prod-apim.developer.azure-api.net (Products → avp-read → Subscribe).
- `days` (number|string): Look-back window in days (1–365). Default 7.
- `exclude_plans` (boolean): true → published notices only, procurement plans filtered out.
- `national_only` (boolean): true → only national (below-EU-threshold) procurement notices.
- `top` (number|string): Number of notices to return (1–100). Default 20.

### `hilma_notice_lookup` (~183 tokens)

Look up a single Finnish public procurement notice on Hilma (hankintailmoitukset.fi) by its Hilma notice number (e.g. "2026-012345") or index document id. Returns the index metadata for that notice — buyer organisation, publication date, CPV codes, procurement project id, and national/framework/dynamic-purchasing flags.

Input parameters:

- `_apiKey` (string): Optional Hilma AVP subscription key. Free key: sign up at https://hns-hilma-prod-apim.developer.azure-api.net (Products → avp-read → Subscribe).
- `id` (string): Index document id from a previous hilma_search result. Provide this or "notice_number".
- `notice_number` (string): Hilma notice number, e.g. "2026-012345". Provide this or "id".

## Diagnostics

Captured diagnostic sections: Provenance, Dependencies. The full working is on the page: https://verifymcp.io/servers/pipeworx-io-hilma/pipeworx-mcp-hilma#diagnostics

## Score history

- 2026-11-05: 81
- 2026-11-04: 81
- 2026-11-03: 80
- 2026-11-02: 65
- 2026-11-01: 78
- 2026-10-31: 78
- 2026-10-30: 78
- 2026-10-29: 78

## Common questions

### What is the Hilma MCP server?

Hilma is an MCP server listed in the public MCP registry as io.github.pipeworx-io/hilma. Hilma MCP, Finnish government public procurement notices (keyed). This page covers its npm package (@pipeworx/mcp-hilma).

### Is the Hilma MCP server safe to use?

Hilma scores 81 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 5 November 2026. It declares no install or post-install scripts. Its build provenance is signed and verified. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the Hilma MCP server expose?

Hilma exposes 3 tools: hilma_search, hilma_recent, hilma_notice_lookup. Their descriptions and schemas cost roughly 1,011 tokens of context every time the server is loaded.

### Is the Hilma MCP server still maintained?

Hilma is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

### What licence is the Hilma MCP server under?

Hilma declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.

## Links

- npm package: https://www.npmjs.com/package/@pipeworx/mcp-hilma
- Socket report: https://socket.dev/npm/package/@pipeworx/mcp-hilma
- Repository: https://github.com/pipeworx-io/mcp-hilma
- Website: https://pipeworx.io/packs/hilma
- Changelog RSS feed: https://verifymcp.io/servers/pipeworx-io-hilma/pipeworx-mcp-hilma.xml
- Changelog JSON feed: https://verifymcp.io/servers/pipeworx-io-hilma/pipeworx-mcp-hilma.json
- HTML version of this page: https://verifymcp.io/servers/pipeworx-io-hilma/pipeworx-mcp-hilma
