Skip to main content
Glama
norway-archives-mcp

norway-archives-mcp

by ianderso

municipalities

Read-only

Look up Digitalarkivet's historical Norwegian municipality names, numbers, and list-type codes by partial name or county to filter archive records by 1947-era boundaries; no network call.

Instructions

Look up Digitalarkivet's historical municipalities and their numbers. Makes no network call.

The da_ tools filter by these (as they stood around 1947), not by today's merged municipalities. Also lists the list-type codes.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "municipalities"
  }
}

Input Schema

NameRequiredDescriptionDefault
queryNoPart of a name, or a four-digit number.
countyNoAn old county name or two-digit number.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=false, and "Makes no network call" largely restates the openWorldHint declaration rather than adding new behavior. The genuinely additive piece is confirming these are historical (c. 1947) rather than current municipality records, which affects how results should be interpreted. With the safety profile covered by annotations, this is a modest but real contribution.

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?

Three short sentences, front-loaded with the purpose before the sibling-tool relationship. The closing "Also lists the list-type codes" is cryptic and appended without structure, which is the only real inefficiency.

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

Completeness3/5

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

For a two-optional-parameter read-only lookup with no output schema, the description leaves the return shape unexplained, and the mention of "list-type codes" is never clarified. It does enough for an agent to call the tool correctly, but the 1947 framing would benefit from one more sentence on what a result contains.

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 description coverage is 100%, so both parameters (query, county) are already documented in the schema, making a 3 the correct baseline. The description adds useful semantic framing that the values refer to the 1947-era naming and numbering, which reinforces why the schema specifies a four-digit number and an old county name. It adds nothing about the "list-type codes" clause despite it appearing to relate to the query surface.

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

Purpose4/5

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

Names a specific verb and resource: "Look up Digitalarkivet's historical municipalities and their numbers." It also scopes the resource in time (around 1947) and explains the relationship to the da_ family of tools, so an agent can distinguish it from a general place-name lookup. The final clause about "list-type codes" is vague and slightly muddies an otherwise crisp statement of purpose.

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?

"The da_ tools filter by these (as they stood around 1947), not by today's merged municipalities" gives clear, actionable context: this tool is the resolver for the values the da_ tools expect. It supplies no explicit exclusions or named alternative for lookups outside Digitalarkivet, but the intended usage window is easy to infer from the sibling reference.

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