Skip to main content
Glama

Belgian annual accounts (NBB)

get_belgian_company_filing
Read-only

One Belgian annual-account deposit as filed (NBB CBSO Authentic Data): Belgian company financial statements as the official PDF, returned base64-encoded. Reference comes from list_belgian_company_filings. Deposits are immutable. A sole proprietorship or a legal form in doubt in the KBO copy is refused (404, not charged), like an enterprise number the KBO copy does not hold or whose name is under objection (the profile's 404); an empty KBO copy answers 503 collecte_en_cours. The structured JSON-XBRL, when the NBB publishes one, is on the REST route with ?format=json (sorted: directors and shareholders removed and counted). Paid via x402 ($0.15 in USDC or EURC).

Input Schema

NameRequiredDescriptionDefault
idYes10-digit Belgian enterprise number (KBO/BCE)
api_keyNoOptional Sirenic API key (srn_live_…) to pay with prepaid credits instead of x402, with no wallet needed. Get one at https://api.sirenic.eu/compte?utm_source=api&utm_campaign=mcp. Ignored when x_payment is provided (the signed payment wins). On insufficient balance the tool returns a credits error, not an x402 quote.
referenceYesDeposit reference taken from the filings list, e.g. 2026-00123205
x_paymentNoOptional signed x402 PAYMENT-SIGNATURE header value. Omit to receive the payment quote.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • removedInput schema / additionalProperties
      Removed value: -false
  2. Added
  3. Removed
  4. Changed1 schema field changed
    • changedInput schema / properties / reference / description
      Previous value: -"Deposit reference, e.g. 2023-00123456"New value: +"Deposit reference taken from the filings list, e.g. 2026-00123205"
  5. Changed1 schema field changed
    • addedInput schema / properties / api_key
      Added value: +{
      +  "description": "Optional Sirenic API key (srn_live_…) to pay with prepaid credits instead of x402 — no wallet needed. Get one at https://api.sirenic.eu/compte. Ignored when x_payment is provided (the signed payment wins). On insufficient balance the tool returns a credits error, not an x402 quote.",
      +  "type": "string"
      +}
  6. Added

TDQS

A4.4/5.0
Behavior5/5

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

Annotations only say read-only and open-world; the description adds material beyond that — deposits are immutable, the exact refusal semantics (404 for sole proprietorships, uncertain legal forms, unknown enterprise numbers, objection-listed names), the 503 collecte_en_cours case, and the payment model ($0.15 via x402 in USDC/EURC). This is precisely the failure-mode and cost information an agent cannot get from structured fields.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The core purpose is front-loaded in the first sentence, but the remaining text is one dense run of parentheticals and semicolon chained clauses; phrases like 'the profile's 404' are cryptic and cost the reader without adding clear signal. Information is valuable but the packaging is over-compressed.

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 a read-only, two-required-parameter tool with no output schema, the description covers return format (base64 PDF), prerequisites, immutability, error codes, and billing — enough to call it correctly. It does not describe how the base64 payload is wrapped in the response envelope or size limits, which is the remaining gap.

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 100%, so the baseline is 3, but the description adds genuine meaning: it explains the provenance of `reference` (must come from the filings list) and introduces the payment/pricing context behind `api_key` and `x_payment`. It does not restate the 10-digit or reference patterns, which the schema already handles.

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: retrieves one Belgian annual-account deposit as filed (NBB CBSO Authentic Data), returned as the official PDF base64-encoded. It also explicitly separates itself from the sibling list_belgian_company_filings (which supplies the reference) and from the REST JSON-XBRL variant, so an agent can pick it out of a crowded country-filing family.

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?

'Reference comes from list_belgian_company_filings' establishes the prerequisite call ordering, and the ?format=json note tells the agent when to prefer the REST route for structured data. What is missing is an explicit statement of when not to use this tool (e.g., versus get_belgian_insider_transactions or other Belgian siblings), so it stops short of a 5.

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