Skip to main content
Glama

server_fleet

Monitor fleet-wide health and security posture across all registered servers, displaying status, audit scores, and SSH response times for comprehensive oversight.

Instructions

Get fleet-wide health and security posture for all registered servers. Returns server name, IP, provider, health status (ONLINE/DEGRADED/OFFLINE), cached audit score, and SSH response time. Use sort parameter to order results. For per-server cloud status or available server sizes, use server_info instead.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
sortNoSort field: score (descending), name (A-Z), provider (A-Z). Default: name.name

Implementation Reference

  • The handler function that executes the server_fleet tool, managing retrieval and processing of server data.
    export async function handleServerFleet(params: {
      sort?: "score" | "name" | "provider";
    }): Promise<McpResponse> {
      try {
        const servers = getServers();
        if (servers.length === 0) {
          return mcpError("No servers found", undefined, [
            { command: "kastell add", reason: "Add a server first" },
          ]);
        }
    
        const rows = await runFleet({ json: true, sort: params.sort ?? "name" });
    
        return mcpSuccess({ servers: rows.length, rows });
      } catch (error: unknown) {
        return mcpError(getErrorMessage(error));
      }
    }
  • The schema definition for the input parameters of the server_fleet tool.
    export const serverFleetSchema = {
      sort: z
        .enum(["score", "name", "provider"])
        .optional()
        .default("name")
        .describe("Sort field: score (descending), name (A-Z), provider (A-Z). Default: name."),
    };
  • The registration of the server_fleet tool within the MCP server setup.
    server.registerTool("server_fleet", {
      description:
        "Get fleet-wide health and security posture for all registered servers. Returns server name, IP, provider, health status (ONLINE/DEGRADED/OFFLINE), cached audit score, and SSH response time. Use sort parameter to order results. For per-server cloud status or available server sizes, use server_info instead.",
      inputSchema: serverFleetSchema,
      annotations: {
        title: "Fleet Visibility",
        readOnlyHint: true,
        destructiveHint: false,
        idempotentHint: true,
        openWorldHint: true,
      },
    }, async (params) => {
      return handleServerFleet(params);
    });

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/kastelldev/kastell'

If you have feedback or need assistance with the MCP directory API, please join our Discord server