Skip to main content
Glama

List access addresses by street, postcode or parcel

dar_list_access_addresses
Read-onlyIdempotent

List Danish access addresses (husnumre) filtered by municipality/road code, street ID, postcode ID, or cadastral parcel ID; returns coordinates and supports pagination.

Instructions

List access addresses (husnumre) filtered by one of:

  • municipality_code + road_code (kommunekode + vejkode, both 4-digit strings), e.g. "0101" + "5240" = Oehlenschlægersgade, København

  • street_id (NavngivenVej UUID, from dar_get_street or an earlier result)

  • postcode_id (Postnummer UUID, from dar_get_postcode; NOT the 4-digit postcode)

  • cadastral_parcel_id (jordstykke id, from an earlier access-address result)

This is the anonymous way to enumerate a street when no API key is set. Paginated: page (1-based) and page_size (max 100). has_more is true when a full page came back; request the next page to continue. Results include coordinates (EPSG:25832 and WGS84).

Example: dar_list_access_addresses({ municipality_code: "0101", road_code: "5240", page_size: 50 }).

Does NOT search by street name. For that use dar_search_addresses (needs DATAFORDELER_API_KEY). Danish municipality codes are 4 digits with a leading zero (København 0101, Aarhus 0751, Odense 0461, Aalborg 0851).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pageNo1-based page number.
statusNo"current" returns only status 3 (gældende) records; "all" includes preliminary, discontinued and cancelled.current
page_sizeNo
road_codeNoVejkode within the municipality, 4 digits, e.g. "5240".
street_idNoNavngivenVej UUID.
postcode_idNoPostnummer UUID (not the 4-digit code).
municipality_codeNoKommunekode, 4 digits, e.g. "0101".
cadastral_parcel_idNoJordstykke id.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, idempotent, non-destructive, openWorld), so the description's value is in the extras it supplies: anonymous access when no API key is set, 1-based pagination with page_size capped at 100, and the has_more/full-page continuation rule. It stops short of error behavior or rate limits, but the added operational 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?

Front-loaded with purpose and filters in a scannable bulleted block, then pagination, then the exclusion. Slightly long overall, and the Danish municipality-code examples in the final sentence are borderline redundant, but nearly every line carries actionable information.

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

Completeness4/5

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

For an 8-parameter, no-required-parameter list tool with no output schema, the description covers filter selection, pagination, auth mode and result contents (coordinates in EPSG:25832 and WGS84). Only minor gaps remain, such as the default page_size behavior and what happens with conflicting filters.

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

Parameters4/5

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

Schema coverage is 88% so the baseline would be 3, but the description goes further: it frames the four filter parameters as an either/or choice ('filtered by one of'), explains the provenance of each UUID, warns that postcode_id is NOT the 4-digit postcode, and gives a worked call example plus leading-zero municipality codes.

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?

States a specific verb and resource ('List access addresses (husnumre)') and immediately distinguishes itself from dar_search_addresses by scope. The parenthetical Danish term and the filter list make the resource unambiguous among the many dar_* siblings.

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

Usage Guidelines5/5

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

Explicitly names when to use each filter mode (municipality_code+road_code, street_id, postcode_id, cadastral_parcel_id), where each id comes from (dar_get_street, dar_get_postcode, earlier results), and closes with the exclusion: 'Does NOT search by street name. For that use dar_search_addresses (needs DATAFORDELER_API_KEY).' Nothing is left to inference.

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