Agent-native host monitoring MCP server — exposes real-time system vital signs (CPU, Memory, Temperature) to intelligent agents.
Five tools with clear verb-noun naming (get*, subscribe*) and good descriptions (avg 180 chars, within 10-1024 baseline). All tools have input schemas with type definitions and descriptions. Tool annotations (readOnlyHint) present. However, output schemas are not formally documented, responses are inferred from code (text content arrays). Parameter descriptions are adequate but lack explicit format/constraint guidance (e.g., 'interval in milliseconds' could specify 'must be multiple of 100'). No error handling guidance or recovery paths documented. subscribeMetrics lacks idempotency documentation despite being a streaming tool.
Returns current CPU metrics: total usage %, per-core usage, load averages (1/5/15 min), and top N processes by CPU consumption.
Returns current memory metrics: total, used, free (in bytes), swap usage, and a human-readable summary.
Returns a full system snapshot including CPU usage, memory usage, temperature readings, top processes, and any threshold warnings. Use this to assess overall host health.
Returns current temperature readings for CPU (and GPU if available). Values are in °C. Returns null when sensors are inaccessible.
Streams system snapshots at a given interval. Returns a batch of snapshots collected over the specified duration. Useful for continuous monitoring or trend analysis.
Output schemas not formally documented. Responses are inferred from code (text content arrays with JSON). LLMs cannot plan downstream tool calls or extract structured fields without explicit schema documentation.
No error handling guidance. Tools do not document what happens on sensor unavailability (e.g., getTemperature returns null), permission errors, or timeout scenarios. LLMs lack recovery paths.
subscribeMetrics lacks idempotency documentation. Streaming tools that collect snapshots over time should clarify whether repeated calls with same parameters produce identical results or new data.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 60 | <=2025-11-25 | v2 |
Parameter constraints lack explicit format guidance. 'interval in milliseconds (default: 2000)' should state 'must be multiple of 100' or similar. Descriptions do not include validation rules that LLMs need to avoid invalid inputs.
No pagination or result limiting documented for subscribeMetrics. MAX_SUBSCRIBE_TICKS=30 is enforced in code but not exposed in schema or description. LLMs cannot reason about result size or plan for large durations.