# Matricula Church Books (pypi · matricula-mcp)

Find parishes and registers on Matricula, the church-book portal; open any page in its viewer.

- Trust score: 79/100 (medium)
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-10-18

## Components

- pypi · `matricula-mcp`: 79/100 (this document), [markdown](https://verifymcp.io/servers/ianderso-matricula-mcp/matricula-mcp.md), [page](https://verifymcp.io/servers/ianderso-matricula-mcp/matricula-mcp)

## Channel facts

- Registry: `pypi`
- Package: `matricula-mcp`
- Version: `0.1.0`
- 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-10-18.

- **Supply Chain Security**: 100/100
  - No malware found by supply-chain analysis.
  - No known CVEs affecting this package version or its production dependencies.
  - Runs hatchling.build at install time, a recognised build step with no custom scripting around it.
  - 1 of 32 dependencies flagged as unhealthy.
- **Provenance & Transparency**: 100/100
  - Source repository is publicly reachable at the declared URL.
  - Cryptographically verified build provenance (signed, bound to ianderso/matricula-mcp).
  - Clear OSI-approved license (MIT).
  - Actively maintained (last published 6 days ago).
  - Publishes a security disclosure policy (SECURITY.md).
- **Schema Quality & AI Usability**: 61/100
  - AI-judged instruction clarity (good).
  - Context-footprint check failed: tool/resource definitions use about 1574 tokens (~224/item across 7 items; 7 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 0/100
  - Stability not yet verified: not enough scan history yet (needs a 30-day window).
- **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 7 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 8 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a current MCP spec version (2026-07-28).

**Unverified: 1 category.** A category scored 0 because we could not verify it: a data source with nothing on this package, evidence we could not reach, or a check we could not run. We only credit what we can confirm.

## Install

### How do I install the Matricula Church Books MCP server?

Matricula Church Books runs locally as a PyPI package, launched with uvx matricula-mcp. 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 ianderso-matricula-mcp -- uvx matricula-mcp
```

### Cursor

```json
{
  "mcpServers": {
    "ianderso-matricula-mcp": {
      "command": "uvx",
      "args": [
        "matricula-mcp"
      ]
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "ianderso-matricula-mcp": {
      "command": "uvx",
      "args": [
        "matricula-mcp"
      ]
    }
  }
}
```

### Codex

```bash
codex mcp add ianderso-matricula-mcp -- uvx matricula-mcp
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "ianderso-matricula-mcp": {
      "type": "local",
      "command": [
        "uvx",
        "matricula-mcp"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add ianderso-matricula-mcp --command uvx --arg matricula-mcp
```

### Hermes

```yaml
mcp_servers:
  ianderso-matricula-mcp:
    command: "uvx"
    args: ["matricula-mcp"]
```

### Netclaw

```json
{
  "McpServers": {
    "ianderso-matricula-mcp": {
      "Transport": "stdio",
      "Command": "uvx",
      "Arguments": [
        "matricula-mcp"
      ]
    }
  }
}
```

### Vellum

```bash
assistant mcp add ianderso-matricula-mcp -t stdio -c uvx -a matricula-mcp
```

### Other

```json
{
  "mcpServers": {
    "ianderso-matricula-mcp": {
      "command": "uvx",
      "args": [
        "matricula-mcp"
      ]
    }
  }
}
```

## 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-10-18 (score 79, +15)

- [security improvement] Malware scan: unverified → pass

### 2026-10-14 (score 64, +29)

- [security improvement] Injection markers: unverified → pass
- [security] First check of Judged manipulation: pass
- [security] Stability: Stability not yet verified: not enough scan history yet (needs a 30-day window).
- [functional improvement] Tool coverage: unverified → 100
- [functional improvement] MCP protocol: unverified → pass
- [functional] First check of Schema quality: fail
- [functional] First check of Destructive annotations: pass
- [functional] First check of Schema quality: fail
- [functional] First check of Schema quality: good
- [functional] First check of Tool coverage: 100

### 2026-10-13 (score 35, −15)

- [security regression] Malware scan: pass → unverified

### 2026-10-12 (score 50)

First indexed and scored.

## MCP tools (7)

### `matricula_sections` (~149 tokens)

List Matricula's countries and, in each, its sections: the dioceses and archives.

A section's key is what matricula_parishes takes. `parishes` is Matricula's
own count. The first call for every country reads about a dozen pages,
two seconds apart; after that the list is cached for four weeks.

Input parameters:

- `country` (string): One country: its key ('oesterreich', 'LU'), German name or English name. Empty lists every country.
- `refresh` (boolean): True asks Matricula again instead of using the cache, and replaces the cached copy. Lists are kept 28 days, parish and register pages 7, searches 1.

### `matricula_parishes` (~206 tokens)

List the parishes of one diocese or archive, with their coordinates.

Names are matched as Matricula writes them; a village that was not a
parish is found through matricula_search, which reads the parishes'
descriptions. `about` is the section's own note, often naming the
archive and how to reach it: the place to report a publication.

Input parameters:

- `count` (integer): Most parishes to return (1-1000).
- `query` (string): Keep parishes whose name contains this, ignoring case, accents and hyphens, e.g. 'kirchberg'.
- `refresh` (boolean): True asks Matricula again instead of using the cache, and replaces the cached copy. Lists are kept 28 days, parish and register pages 7, searches 1.
- `section` (string, required): A section key from matricula_sections, e.g. 'deutschland/passau', or its Matricula address.

### `matricula_registers` (~210 tokens)

List a parish's registers: signature, type, dates, notes, and each one's key.

\`type` is the archive's own word (Taufen, Trauungen, Sterben, Index - ...);
\`kind` is this server's reading of it. Page counts and page links come
from matricula_register. A register with `hosted_elsewhere` is shown on
the archive's own site, not in Matricula's viewer. A gap in the years may
be a register closed by law, unscanned, or lost.

Input parameters:

- `kind` (string): Keep registers of this kind (indexes included).
- `parish` (string, required): A parish key, e.g. 'oesterreich/salzburg/krimml', or its Matricula address.
- `refresh` (boolean): True asks Matricula again instead of using the cache, and replaces the cached copy. Lists are kept 28 days, parish and register pages 7, searches 1.

### `matricula_register` (~259 tokens)

Read one register: its description, citation, and every page's label and viewer link.

A page's `url` opens it in Matricula's own viewer for a person to read;
\`page` is the image's position, the number to cite with the label. A
label (e.g. '02-Taufe_0001', '001-03_0004-r') is a finding aid naming the
section or folio; it is not a date. A register with no pages shows no
images, often because the law closes it.

Input parameters:

- `count` (integer): Pages to list (1-1000).
- `first` (integer): First page to list, 1-based.
- `label_contains` (string): Keep pages whose label contains this, e.g. 'Index' or '0041'.
- `refresh` (boolean): True asks Matricula again instead of using the cache, and replaces the cached copy. Lists are kept 28 days, parish and register pages 7, searches 1.
- `register` (string, required): A register key from matricula_registers, e.g. 'oesterreich/salzburg/krimml/TFBI', or its Matricula address.

### `matricula_search` (~225 tokens)

Search Matricula's place index: which parishes name this place.

It matches parish names and the village lists and histories archives
wrote into parish descriptions (`snippet` shows where), so it finds the
parish a village belonged to. It never searches the registers' entries:
no name of a person is found this way. Searches are slow by design, at
least ten seconds apart.

Input parameters:

- `count` (integer): Most parishes to return (1-100).
- `from_year`: With to_year: only parishes with registers in these years.
- `place` (string, required): A place name, e.g. 'Altenmarkt'. Matricula matches whole words.
- `refresh` (boolean): True asks Matricula again instead of using the cache, and replaces the cached copy. Lists are kept 28 days, parish and register pages 7, searches 1.
- `section` (string): Keep only parishes in this section, e.g. 'oesterreich/gurk'.
- `to_year`: With from_year: the last year.

### `matricula_page_image` (~206 tokens)

Save one page image with its citation, if the operator has turned image access on.

Image access is off unless ICARUS has granted it: Matricula's image host
refuses scripted requests. While it is off, this answers
\`images_not_enabled` with the page's viewer link, label and citation, and
writes nothing. When on, the file is a new .jpg, not hidden, not under
\~/Library, and inside the operator's download folder when one is set.

Input parameters:

- `destination` (string): Absolute path of a new .jpg file, e.g. '/path/to/images/krimml-12.jpg'. Used only when image access is on.
- `page`: The page's position, 1-based, as matricula_register gives.
- `register` (string, required): A register key, e.g. 'oesterreich/salzburg/krimml/TFBI', or a page's viewer address (?pg=N).

### `cache_status` (~31 tokens)

Report this session's requests, the pacing, cache use, and whether images are on.

Makes no network call.

## Diagnostics

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

## Score history

- 2026-10-18: 79
- 2026-10-17: 64
- 2026-10-16: 64
- 2026-10-15: 64
- 2026-10-14: 64
- 2026-10-13: 35
- 2026-10-12: 50

## Common questions

### What is the Matricula Church Books MCP server?

Matricula Church Books is an MCP server listed in the public MCP registry as io.github.ianderso/matricula-mcp. Find parishes and registers on Matricula, the church-book portal; open any page in its viewer. This page covers its PyPI package (matricula-mcp).

### Is the Matricula Church Books MCP server safe to use?

Matricula Church Books scores 79 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 18 October 2026. 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 Matricula Church Books MCP server expose?

Matricula Church Books exposes 7 tools: matricula_sections, matricula_parishes, matricula_registers, matricula_register, matricula_search, and 2 more. Their descriptions and schemas cost roughly 1,286 tokens of context every time the server is loaded.

### Is the Matricula Church Books MCP server still maintained?

Matricula Church Books is still listed as active in the MCP registry. We last reached this channel on 18 October 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 Matricula Church Books MCP server under?

Matricula Church Books 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

- PyPI project: https://pypi.org/project/matricula-mcp/
- Socket report: https://socket.dev/pypi/package/matricula-mcp
- Repository: https://github.com/ianderso/matricula-mcp
- Changelog RSS feed: https://verifymcp.io/servers/ianderso-matricula-mcp/matricula-mcp.xml
- Changelog JSON feed: https://verifymcp.io/servers/ianderso-matricula-mcp/matricula-mcp.json
- HTML version of this page: https://verifymcp.io/servers/ianderso-matricula-mcp/matricula-mcp
