Skip to main content
Glama
warapp-mcp

warapp-mcp

by chrischall

Verify credentials and upstream reachability

warapp_healthcheck
Read-onlyIdempotent

Diagnoses war.app auth failures by resolving credentials, making one read-only request, and reporting source, acceptance, latency, and whether the issue is missing, rejected, or server-side.

Instructions

Resolves the credential the way real tools do, then makes one authenticated request to war.app. Reports which source supplied the credential, whether war.app accepted it, the round-trip time, and a plain-English hint distinguishing 'no credential' from 'credential rejected' from 'a war.app-side problem'. Read-only; never returns the credential itself. Call this when a real tool fails and you want to know which hop broke.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "warapp_healthcheck"
  }
}

Input Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.0.0

TDQS

A4.7/5.0
Behavior5/5

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

Beyond the readOnly/openWorld/idempotent annotations, the description discloses that it resolves credentials the same way real tools do, performs exactly one authenticated request, and reports the credential source, acceptance, round-trip time, and a plain-English failure hint. The statement that it never returns the credential itself is a security-relevant guarantee an agent cannot get from the annotations.

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 sentences, front-loaded with the mechanism, then the outputs, then the calling condition. Every clause carries information — no restatement of the title beyond the added "the way real tools do" qualifier.

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

Completeness5/5

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

With no output schema, the description must cover return values, and it does so precisely: credential source, whether war.app accepted it, round-trip time, and a categorized hint. For a no-parameter diagnostic tool this is exactly the right amount of context.

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

Parameters4/5

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

There are zero input parameters and 100% schema coverage, so the baseline is 4 and there is nothing further a description could add about arguments. The description correctly avoids inventing options that the empty schema does not provide.

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 states a concrete two-step action (resolve the credential, make one authenticated request to war.app) and frames the output as a diagnostic verdict. That clearly separates it from the sibling domain tools like warapp_get_game and warapp_plan_route, which fetch game data rather than probe connectivity.

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?

"Call this when a real tool fails and you want to know which hop broke" gives an explicit trigger condition, and the failure-classification hints tell the agent what decision the tool supports. It does not spell out when *not* to call it (e.g. as a preflight in normal operation), which keeps it short of a 5.

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