Skip to main content
Glama
polish-archives-mcp

polish-archives-mcp

by ianderso

geneteka_search

Read-only

Search Geneteka vital-record indexes by surname, region, register ID, record type, and years to find birth, marriage, and death entries, then page through results for scans and custodian details.

Instructions

Search Geneteka's index of one region, or of one register with rid.

Each row has the year and entry (act) number, the people, any indexer notes (often a date or village), the custodian holding the book, and any scan link (a Szukaj w Archiwach unit page opens in a browser). A zero covers only the registers and years searched: check geneteka_coverage. One page per call; ask for the next page rather than assuming the first is all.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "record_type": "<record_type>",
      "surname": "<surname>"
    },
    "name": "geneteka_search"
  }
}

Input Schema

NameRequiredDescriptionDefault
ridNoOne register's id, from geneteka_coverage.
pageNoPage of 50 rows, from 1.
exactNoMatch the surname exactly.
givenNoGiven name.
given2NoThe second person's given name.
regionNoRegion code (see regions). Not needed when rid is given.
refreshNoTrue asks the site again instead of using the cached answer (kept a day).
surnameYesSurname. Geneteka also finds close forms unless exact.
year_toNoLast year.
surname2NoA second person in the same entry: the other spouse, or a parent.
year_fromNoFirst year, e.g. 1850.
record_typeYesB births/baptisms, M marriages, D deaths/burials.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover read-only and open-world; the description goes further by describing the row shape (year, act number, people, indexer notes, custodian, scan link), noting that a scan link opens an external Szukaj w Archiwach page in a browser, and disclosing the one-day cache via refresh. It doesn't state rate limits or failure modes, but the added context is substantial.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

It is front-loaded with purpose, then result shape, then caveats and pagination, and every sentence carries information. The pagination sentence is slightly conversational ('ask for the next page rather than assuming the first is all') but still earns its place by preventing a common mistake.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 12 parameters and no output schema, the description carries the return-value burden and does so: it explains row contents, the zero-result caveat, caching, and pagination. An agent can call this correctly and interpret the results without further information.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the parameters are already documented, and most of the description's parameter talk (rid, exact matching, fuzzy surnames) restates the schema. The valuable extra is the mutual exclusivity framing of region versus rid and the caveat that year bounds limit what a zero means, but that is modest value over a fully documented schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The opening sentence names a specific verb (Search) and resource (Geneteka's index) and defines the two scoping modes: a whole region, or a single register via rid. Geneteka as the named source, plus the pointer to geneteka_coverage, lets an agent distinguish it from the other search siblings without opening a schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives concrete operational guidance: check geneteka_coverage when a result is zero, and page one call at a time rather than assuming completeness. It does not explicitly say when to prefer a different search tool (e.g. for other databases), so routing guidance is context-level rather than exhaustive.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.