Skip to main content
Glama
WYRE-AI

Cork MCP Server

Official
by WYRE-AI

cork_get_client_devices

Retrieve client devices from all connected integrations with hostnames, IPs, OS details, and install status. Use device UUIDs to filter software vulnerabilities.

Instructions

List devices observed for a client across all connected integrations - hostnames, IP addresses, the integration each device was seen in, whether the device can receive a future install dispatch (can_install_software), normalized OS details, resolved device type, and hardware model. Device UUIDs can be used to filter cork_get_software_vulnerabilities. Requires a client UUID from cork_get_clients.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pageNoPage number (1-based). Defaults to 1.
page_sizeNoItems per page (max 100). Defaults to 10.
client_uuidYesClient UUID, from cork_get_clients.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.2/5.0
Behavior4/5

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

With no annotations, the description carries the behavioral burden; it clearly signals a read-only list operation, defines the meaning of can_install_software, and explains normalized OS/device-type details. It does not discuss pagination or response envelope, but the schema covers pagination and 'List' implies non-mutating.

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

Conciseness5/5

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

Three compact sentences front-load the core action and scope, then pack output-field semantics, a cross-tool usage hint, and the prerequisite without redundancy. Every sentence earns its place.

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

Completeness4/5

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

For a simple paginated list with one required parameter, the description covers output fields, scope, and a prerequisite, while the schema covers paging. No output schema exists, but the enumerated fields give an agent a good mental model of the result; an explicit page-size/return-envelope note would make it fully complete.

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

Parameters3/5

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

All three parameters are already documented in the schema (100% coverage), so the baseline is 3. The description adds meaningful connectivity by sourcing client_uuid from cork_get_clients, but adds nothing about page/page_size beyond the schema.

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

Purpose5/5

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

The description starts with a specific verb and resource ('List devices observed for a client across all connected integrations') and enumerates the returned fields. The 'across all connected integrations' scope distinguishes it from sibling cork_get_integration_devices without needing to open schemas.

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

Usage Guidelines4/5

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

It gives a clear context: client-level device inventory aggregated over integrations, and an explicit prerequisite ('Requires a client UUID from cork_get_clients') plus a downstream use for device UUIDs. It does not name alternatives or state when not to use it, but the context is clear enough for selection.

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