Skip to main content
Glama

An owner's holdings

owner_holdings
Read-onlyIdempotent

Report WHERE ONE OWNER HOLDS PROPERTY (portfelj, nepremicnine lastnika), by municipality and by what the property is for. INPUT: an owner_id from find_owner or institutional_owners, or a maticna stevilka. Optional area ref to list one municipality's parcels. READ: parcels — WHICH parcels (katastrska obcina, parcel number, area, zoning, share), largest first, with n_parcels_matching. Empty with parcels_listed: false for owners of more than 5,000 parcels. READ: as_of for gurs_valuation — ownership is GURS's quarterly extract, not the live land register: a parcel sold since still shows the SELLER. That is how a sold plot is found from its seller's name. NEVER: read the counts as values. A forest parcel and a city office each count as one, and a fractional stake counts as a whole property. For land, n_holdings is about twice n_properties because both GURS registers file each parcel. Use it for 'where does this company own things', never for 'what is their portfolio worth'.

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": {
      "owner_id": "<owner_id>"
    },
    "name": "owner_holdings"
  }
}

Input Schema

NameRequiredDescriptionDefault
areaNo
owner_idYes
parcel_limitNo

Output Schema

NameRequiredDescriptionDefault
areasYes
as_ofYes
ownerYesWhat is known about an owner, from the business register rather than the land one.
caveatsYes
parcelsYes
n_propertiesYes
by_usage_kindYes
parcels_listedYes
areas_truncatedYes
n_municipalitiesYes
n_parcels_matchingYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.8/5.0
Behavior5/5

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

With readOnly/idempotent annotations already covering safety, the description adds substantive behavior: results sorted largest first, `parcels_listed: false` plus empty result for owners over 5,000 parcels, and the GURS quarterly-extract lag meaning a sold parcel still shows the seller. The seller-of-a-sold-plot trick is genuinely non-obvious operational knowledge.

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?

Capitalized labels (INPUT, READ, NEVER) front-load the essential routing and caveats, and each sentence carries real information. The final 'use it for / never for' restates the opening scope line, a small redundancy in an otherwise dense block.

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?

An output schema exists, so return values need not be spelled out, yet the READ lines still flag the truncation sentinel and the counting caveats (a forest parcel and a city office each count as one; n_holdings ≈ 2× n_properties for land). Nothing needed to interpret results correctly is missing except the `parcel_limit` knob, which defaults sensibly.

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 description coverage is 0%, so the description must carry meaning and does for two of three params: `owner_id` sources (find_owner, institutional_owners, maticna stevilka) and `area` as a municipality ref limiting parcels. `parcel_limit` (default 50) is never mentioned, leaving one knob undocumented, and its relationship to the >5,000-parcel cutoff is unclear.

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 ('report where one owner holds property') with the local-language synonyms, and explicitly bounds the scope: 'where does this company own things', never 'what is their portfolio worth'. This separates it from find_owner/institutional_owners (which supply the ID) and from valuation tools.

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?

The INPUT line routes the agent explicitly: get `owner_id` from find_owner or institutional_owners, or pass a maticna stevilka. The NEVER/use-for contrast gives an explicit when-not condition, so no inference is required.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources