ESET PROTECT MCP Server
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@ESET PROTECT MCP Servershow me devices with known vulnerabilities"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
ESET PROTECT MCP Server
MCP server for ESET PROTECT's ESET Connect API gateway - endpoint fleet visibility (devices and groups), detection/EDR investigation, vulnerability data, patch status, and user management - for AI assistants and the WYRE Conduit gateway.
Authentication
Create a dedicated API user in ESET Business Account: User Management > create a user with read-only permission > enable the Integrations toggle. This gives you an email/password pair for that user.
ESET Connect's token endpoint (POST /oauth/token) is documented in its own OpenAPI spec as a password grant - username/password fields, not client_id/client_secret with grant_type=client_credentials. This server accepts clientId/clientSecret (matching the credential shape used across WYRE's other MCP connectors) and sends them as username/password in that grant. It handles the resulting bearer token's caching and refresh (via the returned refresh_token, falling back to a full re-login if the refresh token itself is rejected) internally - callers only ever supply the long-lived email/password pair.
Related MCP server: UniFi MCP Server
Configuration
Env var | Description |
| Email of the dedicated ESET Connect API user. |
| Password of that API user. |
|
|
|
|
|
|
| When set, the HTTP transport requires a valid |
|
|
Each ESET Connect API domain (device, incident, vulnerability, patch, and user management) is hosted on its own per-region subdomain, e.g. https://us.device-management.eset.systems; the auth host follows the same regional pattern, e.g. https://us.business-account.iam.eset.systems. ESETPROTECT_REGION selects the prefix for all of them.
Tools
Device Management
esetprotect_list_device_groups- list device groups.esetprotect_list_group_devices- list the devices in a group.esetprotect_list_devices- list managed devices, filterable by display name, functionality status, or mute state.esetprotect_get_device- get a device by UUID.esetprotect_batch_get_devices- get multiple devices by UUID in one call.
Incident Management (detections, detection groups, EDR)
esetprotect_list_detections/esetprotect_get_detection- v1 detections (legacy surface).esetprotect_list_detections_v2/esetprotect_get_detection_v2/esetprotect_batch_get_detections- v2 detections (endpoint, cloud office, and EDR).esetprotect_list_detection_groups/esetprotect_get_detection_group- detections clustered into groups.esetprotect_list_edr_rules/esetprotect_get_edr_rule- EDR detection rules.esetprotect_list_edr_rule_exclusions/esetprotect_get_edr_rule_exclusion- EDR rule exclusions.
Vulnerability Management
esetprotect_list_device_os_vulnerabilities- OS vulnerabilities found on devices.esetprotect_list_device_vulnerabilities- vulnerabilities found on devices (application/OS/package scope).esetprotect_list_recent_scans- recent vulnerability scan details.esetprotect_list_vulnerable_devices- devices with known vulnerabilities.
Patch Management
esetprotect_list_recent_application_patching_details- most recent application-patching processes fleet-wide.esetprotect_list_device_patches- patches for devices, filterable by patch type.esetprotect_list_patching_process_details- detailed patching-process history within a time window.
User Management
esetprotect_list_users- list users, filterable by email, display name, protection status, and more.esetprotect_get_user- get a user by UUID.esetprotect_batch_get_users- get multiple users by UUID in one call (atomic - all or none).
Scope
This is a v1, read-only fleet/security-visibility surface. Explicitly deferred: device move/rename and batch import, detection and detection-group resolve, EDR rule and rule-exclusion create/update/delete, and any asset-management group create/delete/move/rename endpoints. These are mutation/provisioning actions out of scope for a read-only monitoring connector and can be added as a follow-up.
The incident-management API also exposes a separate /v2/incidents case-management surface (list/get/close/reopen, comments) alongside detections and detection-groups; it is not covered by this v1 surface either, for the same reason.
Development
npm install
npm run build
npm test
npm run lint # tsc --noEmitDocker
docker build -t eset-protect-mcp .
docker run -p 8080:8080 \
-e ESETPROTECT_CLIENT_ID=... \
-e ESETPROTECT_CLIENT_SECRET=... \
eset-protect-mcpAvailable Tools
26 toolsesetprotect_batch_get_detectionsA
Get multiple v2 detections by UUID in one call (max recommended 100, hard limit 1000).
| Name | Required | Description | Default |
|---|---|---|---|
| detectionUuids | Yes |
TDQS
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 discloses the recommended and hard limits, which is useful. However, it does not mention error handling (e.g., whether the call fails entirely if one UUID is invalid, or returns partial results), response format, or any other side effects. For a batch operation, this is a notable gap, but the limit information adds some transparency.
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 is front-loaded with the core purpose and immediately followed by the limit guidance. Every word earns its place, and there is no filler or redundancy. It is perfectly structured for quick comprehension.
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 tool with one parameter and no output schema, the description covers the essential purpose and limits. However, it omits behavioral details such as whether partial results are returned on error, the shape of the response, or any prerequisites. Given the lack of annotations and output schema, a bit more context about error handling or response would improve completeness, but the description is adequate for a straightforward batch get.
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%, so the description must compensate. It adds context by specifying 'by UUID' and 'v2 detections,' which clarifies that the detectionUuids array should contain detection UUIDs for v2 detections. However, it does not specify UUID format or whether any validation applies. The parameter name itself is fairly self-explanatory, but the description provides minimal additional semantic value beyond the schema.
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 action: 'Get multiple v2 detections by UUID in one call.' It specifies the resource (v2 detections) and the method (batch by UUID), which distinguishes it from sibling tools like esetprotect_get_detection_v2 (single) and esetprotect_list_detections_v2 (list). The purpose is unambiguous and specific.
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 includes practical usage limits: 'max recommended 100, hard limit 1000.' This gives clear guidance on how many UUIDs to pass. While it doesn't explicitly contrast with alternatives, the 'in one call' phrasing implies it is for batch retrieval as opposed to single calls, and the limit itself is a usage guideline. It lacks explicit when-not-to-use guidance but is adequate for a batch tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
esetprotect_batch_get_devicesA
Get multiple managed devices by UUID in one call (max recommended 100, hard limit 1000).
| Name | Required | Description | Default |
|---|---|---|---|
| devicesUuids | Yes | Device UUIDs to fetch. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses a practical behavioral constraint: recommended max 100 and hard limit 1000. This is useful operational context beyond the schema. However, with no annotations provided, the description carries the full burden for behavioral disclosure; it does not mention error behavior, partial failures, rate limits, or whether the response preserves order.
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 sentence that front-loads the core action and resource, then adds the most important operational constraint (batch limits). Every word earns its place; no filler or repetition.
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 simple one-parameter batch fetch tool, the description is mostly complete: it states the action, the parameter, and the batch limits. However, with no output schema and no annotations, it does not describe the return format, error handling, or partial-failure behavior, which an agent might need to handle batch results 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?
Schema description coverage is 100%: the only parameter, devicesUuids, is described as 'Device UUIDs to fetch.' The description adds the batch-size limits but does not add further semantic detail about the parameter format or behavior. Baseline 3 is appropriate because the schema already documents the parameter adequately.
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 action ('Get multiple managed devices by UUID in one call'), the resource ('managed devices'), and the key differentiator ('in one call' / batch). It distinguishes itself from the single-device sibling esetprotect_get_device and the list siblings by specifying UUID-based batch 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 implies when to use this tool: when fetching multiple devices by UUID in a single call. It does not explicitly state when not to use it or name alternatives like esetprotect_get_device for single-device lookups, but the batch context and UUID parameter make the usage scenario clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
esetprotect_batch_get_usersA
Get multiple users by UUID in one call. Atomic: every requested user is returned or none.
| Name | Required | Description | Default |
|---|---|---|---|
| usersUuids | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden of behavioral disclosure. It goes beyond the obvious 'get' semantics by disclosing atomicity: every requested user is returned or none. It does not cover error details or rate limits, but the key all-or-nothing behavior is explicitly stated.
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 short sentences with no filler. The main operation is front-loaded, and the atomicity clarification earns its place by conveying an important behavioral guarantee.
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 single-parameter batch getter with no output schema, the description covers the essential operational context: what to pass, the batch behavior, and the all-or-nothing contract. A bit more detail on the response shape or differentiating from single get_user would improve completeness, but it is sufficient for correct 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?
The only parameter, usersUuids, has no schema-level description, but the prose clarifies that the array contains user UUIDs and that multiple are expected. This adds some meaning beyond the bare type declaration, though it does not mention limits, uniqueness, or invalid-UUID behavior.
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 states a specific action ('Get multiple users'), a clear resource ('users'), and a distinct mode ('by UUID in one call'). This clearly differentiates it from single-user retrieval like esetprotect_get_user and list operations.
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 clearly conveys the intended context: use when you need several users by UUID in a single request. However, it does not explicitly name alternatives or state when not to use this tool, so it stops short of full routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
esetprotect_get_detectionA
Get a single detection by UUID (v1 - legacy surface).
| Name | Required | Description | Default |
|---|---|---|---|
| detectionUuid | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the operation is a read ('Get') and flags the endpoint as legacy, but it does not explain what happens with an invalid UUID, what response shape to expect, or any deprecation specifics. This is a minimal behavioral disclosure.
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 front-loaded sentence that states the operation, the resource, the lookup key, and the legacy nature of the endpoint. There is no filler or redundant content, and every element contributes useful context.
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 tool is simple with a single required parameter and no nested objects, so the description is close to adequate. However, the lack of any alternative routing guidance and the absence of behavioral details such as response format or not-found behavior leave meaningful gaps, especially since no output schema or annotations are provided.
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%, so the description must compensate. It does clarify that the parameter is the UUID of the detection and that this is the v1/legacy surface. However, it does not provide UUID format guidance, examples, or mention how to obtain the UUID. It adds some meaning but only partially compensates for the missing schema descriptions.
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 uses a specific verb and resource: 'Get a single detection by UUID'. It also differentiates from siblings by noting this is the 'v1 - legacy surface', which distinguishes it from get_detection_v2 and list_detections. This is sufficiently clear and scoped.
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 usage when a single detection needs to be fetched by UUID, but it does not explicitly state when to prefer this tool over get_detection_v2 or batch_get_detections. The 'legacy surface' hint suggests avoiding it in favor of v2 for new work, but that guidance is not made explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
esetprotect_get_detection_groupB
Get a single detection group by UUID.
| Name | Required | Description | Default |
|---|---|---|---|
| detectionGroupUuid | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only says 'Get a single detection group by UUID' – a read operation is implied, but there is no statement about what happens if the UUID is not found, whether the response is a full object or a summary, or any error behavior. For a simple getter this is a moderate gap, but with zero annotations the description should disclose at least the basic behavior beyond the operation name.
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 short sentence with no wasted words. It is front-loaded with the verb and resource. It could arguably include more context, but for what it is, it is concise and to the point.
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 no annotations, no output schema, and 0% schema coverage, the description is thin. An agent knows it fetches one detection group by UUID, but lacks information about return shape, error handling, or how this fits with sibling tools like list_detection_groups or get_detection. For a simple getter this may be acceptable, but the complete absence of behavioral context makes it minimally viable at best.
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%, so the description must compensate. The description mentions 'by UUID', which maps to the detectionGroupUuid parameter, but it doesn't add format details (e.g., UUID format, required vs optional) beyond what the schema already shows. Since there is only one parameter and the description names it implicitly, it adds minimal value but doesn't fully compensate for the 0% 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 states a specific verb ('Get') and resource ('a single detection group') with a clear identifier ('by UUID'). It distinguishes from the sibling list_detection_groups by implying a single-item fetch, though it doesn't explicitly name the sibling. Clear enough for an agent to understand the core operation.
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 usage: use this when you need one detection group by UUID, versus list_detection_groups for multiple. However, it provides no explicit when-to-use guidance, no mention of when to prefer list_detection_groups, and no context about prerequisites or typical workflow. The sibling names provide some implicit context, but the description itself offers no direct guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
esetprotect_get_detection_v2C
Get a single detection by UUID (v2).
| Name | Required | Description | Default |
|---|---|---|---|
| detectionUuid | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only restates the core action and does not mention read-only behavior, response format, error semantics, or version-specific behavior. The agent cannot learn what happens on a missing UUID or what the returned detection looks like.
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, front-loaded sentence with no extraneous words. It immediately states the action, resource, and identifier, making it easy for an agent to parse quickly.
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 simple single-parameter read tool, the description is minimally viable: it names the resource and identifier. However, with no annotations and no output schema, it leaves out return value expectations, error behavior, and how this tool relates to sibling detection tools, so completeness is only adequate.
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%, so the description must compensate. It only repeats that the parameter is a UUID, which is already evident from the parameter name 'detectionUuid'. It adds no format guidance, source for obtaining the UUID, or constraints beyond the schema's basic string type.
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 uses a specific verb and resource: 'Get a single detection by UUID (v2).' The word 'single' clearly separates it from list and batch siblings. However, it does not explain the distinction from the similar 'esetprotect_get_detection' sibling beyond the version suffix, so differentiation is not fully explicit.
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 alternatives such as list_detections_v2, batch_get_detections, or get_detection (v1). The phrase 'single detection by UUID' implies a use case, but it does not state exclusions or recommend alternative tools for other scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
esetprotect_get_deviceA
Get a single managed device by UUID.
| Name | Required | Description | Default |
|---|---|---|---|
| deviceUuid | Yes |
TDQS
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. 'Get' implies a read operation, but the description doesn't mention error handling (e.g., 404 if not found), authentication requirements, or what the response contains. Given no output schema, this is a significant gap for an agent to know what to expect.
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, efficient sentence that is front-loaded with the core action and resource. No wasted words, and the key identifier ('by UUID') is included.
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 simplicity of the tool (one parameter, no nested objects), the description is adequate for basic invocation. However, the lack of any behavioral details (errors, response shape) and no output schema means an agent has limited context. It is a minimal but functional definition for a get-by-ID operation.
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 provides only 'deviceUuid' as a required string with no description (0% coverage). The description compensates by stating the device is fetched 'by UUID', which clarifies that the parameter is the device's UUID. However, it doesn't specify format or examples, and with zero schema coverage the description could have added more detail, but the minimal clarification earns a baseline score.
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 'Get', the resource 'single managed device', and the selection criterion 'by UUID'. This distinguishes it from sibling tools like esetprotect_list_devices (plural) and esetprotect_batch_get_devices (batch), so an agent can immediately tell its purpose.
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 usage: use this when you have a specific device UUID to fetch a single device, as opposed to listing all devices or batch operations. It doesn't explicitly state exclusions or alternatives, but the 'single by UUID' phrasing makes the intended scenario clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
esetprotect_get_edr_ruleA
Get a single EDR rule by UUID.
| Name | Required | Description | Default |
|---|---|---|---|
| ruleUuid | Yes |
TDQS
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 says 'Get' (implying read-only) but does not disclose return behavior, not-found handling, authentication requirements, or whether any side effects could occur.
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?
One tightly scoped sentence with no filler. The verb, resource, and key parameter are all front-loaded.
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 simple get-by-UUID tool this is minimally viable: an agent knows what to pass and what general operation occurs. It is incomplete in that it lacks response shape and error behavior, and there is no output schema or annotation to fill the gap.
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 coverage, the description at least clarifies that ruleUuid is the unique identifier used to fetch the rule, adding a functional role beyond the raw string property. It stops short of specifying format or constraints, but the single required parameter is self-evidently simple.
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 uses a specific verb ('Get') with a precise resource ('single EDR rule by UUID'). It distinguishes itself from sibling list tools (list_edr_rules) and from get_edr_rule_exclusion by explicitly saying 'EDR rule' rather than 'exclusion'.
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 'single ... by UUID' implies this is for fetching one known rule rather than listing rules. However, it does not explicitly state when to prefer this over list_edr_rules or get_edr_rule_exclusion, nor mention any exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
esetprotect_get_edr_rule_exclusionA
Get a single EDR rule exclusion by UUID.
| Name | Required | Description | Default |
|---|---|---|---|
| exclusionUuid | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden, and 'Get' only conveys read-only intent. It does not disclose behavior such as whether a missing UUID yields 404 vs null, response shape, or any error conditions. Minimal but not misleading.
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?
One sentence with no filler; the verb, resource, and lookup mechanism are all front-loaded. 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?
For a one-parameter, no-output-schema read operation, the description gives the essential calling context. However, with no annotations and no output schema, it leaves return format and failure behavior unspecified, so an agent must assume the typical 'get by UUID' contract.
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%, but the single parameter is self-describing, and the description reinforces that exclusionUuid is the lookup key. It adds only slight meaning beyond the schema's type-only definition and provides no format or value guidance.
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 a specific verb ('Get'), a precise resource ('EDR rule exclusion'), and an unambiguous identifier ('by UUID'). It clearly contrasts with sibling list_edr_rule_exclusions and get_edr_rule, so an agent can select it without opening the schema.
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 the tool is for fetching one specific exclusion by UUID, while list_edr_rule_exclusions is for enumeration, but it never explicitly states when to choose this over a sibling or what distinguishes it from get_edr_rule. Usage context is present by inference only.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
esetprotect_get_userC
Get a single user by UUID.
| Name | Required | Description | Default |
|---|---|---|---|
| userUuid | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden for behavioral disclosure, but it only restates the operation itself. It does not mention what happens when the UUID is not found, the shape of the returned user object, or any permission 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?
The single sentence is concise, front-loaded, and contains no wasted words. However, the brevity comes at the cost of omitting usage and behavioral context that would make the definition genuinely helpful.
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 one-parameter get-by-ID tool, this is minimally viable: the agent can infer the basic call. But with no output schema, no annotations, and no error-behavior notes, the agent is left guessing about the response format and failure cases.
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%, so the description must compensate for parameter meaning, but 'by UUID' merely restates the parameter name userUuid. It adds no format details, constraints, or examples beyond what the property name already implies.
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 states a specific verb ('Get'), a specific resource ('a single user'), and the lookup key ('by UUID'). This inherently distinguishes it from list_users and batch_get_users, though it never names those siblings 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?
No guidance is provided about when to use this tool instead of esetprotect_list_users or esetprotect_batch_get_users. The description gives no context for selection among the closely related sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
esetprotect_list_detection_groupsC
List detection groups - related detections clustered together (e.g. the same malware across many devices).
| Name | Required | Description | Default |
|---|---|---|---|
| endTime | No | ||
| pageSize | No | ||
| pageToken | No | ||
| startTime | No | ||
| deviceUuid | No | ||
| cloudOfficeTenantUuid | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are absent, so the description carries the full burden of behavioral disclosure. It only explains what detection groups conceptually are and does not state whether the operation is read-only, how pagination works, what filtering is supported, or what the response contains. No behavioral traits beyond purpose are disclosed.
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, efficient sentence that front-loads the core purpose. It is appropriately concise, though it sacrifices needed detail for brevity. No wasted 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 no annotations, no output schema, and zero parameter documentation, the description is insufficient for an agent to correctly call this tool. It does not explain required or optional filters, pagination, or return format, leaving critical information missing.
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% and the tool description mentions none of the six parameters. An agent cannot infer what endTime, startTime, deviceUuid, cloudOfficeTenantUuid, pageSize, or pageToken do. The description fails to compensate for the total 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?
States the specific verb 'List' and the resource 'detection groups', and defines what detection groups are with a clarifying example ('related detections clustered together, e.g. the same malware across many devices'). This clearly distinguishes it from sibling tools like esetprotect_list_detections and esetprotect_get_detection_group.
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 gives no guidance on when to use this tool versus alternatives. It does not mention that esetprotect_list_detections handles individual detections or that esetprotect_get_detection_group retrieves a specific group. Usage is only implied by the resource name, not explained.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
esetprotect_list_detectionsB
List detections (v1 - legacy surface, endpoint antivirus/firewall detections only). Prefer esetprotect_list_detections_v2 for new integrations.
| Name | Required | Description | Default |
|---|---|---|---|
| endTime | No | RFC3339 timestamp, exclusive upper bound on occurTime. | |
| pageSize | No | ||
| pageToken | No | ||
| startTime | No | RFC3339 timestamp, inclusive lower bound on occurTime. | |
| deviceUuid | No |
TDQS
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 mentions the legacy surface and scope but doesn't disclose pagination behavior, rate limits, authentication requirements, or what happens with the occurTime bounds. The description adds minimal behavioral context beyond the schema.
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. The legacy surface warning and the preference for v2 are front-loaded, making the key routing information immediately visible. It is concise and well-structured.
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 list tool with no output schema and no annotations, the description is thin. It doesn't explain return format, pagination semantics, or the meaning of deviceUuid filtering. The legacy/v2 distinction is helpful, but an agent would still need to infer several important details about how to call this tool 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?
Schema description coverage is 40%, so the schema documents endTime and startTime but leaves pageSize, pageToken, and deviceUuid without descriptions. The description doesn't compensate for these undocumented parameters, but it does clarify the legacy scope and the occurTime filtering context. Baseline 3 is appropriate since the description adds some context but doesn't fill the 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?
The description clearly states the tool lists detections, specifies the legacy v1 surface, and scopes it to endpoint antivirus/firewall detections. It distinguishes itself from the v2 sibling by naming the preferred alternative, though it doesn't fully describe what the v2 variant offers.
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 explicitly says to prefer esetprotect_list_detections_v2 for new integrations, which is a clear usage directive. However, it doesn't state when to use this v1 tool (e.g., legacy systems or specific compatibility needs), leaving some ambiguity about the exact conditions for choosing it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
esetprotect_list_detections_v2B
List detections (v2 - covers endpoint, cloud office, and EDR detections).
| Name | Required | Description | Default |
|---|---|---|---|
| endTime | No | RFC3339 timestamp, exclusive upper bound on occurTime. | |
| pageSize | No | ||
| pageToken | No | ||
| startTime | No | RFC3339 timestamp, inclusive lower bound on occurTime. | |
| cloudOfficeTenantUuid | No |
TDQS
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 only says what the tool lists, not how it behaves: no mention of pagination, filtering semantics, time bounds, or whether it returns combined or separate result sets. The 'v2' label hints at a different scope but doesn't explain behavioral traits.
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 short sentence that front-loads the verb and resource, then adds a scoping parenthetical. It's efficient and readable, though the parenthetical could have been more informative about the v2 distinction.
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 list tool with no annotations and no output schema, the description should explain pagination, time filtering, and the meaning of cloudOfficeTenantUuid. It doesn't. The v2 scope note helps, but an agent would still be guessing about how to use the parameters and what the response looks like.
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 40% (startTime and endTime are described). The description adds no parameter-level meaning beyond the schema, but the two time parameters are already documented. The remaining three parameters (pageSize, pageToken, cloudOfficeTenantUuid) are undocumented in both schema and description, so the description doesn't compensate for the gap.
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 states a specific verb ('List') and resource ('detections'), and the parenthetical 'v2 - covers endpoint, cloud office, and EDR detections' distinguishes it from the sibling esetprotect_list_detections. However, it doesn't explicitly name the sibling or contrast the exact scope difference, so it's clear but not fully differentiated.
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 this is the v2 endpoint covering more detection types, which gives some context for when to use it over the v1 list. But it doesn't explicitly state when to choose this vs esetprotect_list_detections or esetprotect_get_detection_v2, nor any exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
esetprotect_list_device_groupsB
List ESET PROTECT device (static/dynamic) groups.
| Name | Required | Description | Default |
|---|---|---|---|
| pageSize | No | Max results per page. | |
| pageToken | No | Page token from a previous response. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden for behavioral disclosure, but it only restates that the tool lists groups. It does not mention read-only behavior, pagination behavior, default sorting, or what information is returned for each group.
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 with no filler, and the key resource ('device groups') plus the static/dynamic qualifier are front-loaded. 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?
For a simple list tool with fully documented optional pagination parameters, this is close to minimally viable. However, with no annotations, no output schema, and no usage guidance, the description leaves the agent to infer context and expected results from the tool name and 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?
Schema description coverage is 100%, so the schema already explains pageSize and pageToken. The description adds no parameter-level meaning, but none is needed because the schema sufficiently covers both 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 names a specific verb ('List') and resource ('ESET PROTECT device (static/dynamic) groups'), which is clear enough to identify the tool's object. It does not explicitly contrast with sibling tools such as esetprotect_list_group_devices or esetprotect_list_devices, but the resource scope is stated precisely.
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?
There is no guidance on when to use this tool versus alternatives, and no exclusions or preconditions. The description relies on the tool name and the agent's inference rather than providing explicit selection help.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
esetprotect_list_device_os_vulnerabilitiesC
List operating-system vulnerabilities found on devices.
| Name | Required | Description | Default |
|---|---|---|---|
| pageSize | No | ||
| pageToken | No | ||
| deviceUuid | No | ||
| deviceGroupUuid | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the full burden of disclosing behavior. It states only that the tool lists vulnerabilities, with no mention of pagination behavior, filtering effects, return format, or whether results are limited to a specific device or group.
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 concise and front-loaded with the core action and resource. It contains no fluff, though it is sparse enough that it misses useful details; still, as a single-sentence definition it is well structured.
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 no annotations, no output schema, and four undocumented optional parameters, this description is not complete enough for an agent to call the tool with confidence. It leaves critical details unresolved, such as pagination mechanics, filter semantics, and what fields appear in the result.
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% and the description does not explain any of the four parameters. While the parameter names (pageSize, pageToken, deviceUuid, deviceGroupUuid) are somewhat self-explanatory, the description adds no meaning beyond the schema and does not compensate for the missing 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?
The description uses a specific verb ('List') and a specific resource ('operating-system vulnerabilities found on devices'). It clearly distinguishes this tool from nearby siblings like list_device_vulnerabilities and list_vulnerable_devices by narrowing the scope to OS-level vulnerabilities.
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 guidance is given for when to use this tool versus alternatives such as list_device_vulnerabilities or list_vulnerable_devices. The description does not mention whether deviceUuid, deviceGroupUuid, or other filters are appropriate for different use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
esetprotect_list_device_patchesB
List patches (available/applied) for devices, optionally filtered by device, group, or patch type.
| Name | Required | Description | Default |
|---|---|---|---|
| pageSize | No | ||
| pageToken | No | ||
| patchType | No | ||
| deviceUuid | No | ||
| deviceGroupUuid | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It conveys a read-only listing operation and distinguishes available vs applied patches, but it does not disclose pagination behavior, default scope, or response characteristics. It adds some behavioral context, but key operational traits remain unstated.
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?
A single sentence that leads with the action and resource, then compactly lists the optional filters. Every clause contributes information and there is no 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?
For a tool with no annotations, no output schema, and 5 undocumented parameters, the description is too thin. It omits pagination behavior, default output, how patch statuses appear in results, and does not indicate when this tool should be preferred over similar patching/vulnerability tools. It gives a basic idea but is not sufficient for fully reliable 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?
Schema description coverage is 0%, so the description must compensate. It adds meaning for three filter parameters (deviceUuid, deviceGroupUuid, patchType) with 'optionally filtered by device, group, or patch type', but pageSize and pageToken are left entirely unexplained. The enriched filter semantics are helpful, yet pagination parameters remain ambiguous.
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 a specific verb ('List') and resource ('patches for devices'), and adds semantic scope with 'available/applied' and optional filters. It is clearly distinct from most sibling tools about detections, users, or vulnerabilities, though it does not explicitly differentiate from close cousins like list_recent_application_patching_details.
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 says what the tool does but gives no guidance about when to use it instead of related patching/vulnerability tools, nor any conditions or exclusions. It only implies usage from the operation itself, with no mention of alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
esetprotect_list_devicesB
List managed devices (endpoints), optionally filtered by display name, functionality status, or mute state.
| Name | Required | Description | Default |
|---|---|---|---|
| isMuted | No | ||
| pageSize | No | ||
| pageToken | No | ||
| displayNames | No | Filter to these exact display names. | |
| functionalityStatus | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burdenags; it does disclose that this is a read-only listing operation and that filtering is optional. However, it does not mention pagination behavior, defaults, result shape, or possible limits, which are relevant given pageSize and pageToken parameters.
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 front-loaded sentence with no wasted words. It states the core action and the optional filters immediately, making it easy for an agent to parse quickly.
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 tool is moderately complex due to five optional parameters, an enum, and pagination fields, but the description only covers the three filtering dimensions. Critical context such as pagination behavior and filter semantics is missing, leaving the definition adequate but incomplete.
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 only 20%, with displayNames being the only documented parameterional. The description names the three filter categories but does not clarify isMuted semantics, the meaning of pageSize/pageToken, or how filters combine. This is insufficient compensation for the low 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 a specific operation ('List managed devices (endpoints)') and names the three optional filter dimensions. It does not explicitly contrast with sibling tools like list_group_devices or get_device, so it stops short of full sibling differentiation.
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 this is the general device-listing tool with optional filters, but it gives no explicit guidance on when to choose it over siblings such as list_group_devices, batch_get_devices, or get_device. There are no exclusions or alternative recommendations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
esetprotect_list_device_vulnerabilitiesC
List vulnerabilities found on devices (application, OS, or package scope).
| Name | Required | Description | Default |
|---|---|---|---|
| pageSize | No | ||
| pageToken | No | ||
| deviceUuid | No | ||
| deviceGroupUuid | No | ||
| vulnerabilityScope | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the full burden of behavioral disclosure. It only states the action and resource; it does not mention pagination behavior, whether filtering by deviceUuid or deviceGroupUuid is required, how vulnerabilityScope affects results, or what the response contains. This is minimal for a tool with no structured safety hints.
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, front-loaded sentence with no filler or repeated information. It is efficient, though it achieves conciseness by omitting important operational detail.
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 five parameters, no output schema, no annotations, and a dense sibling list with several vulnerability-related tools, this description is incomplete. An agent cannot determine how to filter, paginate, or choose this tool over similar siblings without additional context.
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%, so the description needed to compensate for the five undocumented parameters. It only restates the vulnerabilityScope values ('application, OS, or package scope') and ignores pageSize, pageToken, deviceUuid, and deviceGroupUuid, which are not self-explanatory in context.
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 uses a specific verb ('List') and a clear resource ('vulnerabilities found on devices'), and it adds the scope dimension (application, OS, or package). However, it does not explicitly distinguish this tool from the closely named sibling 'esetprotect_list_device_os_vulnerabilities' or from 'esetprotect_list_vulnerable_devices', so it stops short of full differentiation.
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 guidance is provided about when to use this tool versus the many vulnerability-related siblings. The description gives no exclusions, prerequisites, or alternative tool recommendations, leaving an agent to infer selection criteria from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
esetprotect_list_edr_rule_exclusionsC
List EDR rule exclusions.
| Name | Required | Description | Default |
|---|---|---|---|
| pageSize | No | ||
| pageToken | No | ||
| includeTotalSize | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description must disclose behavior, but 'List EDR rule exclusions' merely restates the tool name. It does not mention pagination, return shape, or whether the list is complete or scoped.
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 sentence is short and front-loaded with no filler, but it is under-specified rather than efficiently informative. It does not earn its place because it adds no detail beyond the 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?
With no output schema, no annotations, and three undocumented pagination parameters, a one-line function restatement leaves the agent without parameter semantics or result expectations. A list tool of this complexity needs at least pagination and return behavior.
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% and the description names none of pageSize, pageToken, or includeTotalSize. The agent receives no meaning for these 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 uses a specific verb+resource ('List EDR rule exclusions') and the plural form signals it is the listing counterpart of get_edr_rule_exclusion. It does not explicitly name sibling tools, so it stops short of full differentiation.
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 gives no context about when to use this versus esetprotect_list_edr_rules or esetprotect_get_edr_rule_exclusion. Usage is only implied by the 'list' verb.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
esetprotect_list_edr_rulesC
List EDR (Endpoint Detection & Response) detection rules.
| Name | Required | Description | Default |
|---|---|---|---|
| pageSize | No | ||
| pageToken | No | ||
| severityLevel | No | Filter by rule severity level. | |
| includeTotalSize | No | Include totalSize in the response (costs an extra count query). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. 'List' implies a read-only operation, but the description does not disclose pagination behavior, default page size, how severityLevel and includeTotalSize affect the call, or any response characteristics. An agent gets no richer behavioral context than the tool name already provides.
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, tightly written sentence with zero filler and no redundant restatement of the tool name. The acronym expansion and resource focus are front-loaded, making it quickly scannable.
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 4-parameter list tool with no annotations and no output schema, this one-line description is incomplete. It omits pagination details, filter semantics, response shape, and how this tool relates to get_edr_rule or list_edr_rule_exclusions, leaving an agent without enough context to invoke it confidently beyond guessing from parameter names.
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 50%, with pageSize and pageToken undocumented. The tool description adds no parameter information at all, leaving those two pagination parameters unexplained and not clarifying severityLevel values or the total-size cost beyond the schema's own notes. The description therefore fails to compensate for the schema gap.
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 names a specific verb and resource: 'List EDR (Endpoint Detection & Response) detection rules.' It clearly identifies what the tool returns and, through the term 'rules,' distinguishes it from sibling tools like get_edr_rule and list_edr_rule_exclusions. It does not explicitly differentiate itself from those siblings, so it stops short of a 5.
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?
There is no guidance on when to choose this tool over alternatives such as list_detections, get_edr_rule, or list_edr_rule_exclusions. The only usage signal is the verb 'List,' which implies using it when a collection of EDR rules is needed, but it provides no exclusions, prerequisites, or contextual triggers.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
esetprotect_list_group_devicesB
List the devices that are members of a given device group.
| Name | Required | Description | Default |
|---|---|---|---|
| pageSize | No | ||
| groupUuid | Yes | UUID of the device group. | |
| pageToken | No | ||
| recurseSubgroups | No | Include devices from subgroups. Default false. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It only states the core list operation and omits pagination behavior, subgroup recursion semantics, and any read-only/safety statement.
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 clear sentence with no filler. It is front-loaded with the action and resource and 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?
The tool has four parameters and no annotations or output schema, so the description needs to provide more context. It does not explain pagination, subgroup traversal defaults, or how the result set is shaped, leaving important gaps for correct 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?
Schema description coverage is 50% and the description only alludes to groupUuid via 'given device group.' It adds no meaning for pageSize, pageToken, or recurseSubgroups beyond what the schema already provides.
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 uses a specific verb-resource pair: 'List the devices that are members of a given device group.' This clearly distinguishes the tool from list_device_groups, list_devices, and get_device.
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 intended use is implied: call it when you need the device membership of a specific group. However, it does not state when to prefer this over list_devices or list_device_groups, nor does it mention any exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
esetprotect_list_patching_process_detailsC
List detailed patching-process history for devices within an optional time window.
| Name | Required | Description | Default |
|---|---|---|---|
| endTime | No | RFC3339 timestamp, exclusive end of the time period. | |
| pageSize | No | ||
| pageToken | No | ||
| startTime | No | RFC3339 timestamp, inclusive start of the time period. | |
| deviceUuid | No | ||
| deviceGroupUuid | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden, but it only implies a read/list operation. It does not disclose pagination behavior, result volume, or the fact that device/group filters are available. The added 'optional time window' context is minimal.
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 efficient sentence with no filler and the action is front-loaded. It is concise, though it could add useful guidance without becoming overly long.
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 6-parameter list endpoint with no annotations and no output schema, this description leaves too much implicit: filtering options, pagination, and response semantics are absent. The presence of multiple similar patching siblings makes the lack of disambiguation more costly.
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 only 33%, covering startTime and endTime. The description mentions an optional time window but does not explain deviceUuid, deviceGroupUuid, pageSize, or pageToken semantics, so the low schema coverage is not compensated.
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 states a specific verb ('List') and resource ('detailed patching-process history'), with optional time-window scoping. It does not explicitly differentiate from siblings like list_recent_application_patching_details, but the core purpose is clear.
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 guidance is given on when to use this tool versus sibling tools such as list_recent_application_patching_details or list_device_patches. The optional time window implies a context, but no exclusions or alternative conditions are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
esetprotect_list_recent_application_patching_detailsB
List details of the most recent application-patching processes across the fleet.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description implies a read-only collection operation and adds a meaningful behavioral scope: the result is limited to the most recent application-patching processes across the fleet. Since no annotations are provided, the description carries the full disclosure burden, and it does not mention output shape, ordering, pagination, or the recency window. The word 'list' suggests no side effects, but this is inferred rather than 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 description is a single, front-loaded sentence with no filler or redundant phrasing. It is appropriately sized for a parameterless list operation and communicates the essential action and scope directly.
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 no annotations and no output schema, the description needs to provide enough context about what 'details' means, what 'most recent' entails, and how this tool differs from close siblings. It omits the output contract and the relationship to esetprotect_list_patching_process_details, making it hard for an agent to know exactly what result to expect or when to prefer this 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?
The input schema is empty with no parameters, and schema description coverage is 100%, so there is nothing ambiguous about invocation. The description does not need to explain parameter meaning because no parameters 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?
The description clearly states the action ('List details'), the object ('application-patching processes'), and the scope ('across the fleet'). It is specific enough to be understood at a glance. However, it does not explicitly differentiate itself from the closely named sibling esetprotect_list_patching_process_details, relying on the word 'recent' to carry that distinction.
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 alternatives such as esetprotect_list_patching_process_details, esetprotect_list_recent_scans, or esetprotect_list_device_patches. There are no conditions, exclusions, or cues for selecting this tool over its siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
esetprotect_list_recent_scansC
List details of recent vulnerability scans.
| Name | Required | Description | Default |
|---|---|---|---|
| pageSize | No | ||
| pageToken | No | ||
| deviceUuid | No | ||
| deviceGroupUuid | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It only says 'List details...', which implies a read operation but does not explain what 'recent' means, whether pagination is involved, or any limits/ordering 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?
One short sentence with no filler, front-loading the verb and resource. It is concise, though the terseness contributes to the lack of contextual completeness.
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 tool has four optional parameters, no output schema, and no annotations, so the description needs to say more to be complete. It does not mention filtering by device/group, pagination, or what details are returned in a scan listing.
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%, and the description does not compensate by explaining the four parameters. pageSize/pageToken and deviceUuid/deviceGroupUuid are only inferable from their names; the description adds no parameter 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?
The description names a specific verb ('List') and resource ('recent vulnerability scans'), so an agent can tell what is being returned. It stops short of a 5 because it doesn't explicitly contrast with related vulnerability/list tools such as esetprotect_list_device_vulnerabilities or esetprotect_list_vulnerable_devices.
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?
There is no guidance about when to use this tool versus the many vulnerability and detection siblings, and no exclusions or prerequisites are stated. The agent must infer that this is the tool for scan-history listings rather than current vulnerability state.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
esetprotect_list_usersA
List ESET Business Account users provisioned into this ESET PROTECT tenant, with optional filters.
| Name | Required | Description | Default |
|---|---|---|---|
| No | |||
| pageSize | No | ||
| pageToken | No | ||
| displayName | No | ||
| userGroupUuid | No | ||
| protectionStatus | No | ||
| hasCloudOfficeMsLicense | No | ||
| cloudOfficeTenantReference | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full burden. It adds useful scope information ('provisioned into this tenant') and indicates that filters are optional, while 'List' implies a read-only operation. It does not disclose pagination behavior, filter combination semantics, or response shape, which are modest gaps for a list 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?
The description is one front-loaded sentence with no filler: verb, resource, and filtering intent are all present. Every clause earns its place, and it is appropriately sized for a straightforward list 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 eight optional parameters, no output schema, and no annotations, this short description is too thin. It leaves pagination, filter combination behavior, and parameter semantics unexplained, so an agent cannot confidently construct non-trivial filter calls. The description gives a clear purpose but not enough operational context for correct 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, the description needed to explain the eight parameters but merely labels them as 'optional filters.' It does not clarify how filters combine, what pageToken/pageSize do, or what protectionStatus values mean. The bare field names and enum provide type-level hints only, leaving the agent to infer actual filtering 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?
Employs a specific verb ('List') and identifies the resource ('ESET Business Account users provisioned into this ESET PROTECT tenant') plus optional filters. This clearly distinguishes it from siblings like get_user and batch_get_users, which target specific users rather than listing a collection. The null title does not hurt because the description supplies full clarity.
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 use when an agent needs a set of users rather than a single user, and notes that filters are optional. However, it does not explicitly name when to prefer get_user or batch_get_users, nor does it describe scenarios where this list tool should not be used. It provides usable context but no explicit alternatives or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
esetprotect_list_vulnerable_devicesC
List devices that currently have one or more known vulnerabilities.
| Name | Required | Description | Default |
|---|---|---|---|
| pageSize | No | ||
| pageToken | No | ||
| deviceGroupUuid | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states that the tool lists vulnerable devices, but it does not mention pagination behavior, output shape, data source, permissions, or whether 'currently' is based on the latest scan state.
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 front-loaded sentence with no filler or repetition. Every word adds meaning, and the core purpose is immediately clear.
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 core purpose is clear but the tool is incomplete for confident invocation: no output schema, no annotations, undocumented parameters, and no usage guidance. An agent would know what the tool returns conceptually but not how the optional parameters affect the call or what response to expect.
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%, and the description does not mention pageSize, pageToken, or deviceGroupUuid at all. All three parameters are left undocumented, and the description makes no attempt to compensate for the schema's lack of parameter descriptions.
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 uses a specific verb ('List') and a clearly scoped resource ('devices that currently have one or more known vulnerabilities'), which distinguishes it from siblings like esetprotect_list_devices or esetprotect_list_device_vulnerabilities. It tells an agent exactly what is being returned.
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 gives no guidance on when to choose this tool over alternatives such as esetprotect_list_devices, esetprotect_list_group_devices, or esetprotect_list_device_vulnerabilities. There are no exclusions, prerequisites, or explicit context notes.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
26 tool updates
v0.1.0- First observed
esetprotect_batch_get_detections - First observed
esetprotect_batch_get_devices - First observed
esetprotect_batch_get_users - First observed
esetprotect_get_detection - First observed
esetprotect_get_detection_group - First observed
esetprotect_get_detection_v2 - First observed
esetprotect_get_device - First observed
esetprotect_get_edr_rule - First observed
esetprotect_get_edr_rule_exclusion - First observed
esetprotect_get_user - First observed
esetprotect_list_detection_groups - First observed
esetprotect_list_detections - First observed
esetprotect_list_detections_v2 - First observed
esetprotect_list_device_groups - First observed
esetprotect_list_device_os_vulnerabilities - First observed
esetprotect_list_device_patches - First observed
esetprotect_list_device_vulnerabilities - First observed
esetprotect_list_devices - First observed
esetprotect_list_edr_rule_exclusions - First observed
esetprotect_list_edr_rules - First observed
esetprotect_list_group_devices - First observed
esetprotect_list_patching_process_details - First observed
esetprotect_list_recent_application_patching_details - First observed
esetprotect_list_recent_scans - First observed
esetprotect_list_users - First observed
esetprotect_list_vulnerable_devices
TDQS
Scored across 26 tools
The set follows a clear resource/action pattern, but several tools are easy to confuse: detections have v1 and v2 variants, device_os_vulnerabilities overlaps with device_vulnerabilities, and multiple patching/vulnerability-scan history tools exist. The descriptions help, but an agent must read carefully to avoid selecting the wrong list/get surface.
Every tool is prefixed with esetprotect_ and follows a consistent snake_case verb_noun pattern, including batch_get variants. There is no mixing of conventions or unexpected naming styles.
With 26 tools, the server is on the heavy side and above the ideal 3-15 range. Some consolidation is possible, especially around v1/v2 detections and multiple vulnerability/patching list tools, though the breadth is somewhat justified by the scope of ESET PROTECT.
The surface is almost entirely read-only: list/get/batch operations with no create, update, delete, or remediation tools. There are also no single-resource getters for device groups or vulnerability details, so some management and drill-down workflows dead-end.
Maintenance
Related MCP Connectors
- HAVNOAuthapp.havnre
Read-only AI access to HAVN properties, leads, tasks, files, media, and analytics.
- OsboonOAuthcom.osboon
Read-only AI access to Osboon business card analytics, viewers, links, connections and contacts.
Read-only access to your VortexIQ store data: audits, KPIs, alerts, Brand DNA, reports, Ask VIQ.
Read-only local AI advice, shared reports and website audits. No PC scan or local actions.
Related MCP Servers
- AlicenseNot gradedqualityFmaintenanceEnables AI assistants to interact with Mender IoT platform for device management, deployment monitoring, and fleet analysis through natural language commands. Provides read-only access to device status, deployment logs, releases, and system monitoring capabilities.2MIT
- AlicenseBqualityDmaintenanceEnables AI assistants to manage and monitor UniFi Network Controllers through natural language. Provides 25 read-only tools for discovering devices and clients, viewing security configurations, analyzing network statistics, and exporting configuration data.41MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to securely query VAST Data databases for schema, metadata, and sample data via read-only SQL and MCP resources.MIT
- AlicenseNot gradedqualityAmaintenanceEnables read-only file-management operations from AI assistants, including health checks, connection and folder listings, search, share-link resolution, metadata retrieval, and on-demand document reading.MIT