Skip to main content
Glama

Server Quality Checklist

58%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v1.0.0

  • Disambiguation5/5

    Each tool has a clearly distinct purpose with no overlap: health checking, two specific deployment tools (Cloudflare Worker and MCP server), infrastructure status overview, service restart, and auto-recovery. The descriptions reinforce distinct domains (deployment vs. operations vs. monitoring).

    Naming Consistency4/5

    Tools follow a consistent verb_noun pattern (e.g., check_services_health, deploy_cloudflare_worker) with clear action-object naming. The only minor deviation is 'get_infrastructure_status' which uses 'get' instead of 'check' like the health tool, but the pattern remains readable and predictable.

    Tool Count5/5

    Six tools is well-scoped for infrastructure management, covering deployment, monitoring, and recovery workflows. Each tool earns its place with no redundancy, and the count aligns with typical server ranges (3-15 tools) for this domain.

    Completeness4/5

    The toolset provides strong coverage for infrastructure lifecycle: deployment (two tools), health monitoring, status overview, restart, and recovery. A minor gap exists in lacking update/delete operations for deployed resources, but core workflows are well-covered with safe alternatives to raw SSH commands.

  • Average 3.7/5 across 6 of 6 tools scored.

    See the Tool Scores section below for per-tool breakdowns.

  • This repository is archived. Archived repositories automatically receive an F maintenance tier.

  • Add a LICENSE file by following GitHub's guide. Once GitHub recognizes the license, the system will automatically detect it within a few hours.

    If the license does not appear after some time, you can manually trigger a new scan using the MCP server admin interface.

    MCP servers without a LICENSE cannot be installed.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • Add a glama.json file to provide metadata about your server.

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior2/5

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

    No annotations are provided, so the description carries full burden. It mentions 'automatic recovery' and 'predefined playbooks,' but does not disclose critical behavioral traits such as whether this is a read-only or destructive operation, what permissions are required, potential side effects, or how recovery is executed. This is inadequate for a tool that likely involves system changes.

    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?

    The description is a single, efficient sentence that front-loads the core action ('trigger automatic recovery') without unnecessary words. Every part earns its place by specifying the target and mechanism concisely.

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

    Completeness2/5

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

    Given the complexity of a recovery tool with no annotations and no output schema, the description is incomplete. It lacks details on behavioral aspects like safety, permissions, or what happens post-recovery, which are crucial for an agent to use this tool correctly in an infrastructure context.

    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 the schema fully documents the two parameters. The description does not add any meaning beyond the schema, such as explaining how 'service_name' and 'failure_type' interact with playbooks. Baseline 3 is appropriate as the schema handles parameter documentation.

    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?

    The description clearly states the action ('trigger automatic recovery') and target ('for a failed service'), specifying the mechanism ('using predefined playbooks'). It distinguishes from siblings like 'restart_service' by emphasizing automation and playbooks, though it could be more specific about what 'automatic recovery' entails compared to manual alternatives.

    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?

    The description implies usage when a service has failed, based on 'failed service,' but does not explicitly state when to use this tool versus alternatives like 'restart_service' or 'check_services_health.' No exclusions or prerequisites are mentioned, leaving usage context somewhat vague.

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

  • Behavior3/5

    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 explicitly states 'Safe read-only operation,' which is valuable context about safety and operation type. However, it doesn't describe what 'health' means (e.g., metrics, status codes), whether it requires authentication, rate limits, or what the output looks like (e.g., structured data, alerts).

    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?

    The description is extremely concise with two sentences that earn their place: the first states the purpose, and the second adds critical behavioral context ('Safe read-only operation'). It's front-loaded with the core function and wastes no words.

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

    Completeness3/5

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

    Given no annotations and no output schema, the description is minimally complete for a read-only health check tool. It covers the basic purpose and safety but lacks details on output format, error handling, or integration with sibling tools. For a tool with 2 parameters and moderate complexity, it should ideally explain what 'health' entails or link to related tools.

    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?

    The input schema has 100% description coverage, with clear documentation for both parameters ('service_group' with enum-like values and 'service_names' as an optional array). The description adds no additional parameter semantics beyond what's in the schema, such as explaining how parameters interact (e.g., if 'service_names' overrides 'service_group'). Baseline 3 is appropriate given high schema coverage.

    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?

    The description clearly states the tool's purpose as 'Check health of one or more services' with the verb 'Check' and resource 'services'. It distinguishes from siblings like 'restart_service' (which modifies) and 'get_infrastructure_status' (which is status-focused rather than health-focused). However, it doesn't explicitly differentiate from 'trigger_auto_recovery' which might also involve health assessment.

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

    Usage Guidelines2/5

    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. It doesn't mention when to use 'check_services_health' instead of 'get_infrastructure_status' (which might provide overlapping information) or 'trigger_auto_recovery' (which might be for automated responses to health issues). No context about prerequisites or exclusions is provided.

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

  • Behavior4/5

    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 explicitly states 'Safe read-only operation', which clarifies that it's non-destructive and safe to use. However, it doesn't mention other behavioral aspects like performance implications, rate limits, or authentication needs, which would be helpful for a comprehensive infrastructure tool.

    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?

    The description is extremely concise with just two sentences that are front-loaded and waste no words. The first sentence states the purpose, and the second adds critical behavioral context, making it efficient and easy to parse.

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

    Completeness3/5

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

    Given the tool's complexity (infrastructure overview) and lack of annotations or output schema, the description is minimally adequate. It covers safety and purpose but doesn't explain what 'comprehensive overview' entails in terms of return values or structure, leaving gaps that the agent must infer.

    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?

    The input schema has 100% description coverage, so the schema already fully documents the two parameters (include_history and include_locks). The description adds no additional parameter semantics beyond what the schema provides, making the baseline score of 3 appropriate as the schema does the heavy lifting.

    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?

    The description clearly states the tool's purpose with a specific verb ('Get') and resource ('comprehensive overview of entire infrastructure'), making it easy to understand what it does. However, it doesn't explicitly differentiate from sibling tools like 'check_services_health', which might overlap in functionality.

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

    Usage Guidelines2/5

    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 like 'check_services_health' or 'trigger_auto_recovery'. It lacks context about specific scenarios, prerequisites, or exclusions, leaving the agent to infer usage based on tool names alone.

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

  • Behavior2/5

    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 'state tracking and health checks,' which adds some context beyond the basic deployment action, but lacks details on permissions, rate limits, error handling, or what 'state tracking' entails, leaving significant gaps for a mutation tool.

    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?

    The description is front-loaded with the core purpose and includes a critical usage guideline in just two sentences, with zero wasted words, making it highly efficient and well-structured.

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

    Completeness3/5

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

    Given the complexity of a deployment tool with no annotations and no output schema, the description is minimally adequate. It covers the purpose and usage but lacks details on behavioral aspects like error handling or return values, leaving room for improvement in completeness.

    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 the schema already documents all three parameters thoroughly. The description does not add any additional meaning or context about the parameters beyond what the schema provides, resulting in the baseline score.

    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?

    The description clearly states the action ('Deploy Cloudflare Worker') and resource ('Cloudflare Worker'), making the purpose evident. However, it doesn't differentiate from sibling tools like 'deploy_mcp_server' beyond the specific resource type, which keeps it from a perfect score.

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

    Usage Guidelines5/5

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

    The description provides explicit usage guidance by stating 'DO NOT use ssh_exec('wrangler deploy') - always use this tool instead,' which clearly indicates when to use this tool versus an alternative method, though it doesn't compare to sibling tools directly.

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

  • Behavior3/5

    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 'state tracking, locks, and health checks,' which adds useful context about deployment behavior beyond just the action. However, it lacks details on permissions, error handling, or what 'deploy' entails operationally, leaving gaps for a mutation tool.

    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?

    The description is concise and front-loaded, with two sentences that efficiently convey the purpose and critical usage rule. Every sentence adds value without redundancy, making it easy to parse and understand quickly.

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

    Completeness3/5

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

    For a deployment tool with no annotations and no output schema, the description provides basic purpose and usage rules but lacks details on what 'deploy' entails (e.g., steps, rollback), expected outcomes, or error scenarios. It's minimally adequate but has clear gaps given the tool's complexity.

    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 the schema fully documents all three parameters. The description doesn't add any parameter-specific information beyond what's in the schema, such as explaining interactions between parameters or additional constraints. This meets the baseline for high schema coverage.

    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?

    The description clearly states the action ('Deploy MCP server to Fly.io') and resource ('MCP server'), making the purpose evident. However, it doesn't explicitly differentiate from sibling tools like 'deploy_cloudflare_worker' beyond the target platform, missing specific distinctions about when to choose one over the other.

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

    Usage Guidelines5/5

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

    The description provides explicit usage guidance: 'DO NOT use ssh_exec for deployments - always use this tool instead.' This clearly states when to use this tool (for deployments) and when not to use an alternative (ssh_exec), offering strong contextual direction.

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

  • Behavior4/5

    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 effectively describes key behavioral traits: the tool performs a restart operation (implying mutation), includes 'pre/post health checks' (safety mechanisms), and has 'automatic rollback' (error handling). However, it doesn't specify permission requirements, rate limits, or what constitutes successful health checks.

    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?

    The description is extremely concise with just two sentences that each serve clear purposes: the first states the core functionality with key behavioral details, and the second provides critical usage guidance. There's no wasted language or redundancy.

    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 mutation tool with no annotations and no output schema, the description does well by explaining the restart operation, safety features (health checks, rollback), and usage rules. However, it doesn't specify what the tool returns or error conditions, leaving some gaps in completeness for an agent invoking this tool.

    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 the schema already documents all three parameters thoroughly. The description doesn't add any parameter-specific information beyond what's in the schema, maintaining the baseline score of 3 for adequate but not enhanced parameter documentation.

    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 clearly states the specific action ('Restart a service') and distinguishes it from a prohibited alternative ('DO NOT use ssh_exec('docker restart')'), making the purpose explicit and differentiated from potential siblings. It goes beyond just naming the action by specifying the method includes 'pre/post health checks and automatic rollback'.

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

    Usage Guidelines5/5

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

    The description provides explicit guidance on when to use this tool ('always use this tool instead') and when not to use alternatives ('DO NOT use ssh_exec('docker restart')'), with a clear directive that establishes this as the preferred method for service restarts in this context.

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

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

Last Rock MCP MCP server — quality and maintenance score on Glama

Copy to your README.md:

Score Badge

Last Rock MCP MCP server — quality and maintenance score on Glama

Copy to your README.md:

shields.io Endpoint

Last Rock MCP MCP server — quality and maintenance score on Glama

For READMEs with an existing badge row. Append &style=flat-square (or any other shields.io style) to match the rest, and &metric=tools, &metric=maintenance or &metric=claim to badge a different dimension.

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/itsablabla/lastrock-mcp'

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