Skip to main content
Glama

call_endpoint

Read-onlyIdempotent

Discovery meta-tool. Executes a read-only HTTP request against the Nordic Data API for any data endpoint discovered via list_endpoints, and returns the response. Authenticates with the same scoped API key as the curated tools. Strictly read-only: only GET/HEAD requests are permitted, plus POST to three allowlisted screening endpoints (/api/sanctions/screen, /api/adverse/screen, /api/peps/nl/screen) that are pure queries using POST only to carry a large request body. All state-changing operations (watch lists, webhooks, DELETE/PUT/PATCH) and all /admin endpoints are refused. Use list_endpoints and get_endpoint_schema first to find the correct path, method, and parameters.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pathYesConcrete endpoint path, e.g. '/api/company/dk/22756214'. Path templates with {placeholders} are also accepted when you supply the values in `params`.
methodNoHTTP method to use. Read-only methods only: GET or HEAD, plus POST solely for the allowlisted screening query endpoints (/api/sanctions/screen, /api/adverse/screen, /api/peps/nl/screen). Defaults to GET.GET
paramsNoParameters for the call. Values whose keys match {placeholders} in the path are substituted into the path. Remaining values become query-string params for GET/DELETE, or the JSON request body for POST/PUT/PATCH.

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already provide readOnlyHint=true, destructiveHint=false, and idempotentHint=true, so the safety profile is well covered. The description adds valuable context beyond these: the specific allowlist of three POST screening endpoints, the refusal of all state-changing operations and /admin endpoints, and the scoped authentication detail. It explains the unusual behavior that POST is permitted only for three specific pure-query endpoints. Minor gap: doesn't describe error/refusal response format or rate-limit behavior, but the added context genuinely enhances the annotations.

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?

The description is a dense, well-structured paragraph covering purpose, constraints, authentication, and usage flow in a single block. Every sentence contributes meaningful information: the read-only scope, the POST allowlist rationale ('pure queries using POST only to carry a large request body'), the refusal list, and the discovery workflow. It's more verbose than the minimal ideal but earns its length given the complexity of the constraints. Could be slightly tightened but is appropriately front-loaded with purpose.

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?

Given this is an open-ended, discovery-oriented tool with no output schema, the description provides substantial completeness: it covers authentication, allowed methods, the specific POST allowlist, refused operations, and the associated discovery tools. The nuanced constraint handling (path placeholders, query-string vs request-body semantics) is captured in both schema and description. It doesn't detail pagination or error handling for the response, but for a generic endpoint-call tool with strong annotations and full schema coverage, this is adequately complete.

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 the schema already explains all three parameters thoroughly (path with placeholder substitution, method with read-only constraints and defaults, params with URL substitution vs query-string/body semantics). The description adds the relationship to list_endpoints/get_endpoint_schema discovery flow and the allowlist constraint, which supplements rather than repeats the schema. Baseline 3 is appropriate since schema carries the heavy lifting and the description adds minor selection-context value.

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?

The description clearly identifies this as a read-only HTTP client for the Nordic Data API, specifying the verb (execute a request) and resource (data endpoints discovered via list_endpoints). It distinguishes from curated siblings by emphasizing its generic/discovery nature: 'any data endpoint discovered via list_endpoints'. However, it doesn't explicitly name sibling alternatives like get_endpoint_schema or list_endpoints in the purpose statement itself, and the contrast with curated tools is implicit rather than naming them.

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?

Excellent usage guidance: explicitly instructs 'Use list_endpoints and get_endpoint_schema first to find the correct path, method, and parameters.' Clearly differentiates from curated tools by noting it 'Authenticates with the same scoped API key as the curated tools,' implied that one would use this only when curated tools don't cover the endpoint. Also gives explicit exclusions: all state-changing operations (watch lists, webhooks, DELETE/PUT/PATCH) and /admin endpoints are refused.

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.

TDQS

A4.3/5.0
Disambiguation5/5

Each tool targets a clearly distinct function: address autocomplete, company lookup, enriched company data, KYB report, LEI lookup, sanctions screening, VAT validation, French history, and three discovery meta-tools. The discovery tools (list_endpoints, get_endpoint_schema, call_endpoint) form a clean trio with distinct roles. There is minor overlap between company_enriched, kyb_full, and lookup_company, but their scopes are well-differentiated in the descriptions.

Naming Consistency4/5

The naming pattern is largely consistent with noun-based descriptive names (company_enriched, lookup_company, lookup_lei, validate_vat, screen_sanctions, autocomplete_address). Three discovery tools use verb-based names (list_endpoints, get_endpoint_schema, call_endpoint), and fr_history breaks the pattern as a country-specific tool. Minor inconsistency but readable and predictable overall.

Tool Count4/5

11 tools is within a reasonable range for a data-provider server that covers 15 countries and multiple data domains (entities, sanctions, VAT, addresses, LEI). Each tool addresses a distinct need. Slightly heavy given some overlap, but the count is justified by the breadth of coverage.

Completeness4/5

The core business-intelligence surface is well covered: company lookup, enriched data, full KYB, LEI, sanctions, VAT, address autocomplete, and French history. The discovery meta-tools (list_endpoints, get_endpoint_schema, call_endpoint) elegantly bridge gaps by exposing 230+ additional endpoints. Minor gaps: no dedicated UK-specific or non-French history tool, and screening is limited to sanctions/PEP without a dedicated adverse-media tool separate from kyb_full.