Skip to main content
Glama

Velvoite — EU Financial Regulatory Compliance

get_enforcement_decisions

Read-only
Get enforcement decisions with structured penalty data.

Returns enforcement actions (fines, warnings, license withdrawals) imposed
by regulators. Each action includes penalty amount, sanctioned entity,
violation categories, and appeal status.

Use this to answer questions like:
- "What fines has FIN-FSA given to credit institutions?"
- "What are the largest penalties for AML violations?"
- "Has anyone been fined for ICT risk management failures?"
- "What's the total penalty exposure for my entity type?"

Combine with get_company_profile to find enforcement actions relevant
to the caller's entity type and regulations.

Args:
    regulation: Filter by regulation code (e.g. 'aml', 'dora', 'mifid2', 'gdpr', 'crd_crr').
    entity_type: Filter by sanctioned entity type (e.g. 'credit_institution', 'investment_firm', 'crypto_service').
    authority: Filter by sanction authority (e.g. 'FIN-FSA', 'ECB', 'Data Protection Ombudsman').
    penalty_min: Minimum penalty amount in EUR (e.g. 1000000 for fines >= EUR 1M).
    violation_category: Filter by violation type (e.g. 'aml_cdd', 'ict_risk', 'sca', 'governance', 'conduct').
    page: Page number (default 1).
    per_page: Results per page (default 20, max 100).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pageNo
per_pageNo
authorityNo
regulationNo
entity_typeNo
penalty_minNo
violation_categoryNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, so the read-only nature is covered. The description adds context about the content (penalty amount, sanctioned entity, violation categories, appeal status) and filterable dimensions, which goes beyond the schema. It does not disclose pagination behavior or sorting, but the output schema likely covers return details.

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

Conciseness5/5

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

The description is structured with a clear opening, return details, usage examples, and a well-formatted argument list. Each sentence earns its place and there is no redundant fluff. The front-loaded purpose statement makes it immediately clear what the tool does.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the 7 parameters, an output schema, and annotations, the description is exceptionally complete. It covers purpose, return fields, usage scenarios, related tool, and all parameter semantics. No critical gaps remain for an agent to select and invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Every parameter is described with meaning and examples: regulation codes like 'aml', entity types, authority, penalty_min with EUR example, violation_category examples, and page/per_page defaults. Since the schema has no parameter descriptions (0% coverage), the description fully compensates by explaining each parameter's purpose and allowable values.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description starts with 'Get enforcement decisions with structured penalty data' and specifies what is returned: fines, warnings, license withdrawals with penalty amount, entity, violation categories, and appeal status. This clearly identifies the tool's purpose and differentiates it from siblings like get_enforcement_intelligence or get_company_profile.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit example questions and states 'Combine with get_company_profile to find enforcement actions relevant to the caller's entity type and regulations.' This gives clear context for when to use the tool, though it does not explicitly mention exclusions or alternative tools in the sibling set for cases where enforcement intelligence is more appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4.3/5.0
Disambiguation4/5

Each tool targets a distinct resource (obligations, documents, enforcement, Finnish statutes, CJEU cases) with clear parameter differences. Minor overlap exists between get_obligations and get_canonical_obligations, but descriptions explicitly differentiate them.

Naming Consistency5/5

All tools consistently use verb_noun patterns: get_ for retrievals, search_ for queries, list_documents, and audit_taxonomy. No mixed casing or inconsistent verb styles are present.

Tool Count2/5

At 26 tools, the surface exceeds the 25-tool threshold for 'too many'. While the domain is broad, the large number of specialized search/get tools could be consolidated without losing functionality.

Completeness4/5

The API covers the full regulatory compliance workflow: company profile, obligations, deadlines, documents, enforcement, and multiple legal sources (EU, Finnish, CJEU). Some Finnish/KHO tools return URLs requiring web fetch rather than direct data, which is a minor but by-design gap.

Resources