whatif_provider
Simulate provider failure: which articles/checks are affected, score impact, risk level.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| entity_id | No | Entity ID | |
| provider_name | No | Provider name (e.g. AWS, Finastra) |
Simulate provider failure: which articles/checks are affected, score impact, risk level.
| Name | Required | Description | Default |
|---|---|---|---|
| entity_id | No | Entity ID | |
| provider_name | No | Provider name (e.g. AWS, Finastra) |
Changes observed during successful MCP inspections. Dates show when Glama detected each change.
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 says 'Simulate', which implies a non-destructive read-only operation, and it lists the outputs (affected items, impact score, risk level). However, it does not explicitly confirm that no state changes occur, nor does it mention whether any side effects (e.g., report generation) or prerequisites (e.g., provider must be configured) apply.
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 a single concise sentence that front-loads the primary action ('Simulate provider failure') and then lists the outputs. Every word contributes useful information; there is no verbose repetition or vague 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?
The description provides the essential purpose and outputs (affected items, impact score, risk level), which is a reasonable starting point. However, with no output schema and no annotations, it lacks details on how to interpret the returned values, how to handle optional params, and what the tool does if no entity_id or provider_name is given. For a tool with only two optional params and a specific simulation scenario, this is adequate but not fully complete.
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 100% coverage with descriptions for both parameters ('Entity ID' and 'Provider name (e.g. AWS, Finastra)'), so the baseline is 3. The description adds some context by framing provider_name as the provider to fail and entity_id as the scope, but it does not clarify whether one parameter is required, how they interact, or what happens if omitted. Since the schema descriptions are minimal and tautological for entity_id, the tool description adds limited additional meaning.
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 a specific action ('Simulate provider failure') and resource ('provider'), and enumerates the outputs ('which articles/checks are affected, score impact, risk level'). This is a specific verb+resource+output structure that distinguishes it from sibling tools like whatif_stale (which targets stale what-if scenarios) and assess_all (general assessment).
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 implies when to use the tool (when you want to evaluate the impact of a provider failure on articles/checks), but it does not explicitly state when to prefer this over alternatives like whatif_stale or provider_country_risk. No exclusions or alternative guidance is provided, leaving some ambiguity in tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.
Several tools overlap in purpose, particularly contract analysis (check_contract, contract_analyze, llm_clause_check) which could confuse agents. Assessment-related tools (readiness_check, assess_all, article_status) also have partially overlapping functionality. However, most tools have distinct resources and actions with detailed descriptions.
Tool names are consistently snake_case and mostly follow a verb_noun pattern (e.g., create_entity, generate_report, register_provider). Minor deviations like contract_analyze and llm_clause_check invert the verb-noun order, but the overall pattern is predictable.
50 tools is a very large surface for a single server, exceeding the threshold for 'too many' tools. While the DORA domain is broad, this breadth makes it challenging for agents to navigate and select the right tool efficiently.
The tool set covers the full DORA compliance lifecycle: entity onboarding, contract analysis, provider management, assessments, evidence, reporting, and incident workflows. Simulation and cross-regulation tools add depth. Minor missing CRUD operations (e.g., update/delete entity) but agents can work around.