Skip to main content
Glama

Server issues and recommendations

get_recommendations
Read-onlyIdempotent

Returns the open issues Opservo has detected on one server, ranked by severity (critical, warning, info), each with a plain-English description and the suggested fix. Can be filtered to one severity.

Input Schema

NameRequiredDescriptionDefault
agent_idYesThe server/agent UUID to query.
severityNoOptional: only return recommendations at this severity.

Output Schema

NameRequiredDescriptionDefault
errorNoPresent only when the call failed: why, in plain English (unknown server, server from another workspace, not a Kubernetes cluster).
recommendationsNoOpen issues, critical first.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "additionalProperties": true,
      +  "properties": {
      +    "error": {
      +      "description": "Present only when the call failed: why, in plain English (unknown server, server from another workspace, not a Kubernetes cluster).",
      +      "type": "string"
      +    },
      +    "recommendations": {
      +      "description": "Open issues, critical first.",
      +      "items": {
      +        "additionalProperties": true,
      +        "properties": {
      +          "category": {
      +            "description": "Area: performance, security, storage, reliability, database and so on.",
      +            "type": "string"
      +          },
      +          "description": {
      +            "description": "What was detected and why it matters.",
      +            "type": "string"
      +          },
      +          "fix": {
      +            "description": "Suggested fix, usually with the command in backticks.",
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "severity": {
      +            "description": "Severity of the finding.",
      +            "enum": [
      +              "critical",
      +              "warning",
      +              "info"
      +            ],
      +            "type": "string"
      +          },
      +          "title": {
      +            "description": "One-line title.",
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "severity",
      +          "title"
      +        ],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    }
      +  },
      +  "type": "object"
      +}
  2. First observed

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and destructiveHint=false, so the safety profile is covered. The description adds genuine behavioral context beyond that: only *open* issues are returned, results are ordered by severity, and each item carries a plain-English description plus a suggested fix.

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?

One sentence that front-loads the resource, then the ordering, then the filtering. No redundant restatement of the title and nothing an agent must wade through.

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?

An output schema exists, so return-value details need not be spelled out, and the description still conveys what each item contains. Coverage is slightly short on situational routing versus the read-heavy siblings, but nothing needed to invoke the tool correctly is missing.

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

Parameters3/5

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

Schema description coverage is 100%, so both agent_id and the severity enum are fully documented in the schema itself. The description's note that results can be narrowed to a single severity adds marginal value over the schema's 'Optional: only return recommendations at this severity'.

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

Purpose4/5

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

States a specific verb and resource: returns open issues detected on one server, ranked by severity, each with a description and suggested fix. The scope (single server, open issues only) is precise enough to separate it from list_agents or get_log_summary, though no sibling is named explicitly.

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

Usage Guidelines3/5

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

Implied usage comes through the scoping ('on one server') and the optional severity filter, but there is no statement of when to prefer this over get_server_overview or get_incident_timeline, nor any prerequisite guidance. Adequate but leaves the routing decision to inference.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources