Skip to main content
Glama
ESET-MCP

ESET-MCP

by maciekaz

incident_detection_groups__list_detection_groups

Read-onlyIdempotent

Lists detection groups matching criteria such as time range, device, or cloud tenant, with pagination and field projections to reduce token usage.

Instructions

List detection groups - (GET /v2/detection-groups) - Return a list of all the [detection group]s matching criteria.

Input Schema

NameRequiredDescriptionDefault
fieldsNoOptional server-side projection: return only these keys for each list-item in the response. Reduces token usage on large list endpoints. Example: ['uuid','displayName']. Top-level fields (e.g. nextPageToken) are always preserved. Not forwarded to ESET - applied locally after fetch.
endTimeNoInclude only incidents whose detections occurred before `end_time` (excluding). `detection.occur_time` < `end_time` Use timestamp in UTC or offset format. Examples: - 2024-10-30T12:00Z - 2024-10-30T10:00+02:00 > **Info:** > [Google Protobuf: Timestamp](https://protobuf.dev/reference/php/api-docs/Google/Protobuf/Timestamp.html)
pageSizeNoLimit for pagination purposes. If unspecified or 0, the default value is 50. The maximum value is 1000; values above 1000 will be coerced to 1000. > **Info:** > For more information, refer to [Paginating Requests in APIs](https://medium.com/@ignaciochiazzo/paginating-requests-in-apis-d4883d4c1c4c) > > or [Design Patterns: Pagination](https://google.aip.dev/158)
pageTokenNoPage token of the current page. If not given or "", the first page is returned. > **Info:** > For more information, refer to [Paginating Requests in APIs](https://medium.com/@ignaciochiazzo/paginating-requests-in-apis-d4883d4c1c4c) > > or [Design Patterns: Pagination](https://google.aip.dev/158)
startTimeNoInclude only incidents whose detections occurred after `start_time` (including). `detection.occur_time` >= `start_time` Use timestamp in UTC or offset format: Examples: - 2024-10-30T12:00Z - 2024-10-30T10:00+02:00 > **Info:** > [Google Protobuf: Timestamp](https://protobuf.dev/reference/php/api-docs/Google/Protobuf/Timestamp.html)
deviceUuidNoInclude only [detections] occurred on the referenced [device]. If empty or null, the [detections] from any device will be included. For cloud office detections, it should remain empty or null. type: Device
cloudOfficeTenantUuidNoReference to [cloud office tenant] whose [detection]s should appear in the response. If empty or null, the [detection] of any cloud office tenant will be returned. For device [detection]s, it should be null or empty. type: cloud_office_protection.v1.CloudOfficeTenant

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv2.0.0

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is fully covered and the bar is lower. Beyond that the description adds essentially nothing — no pagination behavior, no statement about result size or ordering — so it only repeats the endpoint path.

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

Conciseness4/5

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

Very short and front-loaded: the resource and endpoint come first. It is slightly redundant, restating "detection group" list semantics in the second clause, but no sentence is wasted.

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

Completeness3/5

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

For a 7-filter list endpoint with no output schema, the description is adequate but thin: it does not say what a returned item looks like, whether pagination tokens or totals are included, or how the mutually exclusive-looking deviceUuid/cloudOfficeTenantUuid filters interact. An agent must fall back entirely on the schema to call it correctly.

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

Parameters3/5

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

Schema description coverage is 100%, so every one of the 7 parameters (fields, startTime/endTime, pageSize, pageToken, deviceUuid, cloudOfficeTenantUuid) is already documented in detail in the schema. The description contributes only the phrase "matching criteria" and adds no semantics beyond it, which matches the baseline of 3.

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

Purpose4/5

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

States a specific verb and resource ("List detection groups") plus the underlying endpoint GET /v2/detection-groups, which is clear and distinguishable from incident_detection_groups__get_detection_group by the list-vs-single framing. However it never names that sibling or otherwise differentiates the scope explicitly.

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

Usage Guidelines2/5

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

The description gives no when-to-use guidance: no statement that it should be used to enumerate/filter groups versus fetching one by ID, no note that all filters are optional and combine additively, and no guidance on when to prefer latest_detections or eset_search for detection-level lookups. "Matching criteria" only hints that filters exist.

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

Deploy Server

Other Tools