Pensiata - Bulgarian Pension Fund Analytics
Server Details
Bulgarian pension fund analytics — NAV data, metrics, rankings, and benchmarks.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- nvasilevv/pensiata-mcp
- GitHub Stars
- 0
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Score is being calculated. Check back soon.
Available Tools
26 toolscache_statsAInspect
Return MCP cache telemetry for diagnostics and performance debugging.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. 'Return' implies read-only access, but description omits whether calling this affects cache performance, if it requires special permissions, or the verbosity/cost of the telemetry payload. However, presence of output schema (per context signals) mitigates need for return value description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with zero redundancy. Front-loaded verb ('Return') followed by resource and purpose clause. Every token contributes to agent understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Appropriate for low-complexity, zero-parameter diagnostic tool. Presence of output schema satisfies return value documentation. Could marginally improve by clarifying 'MCP' refers to server's internal cache vs external system, but sufficient for invocation decision.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Zero parameters present. Per rubric baseline for 0-param tools is 4. Schema coverage is trivially 100% (empty object), requiring no semantic elaboration in description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description uses specific verb 'Return' with clear resource 'MCP cache telemetry' and scope 'diagnostics and performance debugging'. It sharply distinguishes itself from financial/pension data siblings (e.g., get_bulgarian_pension_funds, compute_metric) by identifying as infrastructure/operational tooling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'for diagnostics and performance debugging' provides implied usage context, indicating when to invoke this tool (troubleshooting vs. normal operation). However, it lacks explicit when-not guidance or alternatives forobservability.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compute_metricBInspect
Compute a metric for Bulgarian pension funds or benchmark targets.
Supports returns, drawdown, volatility, Sharpe/Sortino/Calmar, correlation, and benchmark-aware metrics over configurable period and frequency. Data freshness: computed from latest ingested FSC NAV and benchmark data.
| Name | Required | Description | Default |
|---|---|---|---|
| metric | Yes | ||
| period | Yes | ||
| window | No | ||
| fund_id | No | ||
| frequency | No | daily | |
| scheme_code | No | ||
| manager_slug | No | ||
| benchmark_slug | No | ||
| risk_free_rate | No | ||
| risk_free_slug | No | ||
| benchmark_target_slug | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are absent, so description carries full burden. Adds valuable data freshness context ('computed from latest ingested FSC NAV'). However, lacks disclosure on computational cost, caching behavior, idempotency, or error modes for invalid metric requests.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences efficiently structured: purpose statement, capability enumeration, and data freshness note. No redundancy; front-loaded with essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having an output schema to handle return values, the high parameter complexity (11 params, many nullable with complex anyOf types) combined with 0% schema coverage requires substantially more parameter guidance. Also missing critical sibling differentiation given the crowded tool namespace.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 0% description coverage and 11 parameters. Description implicitly covers 'metric' (via listed types), 'period', and 'frequency', but leaves 8 parameters (window, fund_id, scheme_code, manager_slug, benchmark_slug, risk_free_rate, risk_free_slug, benchmark_target_slug) completely undocumented. Insufficient compensation for schema deficiency.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clear verb (Compute) and domain (Bulgarian pension funds/benchmark targets) with specific metric types listed. However, fails to distinguish from similar siblings like 'get_bulgarian_pension_fund_metric' or 'rank_bulgarian_pension_funds_by_metric'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus the numerous similar siblings (get_/rank_ variants). Does not state prerequisites or when computation is preferred over retrieval.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_benchmark_seriesAInspect
Get historical benchmark series for pension-fund comparison workflows.
Use with compute/rank tools to compare Bulgarian pension funds against inflation or market proxies over aligned periods. Data freshness: updated as new benchmark source observations become available.
| Name | Required | Description | Default |
|---|---|---|---|
| date_to | No | ||
| date_from | No | ||
| frequency | No | daily | |
| benchmark_slug | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It successfully discloses data freshness characteristics ('updated as new benchmark source observations become available'), which informs the agent about caching and update cadence. However, it fails to mention other critical behavioral traits expected for a data retrieval tool, such as error handling (what happens if benchmark_slug is invalid), rate limits, or whether the operation is idempotent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is excellently structured with three distinct, purposeful paragraphs: purpose statement, usage guidance, and data characteristics. Every sentence earns its place without redundancy. The information is front-loaded with the core action in the first sentence, followed by workflow context and operational metadata. No filler text is present.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema (which alleviates the need to describe return values), the description adequately covers the workflow domain (Bulgarian pension analysis). However, with four parameters and zero schema coverage, the description fails to provide sufficient detail for correct invocation—missing parameter formats, dependencies, and value constraints. It meets minimum viability but leaves significant invocation gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage, requiring the description to compensate significantly. The description provides minimal semantic value: 'over aligned periods' hints at the purpose of date_from/date_to but specifies no format (ISO 8601, etc.). It mentions 'benchmark series' but provides no guidance on benchmark_slug format, valid values, or that it likely comes from list_benchmarks. The frequency parameter and its enum values (daily/weekly/monthly) are entirely undocumented. This is inadequate compensation for zero schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves historical benchmark series using the specific verb 'Get' and identifies the target resource. It contextualizes the tool within 'pension-fund comparison workflows' and mentions 'Bulgarian pension funds,' providing domain specificity. However, it does not explicitly differentiate from the similarly named sibling 'get_bulgarian_pension_benchmark_series,' leaving potential ambiguity about which benchmark types this specific tool retrieves.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit workflow guidance by stating to 'Use with compute/rank tools' and defines the comparison purpose ('compare Bulgarian pension funds against inflation or market proxies'). This gives clear context for when to invoke the tool. It lacks explicit 'when not to use' guidance or naming prerequisite tools (e.g., 'list_benchmarks' to obtain the slug), but the workflow integration is well specified.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_bulgarian_pension_benchmarksAInspect
Alias for list_benchmarks with Bulgarian pension comparison context.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It correctly identifies itself as an alias, but fails to explain what 'Bulgarian pension comparison context' means operationally (e.g., filtering, metadata enrichment) or disclose other behavioral traits like caching or auth requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise single-sentence structure that front-loads the alias relationship. While efficient, it borders on overly terse given the lack of explanation for the 'comparison context' behavioral modification.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the existence of an output schema, the description need not explain return values. However, for an alias tool, it should clarify the nature of the contextual modification applied to the underlying `list_benchmarks` call, which it omits.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, which warrants a baseline score of 4. The description appropriately does not fabricate parameter semantics where none exist.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly identifies the tool as an alias for `list_benchmarks` and specifies the domain scope (Bulgarian pension comparison). This distinguishes it from the generic `list_benchmarks` sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies usage by stating it is an alias for `list_benchmarks` with specific context, but lacks explicit guidance on when to prefer this over the generic version or other Bulgarian pension tools like `get_bulgarian_pension_benchmark_series`.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_bulgarian_pension_benchmark_seriesBInspect
Alias for get_benchmark_series to retrieve inflation/market comparators for UPF/PPF/VPF.
| Name | Required | Description | Default |
|---|---|---|---|
| date_to | No | ||
| date_from | No | ||
| frequency | No | daily | |
| benchmark_slug | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full disclosure burden. Reveals critical behavioral trait that this is an 'alias' (delegates to sibling function). Mentions 'retrieve' implying read-only access, but fails to explicitly confirm safety profile, rate limits, or side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single efficient sentence (14 words) with zero waste. Front-loaded with the most critical information ('Alias for...'), immediately establishing the tool's relationship to existing functionality.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Has output schema (return values need not be described). Identifies tool purpose and domain adequately, but leaves all 4 parameters effectively undocumented given 0% schema coverage. Minimum viable for a retrieval tool of this complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% (no parameter descriptions), requiring the description to compensate. Mentions 'benchmark' which loosely maps to `benchmark_slug`, but provides no guidance on date string formats for `date_from`/`date_to` or implications of `frequency` enum values.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly identifies this as an alias for retrieving benchmark series data, specifying the domain (inflation/market comparators) and scope (UPF/PPF/VPF pension fund types). Distinguishes from generic `get_benchmark_series` by bulgarian pension context, though assumes familiarity with the underlying alias target.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies usage context through domain specificity (Bulgarian pension funds UPF/PPF/VPF) and alias relationship to `get_benchmark_series`, but lacks explicit when-to-use/when-not-to-use guidance or prerequisites for date range selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_bulgarian_pension_fund_managersBInspect
Alias for list_managers with explicit Bulgarian pension context for agent discovery.
| Name | Required | Description | Default |
|---|---|---|---|
| scheme_code | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses the alias relationship which explains it mirrors `list_managers` behavior with added context. However, with no annotations provided, the description fails to disclose read-only status, side effects, or return structure that agents need to know.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single efficient sentence with zero waste. Front-loads the alias relationship and domain context immediately.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequate for a simple alias wrapper given the output schema exists (no need to describe returns). However, the complete lack of parameter documentation (0% schema coverage) leaves a significant gap for a tool with domain-specific enum values.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% (no parameter descriptions). While the description mentions 'Bulgarian pension context' which hints at the domain for `scheme_code`, it fails to explain the parameter explicitly or decode the enum values (upf, ppf, dpf), leaving the parameter effectively undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly identifies the tool as an alias for `list_managers` with Bulgarian pension specificity, distinguishing it from the generic sibling. However, describes the relationship (alias) rather than the direct user-facing action (listing managers).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies usage for Bulgarian pension contexts by mentioning the domain specificity and alias relationship to `list_managers`, but lacks explicit 'when to use this vs. the generic alternative' guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_bulgarian_pension_fund_metricCInspect
Alias for compute_metric with explicit Bulgarian pension metric intent.
| Name | Required | Description | Default |
|---|---|---|---|
| metric | Yes | ||
| period | Yes | ||
| window | No | ||
| fund_id | No | ||
| frequency | No | daily | |
| scheme_code | No | ||
| manager_slug | No | ||
| benchmark_slug | No | ||
| risk_free_rate | No | ||
| risk_free_slug | No | ||
| benchmark_target_slug | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, leaving full disclosure burden on description. The 'alias' mention implies delegation to `compute_metric` but doesn't disclose side effects, caching behavior, computational complexity, or whether this is a simple lookup vs heavy calculation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single 9-word sentence contains no waste, but for a tool with 11 parameters and complex domain constraints, this is under-specification rather than optimal conciseness. The density is appropriate for an alias but insufficient for the parameter complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having an output schema (removing need to describe returns), the description inadequately covers the domain complexity. No explanation of Bulgarian pension scheme types, available metrics catalog, or parameter relationships leaves critical gaps for an 11-parameter tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 0% description coverage across 11 complex parameters. While 'Bulgarian pension metric intent' gives domain context for the metric parameter, it fails to compensate for undocumented parameters like scheme_code (upf/ppf/dpf), window, frequency, or the various slug/benchmark options.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly identifies itself as an alias for `compute_metric` with specific domain focus (Bulgarian pension), distinguishing it from the generic sibling. However, it doesn't specify what 'metric' calculation entails or how it differs from other Bulgarian-specific siblings like `rank_bulgarian_pension_funds_by_metric`.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implicitly suggests use for Bulgarian pension funds vs the generic `compute_metric`, but provides no explicit when-to-use guidance or comparison against other related siblings (e.g., when to use this vs `get_bulgarian_pension_fund_nav_series`).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_bulgarian_pension_fundsBInspect
Alias for list_funds to discover UPF/PPF/VPF fund IDs for FSC-based analysis.
| Name | Required | Description | Default |
|---|---|---|---|
| active_only | No | ||
| scheme_code | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With zero annotations provided, the description must carry full behavioral disclosure. It implies a read-only operation via 'discover' and adds 'FSC-based analysis' context, but fails to clarify if this alias behaves identically to list_funds, lacks safety declarations (read-only/destructive), and omits rate limit or caching details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single efficient sentence front-loaded with alias relationship and specific domain context. Dense with terminology but no wasted words; appropriate length for an alias tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given output schema exists, description needn't explain return values. However, with 0% schema parameter coverage and no annotations, it should explain domain acronyms (FSC, UPF, DPF/VPF) and parameter meanings more thoroughly. Adequate but leaves gaps for users unfamiliar with Bulgarian pension taxonomy.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 0% description coverage, requiring description to compensate. It mentions scheme types (UPF/PPF/VPF) hinting at scheme_code purpose but doesn't explicitly document either parameter, and 'VPF' contradicts the schema's 'dpf' enum value. No explanation provided for active_only semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States it discovers fund IDs for specific Bulgarian pension schemes and identifies itself as an alias for `list_funds`, distinguishing it from the generic sibling. However, mentions 'VPF' while schema enum uses 'dpf', creating slight terminology confusion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Notes it is an 'alias for `list_funds`' implying relationship to alternative, but lacks explicit guidance on when to prefer this specialized wrapper versus the generic list_funds, and omits prerequisites or exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_bulgarian_pension_metrics_catalogAInspect
Alias for list_metrics so agents can semantically find available pension metrics.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. The alias declaration provides crucial behavioral context (indirection to `list_metrics`), but description omits safety profile (read-only status), rate limits, or whether this returns cached vs live data.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence efficiently packs alias relationship, intent (semantic discovery), and domain (pension metrics). No redundant words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With zero input parameters and an output schema available, the description adequately covers invocation context. However, it omits the Bulgarian domain context present in the tool name and doesn't clarify relationship to other Bulgarian-specific siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Zero parameters present; baseline 4 applies per rules. No compensation needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clear explanation that this is an alias for `list_metrics` with the specific purpose of enabling semantic discovery of pension metrics. Distinguishes from siblings by identifying the proxied tool, though it could clarify what distinguishes the 'catalog' concept from the base list.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Effectively explains the semantic purpose ('so agents can semantically find'), implying when to use this over the direct `list_metrics` call. However, lacks explicit guidance on when to prefer the original tool or exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_holdings_reports_indexAInspect
Get a lightweight summary index of pension fund holdings reports.
Returns allocation metadata (equity %, domestic %, funds %) and top holdings
for each report without loading full content. Use this for quick discovery
to decide which reports to load in full with read_holdings_report.
| Name | Required | Description | Default |
|---|---|---|---|
| date_to | No | ||
| date_from | No | ||
| fund_type | No | ||
| manager_slug | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, description carries full burden. It discloses key behavioral traits: returns metadata not full content ('without loading full content'), performance characteristic ('lightweight'), and specific data included (equity %, domestic %, funds %, top holdings). Does not mention auth or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three well-structured sentences: purpose, return value specifics, and usage guidelines. No redundancy or filler. Front-loaded with clear action statement.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given output schema exists, description appropriately focuses on high-level return description and usage patterns rather than field-by-field return documentation. Only gap is lack of parameter documentation, though output schema presence mitigates completeness requirements for return values.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 0% description coverage for all 4 parameters (date_from, date_to, fund_type, manager_slug), and description fails to compensate by explaining what these filters do or their expected formats. Only resource context 'pension fund holdings reports' provides implicit hints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clear specific verb 'Get' combined with resource 'pension fund holdings reports'. Distinguishes from sibling `read_holdings_report` by emphasizing 'lightweight summary index' vs full content, and specifies exact return data (allocation metadata, top holdings).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use: 'Use this for quick discovery to decide which reports to load in full with `read_holdings_report`'. Names the alternative tool directly and establishes clear workflow (discover first, read full second).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_pension_legal_frameworkAInspect
Return the full text of Bulgarian pension legal documents.
Args: document: Optional filter – "ordinance_9", "ordinance_33", or "kso". If omitted, returns all available documents.
Returns: Dict with document keys as top-level keys and their Markdown content as values.
| Name | Required | Description | Default |
|---|---|---|---|
| document | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses return format (Dict with Markdown values) which is valuable given no annotations, but omits other behavioral context like document size, rate limits, or performance characteristics. No annotations provided to carry this burden.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Uses structured Args/Returns format that is easy to parse. Every sentence conveys distinct information (purpose, parameter options, return structure). Slightly formal but efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequate for a single-parameter read operation with output schema present, but could be improved by explicitly contrasting with 'search_pension_law' to prevent agent confusion between retrieval modes.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Critical compensation for 0% schema description coverage by enumerating valid parameter values ('ordinance_9', 'ordinance_33', 'kso') and explaining the optional filter semantics. Without this, the agent would have no valid input examples.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States specific action (Return) and resource (full text of Bulgarian pension legal documents). Mentions 'full text' which implicitly distinguishes from the sibling 'search_pension_law', but lacks explicit guidance on when to choose this over search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explains parameter behavior (optional filter with specific values) but provides no explicit when-to-use guidance or comparison with sibling 'search_pension_law'. Agent must infer usage from 'full text' vs 'search' naming.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_benchmarksAInspect
List benchmark assets for Bulgarian pension comparisons.
Includes inflation and market references used to evaluate relative performance of UPF, PPF, and VPF/DPF funds. Data freshness: benchmark metadata is stable; prices are updated as new source data arrives.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It provides useful data freshness context (stable metadata, updated prices) but omits other behavioral traits like caching policies, rate limits, or whether the list is static versus filtered.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences efficiently structured: purpose statement, content elaboration, and data freshness note. No redundant words; information density is high with every sentence earning its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Appropriately complete for a zero-parameter listing tool with an output schema. The data freshness disclosure compensates somewhat for missing annotations. However, the lack of sibling differentiation leaves a gap in contextual completeness given the crowded tool namespace.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has zero parameters. Per scoring rules, zero parameters establishes a baseline of 4. The description does not need to compensate for parameter documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States specific action (List) and resource (benchmark assets) for a clear domain (Bulgarian pension comparisons). Mentions specific content types (inflation/market references) and fund types (UPF/PPF/VPF/DPF). However, it fails to explicitly differentiate from the similarly-named sibling `get_bulgarian_pension_benchmarks`.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus siblings like `get_bulgarian_pension_benchmarks` or `rank_benchmarks`. The description only describes data content, leaving the agent to infer usage context without comparing alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_fundsAInspect
List Bulgarian private pension funds and canonical fund IDs.
Returns fund_id in manager_slug:scheme_code format for UPF, PPF, and VPF/DPF.
Use this as discovery before calling NAV, metric, and ranking tools.
Data freshness: fund metadata follows latest FSC-tracked manager/scheme dataset.
| Name | Required | Description | Default |
|---|---|---|---|
| active_only | No | ||
| scheme_code | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, description carries the safety burden effectively. Mentions data freshness ('FSC-tracked manager/scheme dataset') and identifies fund types covered (UPF, PPF, VPF/DPF). Could clarify pagination or caching behavior, but covers essential read-only context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four tightly constructed sentences: purpose statement, return format specification, usage guideline, and data freshness note. Zero redundancy; every sentence earns its place with distinct information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Appropriate for a discovery tool with existing output schema. Mentions canonical ID format and data provenance (FSC). Given the complex sibling ecosystem (22+ tools), the description adequately establishes this tool's role without overstating.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% (no parameter descriptions in JSON schema). While description mentions scheme types (UPF, PPF, DPF) which map to scheme_code enum values, it neither explains the active_only filter nor explicitly links the scheme types to the scheme_code parameter. Insufficient documentation for the filter parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specifies exact action ('List'), resource ('Bulgarian private pension funds'), and return format ('fund_id' in 'manager_slug:scheme_code' format). Clearly distinguishes scope from sibling NAV/metric/ranking tools by positioning this as a discovery prerequisite.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states 'Use this as discovery before calling NAV, metric, and ranking tools,' providing clear workflow guidance and sibling differentiation. Also implies this should be called first in the tool chain.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_holdings_reportsAInspect
List available markdown holdings reports for Bulgarian pension funds.
Reports contain detailed portfolio holdings data extracted from official PDF filings and converted to structured markdown with metadata (allocation %, exposure, top holdings).
Use this tool to discover what reports are available before loading specific ones
with read_holdings_report. Filter by manager, fund type, or date range.
| Name | Required | Description | Default |
|---|---|---|---|
| date_to | No | ||
| date_from | No | ||
| fund_type | No | ||
| manager_slug | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, description carries full burden. Discloses data provenance ('extracted from official PDF filings'), output format ('structured markdown with metadata'), and content scope ('allocation %, exposure, top holdings'). Implies read-only safety via 'List available' but doesn't explicitly state no side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with purpose. Sentence 2 provides content context; Sentence 3 provides usage guidance and parameter hints. Zero redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Appropriate for a discovery tool with output schema. Covers purpose, content details, filtering capabilities, and sibling relationship. Compensates somewhat for 0% schema coverage by naming filter fields, though date format and valid values for Fund_type/manager_slug remain undocumented.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 0% description coverage. Description compensates by mapping filter concepts to parameters: 'Filter by manager, fund type, or date range' corresponds to manager_slug, fund_type, date_from/date_to. Does not specify date formats or valid enum values, leaving some semantic gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description opens with specific verb 'List' targeting clear resource 'markdown holdings reports for Bulgarian pension funds'. Distinguishes from sibling `read_holdings_report` by emphasizing 'available' reports for discovery vs. reading specific content.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use: 'discover what reports are available before loading specific ones with `read_holdings_report`'. Names the specific sibling alternative and establishes the workflow order (discover → load).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_managersAInspect
Retrieve Bulgarian pension manager metadata for UPF, PPF, and VPF/DPF schemes.
Use this to discover licensed managers and their supported scheme types before running rankings or metric calculations over FSC-tracked pension data. Data freshness: reflects latest ingested official FSC manager/scheme coverage.
| Name | Required | Description | Default |
|---|---|---|---|
| scheme_code | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It adds valuable data freshness context ('reflects latest ingested official FSC manager/scheme coverage'), but omits other behavioral details like pagination, rate limits, or authentication requirements that would help with invocation planning.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three well-structured sentences: action definition, usage guidance, and data provenance. Each earns its place. Slightly technical tone ('FSC-tracked') is acceptable for domain specificity, though 'Data freshness:' prefix could be smoother.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Strong domain context (Bulgarian pension, FSC, specific scheme types) compensates for lack of parameter documentation. Since an output schema exists, the description appropriately omits return value details while providing sufficient context for a specialized financial data tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, requiring the description to compensate. It mentions the scheme codes (UPF, PPF, VPF/DPF) which map to the enum values, but does not explicitly explain that scheme_code filters the output or clarify the behavior when null (all schemes) vs. specific values.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it retrieves Bulgarian pension manager metadata and specifies the scheme types (UPF, PPF, VPF/DPF). However, it does not explicitly distinguish from the sibling tool 'get_bulgarian_pension_fund_managers', which could cause selection uncertainty.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use: 'before running rankings or metric calculations over FSC-tracked pension data.' This provides clear workflow context, though it lacks explicit 'when not to use' guidance or named alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_metricsBInspect
List all supported financial metric identifiers for MCP analytics tools.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. 'List all supported' indicates scope (complete enumeration) and read-only behavior, but lacks details on caching, rate limits, or whether the metric list is static/dynamic. Minimal behavioral disclosure beyond the basic operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single 9-word sentence with action front-loaded. No redundancy or filler. Every word earns its place: verb (List), scope (all supported), resource (financial metric identifiers), context (for MCP analytics tools).
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter enumeration tool with an output schema present, the description adequately covers the tool's purpose. Return values need not be explained due to output schema existence. Could benefit from mentioning if results are cached or static.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Zero-parameter tool; baseline score applies per rubric. Schema coverage is 100% (empty object with additionalProperties: false), requiring no additional parameter documentation from description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Provides specific verb 'List' and clear resource 'financial metric identifiers'. Scope 'all supported' and context 'for MCP analytics tools' clarifies this is a general enumeration tool distinct from domain-specific siblings like get_bulgarian_pension_metrics_catalog, though it doesn't explicitly contrast with them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use versus alternatives (e.g., when to use get_bulgarian_pension_metrics_catalog instead). While the zero-parameter signature implies it's a discovery tool, the description offers no 'when to use' or 'see also' signals.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rankCInspect
Rank funds within UPF/PPF/VPF schemes by a selected metric and period.
Supports optional extra columns via include_metrics for agent-friendly table outputs.
Data freshness: rankings are computed from the latest ingested FSC-aligned NAV dataset.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| order | No | desc | |
| metric | Yes | ||
| offset | No | ||
| period | Yes | ||
| window | No | ||
| frequency | No | daily | |
| scheme_code | Yes | ||
| benchmark_slug | No | ||
| risk_free_rate | No | ||
| include_metrics | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, description carries the burden. It successfully adds data freshness context ('latest ingested FSC-aligned NAV dataset') and output format hints. However, it lacks disclosure on pagination, mutation safety, or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three well-structured sentences with no filler. Main purpose is front-loaded, include_metrics is specifically highlighted, and data freshness is appended as useful metadata. Appropriately concise for the information provided.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having an output schema (reducing description burden for returns), the tool has 11 complex parameters with validation enums that are entirely undocumented in the schema. The description fails to compensate for this coverage gap, leaving most parameters semantically unexplained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, requiring heavy description compensation. While it explicitly documents include_metrics via backticks and implies scheme_code values, 9 of 11 parameters (limit, offset, window, frequency, benchmark_slug, risk_free_rate, order, metric, period) remain completely undocumented in both schema and description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool ranks funds within specific pension schemes (UPF/PPF/VPF) by metric and period, using specific verb+resource. However, it slightly mismatches the schema enum (dpf vs VPF) and could better differentiate from sibling rank_bulgarian_pension_funds_by_metric.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides minimal guidance. While 'agent-friendly table outputs' hints at use cases for include_metrics, there is no explicit when-to-use guidance or alternatives mentioned compared to other ranking tools like rank_benchmarks or rank_bulgarian_pension_funds_by_metric.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rank_benchmarksCInspect
Rank benchmark assets by metric and period for market-context comparison.
Data freshness: rankings reflect latest ingested benchmark observations.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| order | No | desc | |
| metric | Yes | ||
| offset | No | ||
| period | Yes | ||
| window | No | ||
| frequency | No | daily | |
| benchmark_slug | No | ||
| risk_free_rate | No | ||
| include_metrics | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Only behavioral trait disclosed is data freshness ('latest ingested benchmark observations'). Fails to mention safety (read-only vs destructive), side effects, rate limits, or permissions despite having no annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no wasted words. Front-loaded with action and resource. However, given the tool complexity (10 parameters, 0% coverage), extreme brevity becomes a liability rather than virtue.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having an output schema (reducing description burden), the tool has 10 parameters with complex union types and zero schema coverage. Description insufficiently compensates for schema gaps and lacks cross-references to sibling tools that would help agent select correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, description only mentions the two required parameters ('metric' and 'period') by name without explaining valid values, formats, or semantics. Fails to address 8 other parameters including complex anyOf types (period, window, include_metrics) that desperately need documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States specific verb 'Rank' and resource 'benchmark assets' clearly. Mentions 'market-context comparison' as context. However, fails to distinguish from sibling tool 'rank' (which is generic) or differentiate from 'rank_bulgarian_pension_benchmarks_by_metric' explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides minimal implicit guidance via 'for market-context comparison' but lacks explicit when-to-use rules, prerequisites, or comparison to alternatives like the generic 'rank' tool or Bulgarian-specific variant.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rank_bulgarian_pension_benchmarks_by_metricCInspect
Alias for rank_benchmarks for semantically rich benchmark ranking discovery.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| order | No | desc | |
| metric | Yes | ||
| offset | No | ||
| period | Yes | ||
| window | No | ||
| frequency | No | daily | |
| scheme_code | No | upf | |
| benchmark_slug | No | ||
| risk_free_rate | No | ||
| include_metrics | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It reveals the alias relationship, which is useful, but provides no information about side effects, pagination behavior, what constitutes a 'ranking' calculation, or how the Bulgarian pension context filters the data compared to the generic tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The single-sentence structure is appropriately brief, but wastes limited space on vague phrases like 'semantically rich' and 'discovery' instead of front-loading practical information about parameters, behavior, or usage criteria. Every sentence exists, but not every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 11 parameters with zero schema descriptions and no annotations, the tool complexity demands substantial descriptive compensation. The description inadequately covers this complexity, providing only the alias relationship and vague buzzwords rather than explaining the Bulgarian pension benchmark domain specifics or parameter interactions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, leaving all 11 parameters undocumented. The description adds no parameter-specific guidance (e.g., explaining `scheme_code` enums upf/ppf/dpf, `window` formats, or `risk_free_rate` calculations). While 'benchmark ranking' provides vague domain context, it does not compensate for the complete lack of schema documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the tool as an alias for `rank_benchmarks` and mentions 'benchmark ranking', which clarifies the domain. However, 'semantically rich...discovery' is vague marketing language, and it fails to explicitly differentiate from sibling `rank_bulgarian_pension_funds_by_metric` (benchmarks vs funds) or explain what makes this 'semantically rich' compared to the base tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
While it mentions the alias relationship implying equivalent behavior to `rank_benchmarks`, it provides no explicit guidance on when to select this specialized variant over the general `rank_benchmarks` or over `rank_bulgarian_pension_funds_by_metric`, nor does it mention prerequisites like required metric/period values.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rank_bulgarian_pension_funds_by_metricCInspect
Alias for rank to semantically target Bulgarian UPF/PPF/VPF leaderboard queries.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| order | No | desc | |
| metric | Yes | ||
| offset | No | ||
| period | Yes | ||
| window | No | ||
| frequency | No | daily | |
| scheme_code | Yes | ||
| benchmark_slug | No | ||
| risk_free_rate | No | ||
| include_metrics | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. While 'alias for `rank`' hints at behavior, the description fails to disclose safety (read-only vs. destructive), idempotency, rate limits, or side effects. 'Leaderboard' implies read-only access but this should be explicit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The single sentence is front-loaded and efficient with no wasted words. However, given the complexity (11 parameters, 0% schema coverage), this brevity results in under-documentation rather than optimal conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 11 parameters with zero schema descriptions and no annotations, the description is inadequate. It leverages the output schema presence (not needing return value docs) but omits critical parameter semantics and behavioral transparency required for safe invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage and 11 parameters, the description fails to sufficiently compensate. It mentions 'UPF/PPF/VPF' giving context to scheme_code values, and 'leaderboard' hints at metric/period usage, but provides no syntax guidance for period formats, window calculations, or valid metric strings.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies this as an alias for `rank` and specifies the domain (Bulgarian UPF/PPF/VPF funds) and use case (leaderboard queries), distinguishing it from the generic `rank` sibling. However, 'to semantically target... queries' is slightly convoluted phrasing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It implies usage by stating it's for Bulgarian pension fund leaderboards and notes the alias relationship to `rank`, suggesting when to use this specific variant. However, it lacks explicit when-not guidance or prerequisites (e.g., required knowledge of metric codes).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
read_holdings_reportAInspect
Read a specific markdown holdings report for a Bulgarian pension fund.
Returns the full markdown content (or just metadata if summary_only=True) for a specific manager, fund type, and date. The report includes detailed portfolio holdings with instrument types, issuers, values, and portfolio shares.
Parameters: manager_slug: Manager identifier (e.g., 'dskrodina', 'allianz', 'doverie') fund_type: Fund type code (e.g., 'upf', 'ppf', 'dpf') date: Report date in YYYY-MM-DD format summary_only: If True, return only parsed metadata (allocation, exposure, top holdings)
| Name | Required | Description | Default |
|---|---|---|---|
| date | Yes | ||
| fund_type | Yes | ||
| manager_slug | Yes | ||
| summary_only | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It successfully discloses the conditional return behavior (full markdown vs metadata based on summary_only) and report content structure. However, it omits safety characteristics (read-only status), error handling (what happens if report doesn't exist), and rate limit information.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Well-structured with purpose front-loaded in first sentence. The 'Parameters:' section is necessary given the empty schema, though it adds length. No redundant sentences—each line conveys distinct information about scope, return values, content structure, or parameter semantics.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 4 parameters with 0% schema coverage, the description adequately documents all inputs and explains conditional output behavior. Since output schema exists, the description appropriately avoids redundant return value structure documentation while still explaining content semantics (what 'holdings' entails).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description fully compensates by providing rich semantic details for all 4 parameters: manager_slug includes examples ('dskrodina', 'allianz'), fund_type includes domain codes ('upf', 'ppf', 'dpf'), date specifies format ('YYYY-MM-DD'), and summary_only explains behavioral impact.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Excellent specificity: verb ('Read') + resource ('markdown holdings report') + scope ('Bulgarian pension fund'). The phrase 'a specific report' clearly distinguishes this from siblings like list_holdings_reports (which lists available reports) and get_holdings_reports_index.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides implied usage through return value description (use when you need detailed holdings content), and explains the summary_only parameter for controlling output verbosity. However, lacks explicit guidance on when to use alternatives like list_holdings_reports vs this detailed read operation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_pension_lawAInspect
Search across Bulgarian pension legal framework documents.
Args: query: Search term (e.g., "чл. 175", "equity limits", "инвестиционни ограничения"). document: Optional filter to search only one document. max_results: Maximum number of matching sections to return (default 10).
Returns: List of matching sections with heading, document key, and body text.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | ||
| document | No | ||
| max_results | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full disclosure burden. It succeeds by describing the return structure ('List of matching sections with heading, document key, and body text') and noting default values. It could improve by clarifying search behavior (exact vs. fuzzy matching) or error states.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The docstring-style format with Args and Returns sections is well-structured and front-loaded. Every sentence earns its place, efficiently covering the tool's purpose, three parameters, and return format without redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (three simple parameters) and absence of annotations, the description provides adequate coverage by explaining both inputs and outputs. It could be strengthened by enumerating available document types for the document parameter or describing error handling scenarios.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage, but the description fully compensates by documenting all three parameters: query includes multilingual examples and legal citation formats, document explains its optional filter nature, and max_results describes its purpose and default value of 10.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with 'Search across Bulgarian pension legal framework documents,' providing a specific verb (search) and resource (Bulgarian pension legal documents). It clearly distinguishes this tool from siblings like get_pension_legal_framework by emphasizing the cross-document search capability versus simple retrieval.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides implied usage guidance through concrete query examples ('чл. 175', 'equity limits'), demonstrating expected input formats. However, it lacks explicit guidance on when to use this search tool versus the get_pension_legal_framework alternative or when to apply the document filter.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
simulate_bulgarian_pension_saver_outcomeCInspect
Alias for simulate_saver_outcome with explicit Bulgarian pension savings semantics.
| Name | Required | Description | Default |
|---|---|---|---|
| end_date | No | ||
| date_from | No | ||
| scheme_code | No | upf | |
| manager_slug | No | ||
| monthly_amount | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. While it mentions 'Bulgarian pension savings semantics,' it fails to disclose what those semantics entail (e.g., specific contribution rules, tax treatments for UPF/PPF/DPF schemes), what the simulation calculates (projected returns, future value), or any side effects. The reference to being an 'alias' suggests identical behavior to the sibling, but this is not confirmed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The single-sentence structure is efficient with no wasted words, but it is overly concise given the tool's complexity (5 parameters, 0% schema coverage, domain-specific calculations). The information density is too low for effective agent usage, requiring substantial inference from the sibling tool name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While an output schema exists (reducing the need to describe return values), the complete lack of parameter documentation in the schema and the minimal description leave critical gaps. For a financial simulation tool with multiple domain-specific parameters (pension schemes, dates, amounts), the description fails to provide adequate domain context or usage constraints.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, requiring the description to compensate. It adds minimal context—only 'Bulgarian' hints at the scheme_code enum (upf/ppf/dpf) and manager_slug, but provides no information about the date parameters (date_from, end_date), monthly_amount, or expected date formats. The description is insufficient for the undocumented parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the tool as a simulation for Bulgarian pension saver outcomes and explicitly distinguishes it from the sibling `simulate_saver_outcome` by referencing 'Bulgarian pension savings semantics.' However, the term 'Alias' focuses on implementation relationship rather than functional purpose, and 'explicit semantics' remains vague about what specific Bulgarian rules are applied.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It references the sibling tool `simulate_saver_outcome`, implying this is the Bulgarian-specific variant, but lacks explicit guidance on when to use this versus the generic alternative. No information is provided about prerequisites (e.g., required pension schemes) or when this tool is inappropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
simulate_saver_outcomeCInspect
Simulate saver outcomes with periodic contributions into Bulgarian pension funds.
Estimates invested amount, terminal value, and IRR-like performance diagnostics. Data freshness: simulation uses the latest available NAV history in the dataset.
| Name | Required | Description | Default |
|---|---|---|---|
| fund_id | No | ||
| end_date | No | ||
| start_date | No | 2005-01-01 | |
| scheme_code | Yes | ||
| manager_slug | No | ||
| monthly_contribution | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries the full disclosure burden. It successfully indicates the calculation outputs (invested amount, terminal value, IRR-like diagnostics) and data source (latest NAV history), but omits computational cost, determinism, error conditions, or cache behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The three-sentence structure is efficient and front-loaded. Each sentence delivers distinct information (purpose, outputs, data freshness) without redundancy. Minor improvement possible by integrating parameter guidance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 6 parameters with zero schema descriptions and no annotations, the description is insufficiently complete. It should explain the required parameters (monthly_contribution, scheme_code) and the relationships between optional filters (fund_id vs manager_slug). The output schema exists but input parameter documentation is critically lacking.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage across 6 parameters, the description fails to adequately compensate. While it implies 'monthly_contribution' through 'periodic contributions' and hints at the domain for 'scheme_code', it provides no guidance on the enum values (upf, ppf, dpf), the distinction between fund_id and manager_slug, or date formats.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb (simulate), resource (saver outcomes), and domain (Bulgarian pension funds with periodic contributions). However, it fails to differentiate from the sibling tool 'simulate_bulgarian_pension_saver_outcome' which has an almost identical purpose, creating potential selection confusion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus the sibling 'simulate_bulgarian_pension_saver_outcome' or other related tools like 'get_bulgarian_pension_fund_nav_series'. It mentions data freshness but lacks explicit conditions or prerequisites for invocation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!