> ## Documentation Index
> Fetch the complete documentation index at: https://docs.syrto.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Metric definitions

> Search for financial metric definitions, formulas, and causal relationships.

`syrto_search_metric_definitions` returns full metric definitions including the name, description, calculation formula, unit of measure, direction (better if higher/lower/near target), and dependency links showing the causal chain between metrics.

## Use this tool to

* Understand what a specific financial metric means, how it's calculated, and what drives it
* Explore causal relationships between metrics and identify dependencies
* Resolve a metric name to its slug before calling [`syrto_get_company_metrics`](/mcp/tools/company-metrics)

## Arguments

<ParamField query="query" type="string" required>
  Keyword (e.g. `"profitability"`, `"working capital"`, `"debt"`) or exact slug (e.g. `"ebitda"`, `"roe"`, `"net_working_capital"`). Exact slug lookup always returns a single result instantly.
</ParamField>

<ParamField query="top_k" type="integer">
  Maximum results for keyword search. Default `5`, maximum `20`. Ignored for exact slug matches.
</ParamField>

<ParamField query="language" type="string">
  `"en"` for English (default) or `"it"` for Italian.
</ParamField>

## Returns

A JSON list of metric definitions, each containing:

<ResponseField name="name" type="string">
  Human-readable metric name.
</ResponseField>

<ResponseField name="syrto_code" type="string">
  Internal metric identifier (slug). Use as input to `syrto_get_company_metrics` via the `metric_slugs` parameter. Use `name` for display.
</ResponseField>

<ResponseField name="short_name" type="string | null">
  Abbreviated metric name, if available.
</ResponseField>

<ResponseField name="description" type="string">
  Plain-language explanation of what the metric measures.
</ResponseField>

<ResponseField name="type" type="string">
  Metric category.
</ResponseField>

<ResponseField name="uom" type="string">
  Unit of measure (e.g. `"EUR"`, `"%"`, `"ratio"`).
</ResponseField>

<ResponseField name="better_if" type="string">
  `"HIGHER"`, `"LOWER"`, or `"NEAR_TARGET"`.
</ResponseField>

<ResponseField name="better_if_target" type="float | null">
  Target value when `better_if` is `"NEAR_TARGET"`. `null` for `HIGHER` or `LOWER` metrics.
</ResponseField>

<ResponseField name="fraction_digits" type="integer">
  Number of decimal places for displaying the metric value.
</ResponseField>

<ResponseField name="calculation_formula" type="string">
  How the metric is computed.
</ResponseField>

<ResponseField name="affects" type="string[]">
  Metrics this one feeds into.
</ResponseField>

<ResponseField name="is_affected_by" type="string[]">
  Metrics that drive this one.
</ResponseField>

<ResponseField name="note" type="string">
  Context note about data availability and where to find more on syrto.ai.
</ResponseField>

## Example

**Look up EBITDA and its dependencies:**

```json theme={null}
{
  "query": "ebitda"
}
```

**Response (abbreviated):**

```json theme={null}
[
  {
    "name": "EBITDA",
    "syrto_code": "ebitda",
    "short_name": "EBITDA",
    "description": "Earnings before interest, taxes, depreciation, and amortisation. Measures operating profitability before non-cash charges.",
    "type": "profitability",
    "uom": "EUR",
    "better_if": "HIGHER",
    "better_if_target": null,
    "fraction_digits": 2,
    "calculation_formula": "Operating profit + Depreciation + Amortisation",
    "affects": ["EBITDA Margin", "Net Financial Position / EBITDA"],
    "is_affected_by": ["Revenues", "Operating Costs"],
    "note": "..."
  }
]
```
