Skip to main content
Glama

Danish Company Info by SelskabsInfo

Get beneficial owners (UBO) of a Danish company

get_real_owners
Read-only

Beneficial owners (reelle ejere, UBO) of one Danish company from the confidential beneficial-owner register: each with name, whether a person or a company, ownership and voting share in percent where reported, special ownership conditions (such as a right to appoint the board), country and the period the ownership applies, current owners first. Confidential data: the account needs a signed contract with SelskabsInfo; without one the call is refused with contract_required, at no cost. Without a contract, get_ownership gives the legal owners and get_ultimate_owners follows them through holding companies to the people at the end. Looked up by CVR number (use search_companies first when you only have a name). Costs 2 credits: the base lookup plus this section. When the user also needs the company profile or more than one section, one get_company call with sections is cheaper and faster than several section tools. If the caller's plan does not include the section, the call is refused at no cost with tier_restricted; tell the user it is not in their current plan rather than reporting the data as absent.

Input Schema

NameRequiredDescriptionDefault
cvrYesThe 8-digit Danish CVR number.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already cover the safety profile (readOnlyHint true, destructiveHint false, openWorldHint true), and the description goes well beyond them: contract requirement with the contract_required refusal, tier_restricted refusal semantics, that both refusals are free, the 2-credit cost breakdown, and guidance not to report missing data as absent. This is exactly the behavioral context annotations cannot express.

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 what the tool returns, then cost, alternatives, and error behavior in descending priority; nearly every clause carries decision-relevant information. It is dense and long for a one-parameter tool, but the length is driven by genuinely useful refusal/cost/routing details rather than filler.

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?

No output schema exists, yet the description enumerates the returned fields and their ordering, plus cost, access prerequisites, refusal codes, and cheaper alternatives. Nothing an agent needs to call this correctly or explain a failure to a user is missing.

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?

With a single parameter at 100% schema description coverage, the schema already fully documents the 8-digit CVR pattern, and the description's 'looked up by CVR number' largely restates it. The addition of 'use search_companies first when you only have a name' is routing guidance rather than parameter semantics, so the baseline 3 is the honest score.

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: beneficial owners (UBO) of one Danish company from the confidential beneficial-owner register, and enumerates returned fields (name, person/company, ownership and voting share, special conditions, country, period, ordering). It explicitly distinguishes itself from the two nearest siblings, get_ownership (legal owners) and get_ultimate_owners (holding-company chains), so an agent can pick it without opening any schema.

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?

Gives explicit when-to-use (confidential UBO register), fallbacks when the account lacks a contract (get_ownership, then get_ultimate_owners), an entry prerequisite (CVR, with search_companies first if only a name is known), and a cheaper alternative (one get_company call with `sections` for multiple sections). Exclusions and alternatives are named rather than implied.

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