Skip to main content
Glama

OrbitGuard: Autonomous Satellite Fault Isolation & Anomaly Detection MCP

Model Context Protocol Built with Nitrostack TypeScript Status License: MIT

OrbitGuard: Autonomous Satellite Fault Isolation & Anomaly Detection MCP is an onboard Model Context Protocol (MCP) server designed for autonomous satellite constellation telemetry classification, South Atlantic Anomaly (SAA) radiation glitch filtering, and fault isolation. Built and deployed on Nitrostack, it extends AI assistants — like Claude, Cursor, ChatGPT, and custom flight control agents — with real-world spacecraft operational capabilities.


📋 Table of Contents


Related MCP server: mendrift-mcp

🛰️ Overview

What does it do?

OrbitGuard uses a multi-stage evaluation pipeline to monitor and safe satellite telemetry in real time:

  1. Critical Envelope Validation: Validates real-time telemetry against critical hardware safety limits (voltage, thermal, and tumble rates).

  2. Space Weather Filtering: Filters out temporary radiation-induced sensor glitches (e.g., Single Event Upsets / SEUs in the South Atlantic Anomaly).

  3. Persistent Fault Isolation: Isolates persistent hardware faults (such as gyroscope drifts) using density-based novelty detection.

  4. Automated Triage & Safing: Generates structured diagnostic reports for flight controllers and triggers spacecraft emergency safing modes when necessary.

Who is it for?

Aerospace operators, flight operations controllers, and satellite constellation managers looking to integrate AI copilots directly into ground control operations for real-time monitoring and automated troubleshooting.

What makes it special?

  • Native MCP Integration: Exposes real-time spacecraft state vectors and safety limits as live MCP resources.

  • Space Weather Intelligent Filtering: Distinguishes between transient radiation noise and genuine hardware failures to prevent unnecessary safe-mode entries.

  • Copilot-Guided Triage: Bundles structured prompt templates (triage_fault, generate_pass_summary) to provide AI agents with exact step-by-step troubleshooting instructions during anomaly passes.


💡 What is MCP?

The Model Context Protocol (MCP) is an open standard that enables AI assistants to securely connect to external tools, data sources, and services. Instead of being limited to static knowledge, an AI model calls MCP servers to retrieve live data, execute commands, and interface with physical and software systems.

Learn more about building and shipping MCP apps at nitrostack.ai.


✨ Features

  • 🔌 MCP-Native: Seamlessly connects to any MCP client (Claude Desktop, Cursor, Custom LLM Ground Control Agents).

  • 🛠️ Full MCP Specification: Exposes tools, live resources, and prompt templates.

  • Nitrostack Powered: Hosted on Nitrocloud for low-latency execution and high availability.

  • 🔐 Secure Design: Ground station authorization and encrypted telemetry stream support.

  • 🧩 Composable: Easily orchestrate with satellite trajectory predictors or orbital physics engines.


📐 Architecture & Capabilities

                  Telemetry Vector Stream
                            │
                            ▼
          ┌───────────────────────────────────┐
          │  Stage 1: Hard Safety Envelope    │ ──► Trip? ──► SAFE_MODE
          └───────────────────────────────────┘
                            │ (No)
                            ▼
          ┌───────────────────────────────────┐
          │  Stage 2: Space Weather Filter   │ ──► SAA & SEU Glitch? ──► CONTINUE_MISSION
          └───────────────────────────────────┘
                            │ (No)
                            ▼
          ┌───────────────────────────────────┐
          │  Stage 3: Sensor Fault Isolation  │ ──► Gyro Drift? ──► ISOLATE_SENSOR
          └───────────────────────────────────┘
                            │ (Nominal)
                            ▼
                     NOMINAL OPERATING MODE

🛠️ MCP Tools, Resources & Prompts

Core MCP Modules (src/modules/)

Module

Description

Tools / Operations

telemetry

Multi-stage safety envelope & threshold evaluator

evaluate_telemetry

anomaly

Fault scenario simulator & density novelty detector

simulate_scenario, detect_novelty_anomaly

alerts

Component isolation & spacecraft emergency safing

isolate_fault_component, trigger_safe_mode

reports

Structured diagnostic summary generator

generate_diagnostic_report

auth

Ground station security & permission verifier

verify_ground_station_auth

Resources

  • telemetry://current-state — Real-time spacecraft telemetry vector.

  • telemetry://safety-thresholds — Configured hardware limits (voltage, thermal, tumbling).

  • satellite://constellation-health — Health matrix across active constellation satellites.

Prompts

  • triage_fault — Guided flight operations prompt for anomaly evaluation and recovery.

  • generate_pass_summary — Summary template for ground station contact passes.


🌐 Live Demo

🚀 Live MCP Endpoint: https://satellite-fault-isolation-6a6c6d22-techie-zeekies-srmist.app.nitrocloud.ai

Point your MCP client directly to this URL to start querying spacecraft state vectors and diagnosing simulated satellite anomalies.


🚀 Getting Started

Prerequisites

  • Node.js: v18.0.0 or higher

  • npm: v9.0.0 or higher

  • An MCP-compatible client (Claude Desktop, Cursor, VS Code with MCP extension)

Installation

git clone https://github.com/Litheshan07/satellite-anomaly-mcp.git
cd satellite-anomaly-mcp
npm install

Configuration

Copy the example environment configuration file:

cp .env.example .env

Build & Run Locally

# Build TypeScript code
npm run build

# Run automated unit & integration tests
npm test

# Start local server
npm run start

🔌 Connect to an MCP Client

Add OrbitGuard to your MCP client configuration file (e.g., claude_desktop_config.json or Cursor settings):

{
  "mcpServers": {
    "orbitguard": {
      "url": "https://satellite-fault-isolation-6a6c6d22-techie-zeekies-srmist.app.nitrocloud.ai"
    }
  }
}

Restart your client to expose OrbitGuard's tools, resources, and prompt templates directly to your AI assistant.


☁️ Deploy Your Own MCP App

Want to build and ship an MCP server like OrbitGuard? Nitrostack enables fast creation, deployment, and hosting of MCP applications with zero infrastructure management.

👉 Start building: https://nitrostack.ai


🌌 Explore More MCP Apps


❓ FAQ

What is an MCP server?

An MCP server implements the Model Context Protocol to securely expose tools, live data resources, and structured prompts to AI assistants.

What does OrbitGuard do?

OrbitGuard provides telemetry safety checks, filters radiation noise (SEUs) in low-Earth orbit, isolates hardware component failures (like gyro drift), and automates spacecraft emergency safing.

Which AI clients support OrbitGuard?

Any client compatible with the MCP standard, including Claude Desktop, Cursor, and custom LLM applications built with @modelcontextprotocol/sdk.


🏷️ Keywords

Open Innovation · OrbitGuard · Satellite Fault Isolation · Anomaly Detection · MCP · Model Context Protocol · MCP Server · Nitrostack · Nitrocloud · Spacecraft Telemetry · AI Agents · Flight Operations


📜 License

Distributed under the MIT License. See LICENSE for details.


Built with ❤️ using the Model Context Protocol on Nitrostack.

Available Tools

7 tools
detect_novelty_anomalyC

Runs density-based anomaly detector for telemetry features out of distribution.

ParametersJSON Schema
NameRequiredDescriptionDefault
sample_windowNoNumber of past telemetry frames to evaluate

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description must carry the full burden. It says the tool 'runs' a detector but does not disclose whether it is read-only, what it returns, or any side effects. The behavior is essentially restated from the tool name without additional context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that communicates the tool's core function efficiently. No unnecessary words or repetition, though it could arguably be more front-loaded with the purpose.

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?

With no annotations or output schema and only one optional parameter, the description is minimal. It fails to mention the return value or behavior, which is critical for a detection tool. The lack of usage context and alternatives makes it incomplete for an agent to reliably invoke.

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 covers the single parameter sample_window with a description ('Number of past telemetry frames to evaluate'), so schema coverage is 100%. The tool description itself does not add meaning beyond what the schema already provides, hence the baseline score of 3.

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 uses the specific verb 'Runs density-based anomaly detector' and identifies the resource as 'telemetry features out of distribution.' This makes the purpose clear and distinct from generic telemetry evaluation, though it does not explicitly name sibling tools.

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?

There is no explicit guidance on when to use this tool versus alternatives like evaluate_telemetry or isolate_fault_component. The context implies it is for anomaly detection, but no when-to-use or when-not-to-use information is provided.

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

evaluate_telemetryB

Evaluates satellite telemetry frame through safety envelope, space-weather filter, and sensor isolation.

ParametersJSON Schema
NameRequiredDescriptionDefault
bus_voltageYesMain bus voltage (V)
seu_counterYesSingle Event Upset counter
battery_tempYesBattery temperature (C)
satellite_idNoSatellite ID designation
tumbling_rateYesADCS tumbling rate (deg/s)
is_saa_crossingYesWhether satellite is crossing South Atlantic Anomaly
gyro_star_residualYesGyroscope vs Star Tracker residual

TDQS

B3.4/5.0
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 disclosing behavior. It names the filters used but does not reveal the outcome of the evaluation, whether the tool is read-only, or if it triggers side effects. It is unclear what 'evaluates' means in terms of return values or downstream actions. This is a significant gap for a tool that could lead to isolation or safe mode.

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, front-loaded sentence that precisely states the action and scope. Every term contributes meaning, with no filler or redundancy. It is an excellent model of conciseness.

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?

Despite a 100% schema coverage, the tool lacks an output schema and has no annotations. The description does not explain what the evaluation returns, how results are encoded, or how this tool relates to sibling actions like trigger_safe_mode or isolate_fault_component. An agent would be uncertain about the tool's role in the broader fault-handling workflow. This incomplete context is a significant limitation.

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 parameters with units and meanings. The description adds no parameter-specific detail beyond what the schema provides, but it does not need to. Baseline 3 is appropriate since the schema is carrying the semantic load.

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 uses the specific verb 'Evaluates' with a clear resource ('satellite telemetry frame') and three distinctive scoping methods ('safety envelope, space-weather filter, and sensor isolation'). This distinguishes it from siblings like detect_novelty_anomaly or isolate_fault_component, which address different aspects of telemetry handling.

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 usage is implied: one would use this tool to evaluate a telemetry frame. However, there is no explicit 'when to use versus' guidance or mention of alternatives. The description does not state exclusions, but the purpose is clear enough to infer basic usage. It lacks direct comparison to sibling tools.

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

generate_diagnostic_reportB

Generates structured satellite anomaly diagnosis summary for flight operations controllers.

ParametersJSON Schema
NameRequiredDescriptionDefault
satellite_idNo
time_window_minutesNoTime window in minutes to evaluate

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations, the description carries the full burden of behavioral disclosure. It does not state whether the tool is read-only, whether it has side effects, what the output structure looks like, or any prerequisites. 'Generates a summary' implies a non-destructive operation, but this is not explicit and details are missing.

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, concise sentence that front-loads the tool's purpose. It contains no unnecessary words or repetition, 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.

Completeness2/5

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

The tool has a modest complexity (2 parameters, no output schema), but the description lacks crucial context such as the structure of the summary, dependencies on other tools (e.g., prior anomaly detection), or when to use it in the operational workflow. An agent would not know what to expect or how to respond to the output.

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

Parameters2/5

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

Schema coverage is 50% (time_window_minutes has a description, satellite_id does not), but the tool description adds no parameter-specific meaning. It does not explain satellite_id or clarify time_window_minutes beyond the schema. The description's mention of 'satellite anomaly diagnosis' provides context, but no additional semantic value for the parameters.

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 tool generates a structured satellite anomaly diagnosis summary, with a specific verb ('generates') and resource ('summary'). It is distinct from sibling tools like 'detect_novelty_anomaly' and 'isolate_fault_component' by focusing on the summary/report aspect rather than detection or isolation.

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?

No guidance is provided on when to use this tool versus alternatives. It does not mention whether this should follow anomaly detection, whether it requires telemetry data, or any exclusion criteria. The description simply states what it does without contextualizing its place in a workflow.

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

isolate_fault_componentC

Issues command to isolate suspect satellite component or switch to redundant subsystem.

ParametersJSON Schema
NameRequiredDescriptionDefault
actionYes
componentYes
satellite_idNo

TDQS

C2.6/5.0
Behavior2/5

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

With no annotations, the description carries full responsibility for behavioral disclosure. It only states that a command is issued but does not describe side effects, reversibility, authorization needs, or consequences of the isolate/switch actions. This is insufficient for a mutating command tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficiently worded sentence with no filler. It is appropriately front-loaded and avoids redundancy, though it is so brief that it omits critical details. The conciseness itself is good, but substance is minimal.

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?

For a tool with 3 parameters, no annotations, and no output schema, the description is severely incomplete. It misses when to use the tool, operational constraints, expected outcomes, and any safety or prerequisite information, making it inadequate for reliable autonomous use.

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

Parameters1/5

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

Schema description coverage is 0%, and the description does not explain any parameter. It does not define the enum values for 'action' and 'component', nor does it clarify the optional 'satellite_id'. The agent lacks essential meaning for correct invocation.

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 uses a specific action ('issues command') and clearly specifies the resource (suspect satellite component) with two alternative actions: isolate or switch to redundant subsystem. This distinguishes it from sibling tools that are analytic or safety-mode focused, although 'isolate' could be more precisely defined.

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?

No guidance is provided on when to use this tool versus alternatives like trigger_safe_mode or evaluate_telemetry. There are no conditions, prerequisites, or exclusions mentioned, leaving the agent without context for appropriate selection.

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

simulate_scenarioB

Simulates satellite fault scenarios (space_weather, sensor_fault, true_anomaly, adcs_tumble).

ParametersJSON Schema
NameRequiredDescriptionDefault
scenario_typeYes

TDQS

B3.2/5.0
Behavior2/5

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

No annotations are provided, and the description does not disclose side effects, output format, or state changes. While 'simulates' suggests a non-destructive activity, it does not confirm whether it returns data, modifies state, or has other implications.

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 concise sentence with no unnecessary words. It effectively front-loads the core purpose and lists options in parentheses, all in a compact structure.

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?

With no output schema, the description should explain what the simulation produces or returns. It lacks any mention of output, side effects, or use context, making it incomplete for an agent to confidently invoke the 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?

The description lists the same enum values as the schema, adding context that these are 'satellite fault scenarios'. However, it does not explain the meaning of individual scenario types (e.g., what 'adcs_tumble' entails), leaving the schema's enum as the primary reference.

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 identifies the tool's action ('Simulates satellite fault scenarios') and lists specific scenario types. This verb is unique among sibling tools like 'detect' or 'isolate', which are distinct actions.

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?

No guidance is given on when to use this tool versus alternatives. The description simply states what it does without explaining use cases, prerequisites, or exclusions.

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

trigger_safe_modeB

Triggers emergency spacecraft safe-mode sequence to protect bus hardware.

ParametersJSON Schema
NameRequiredDescriptionDefault
reasonYesReason for manual or automated safe-mode trigger
satellite_idNo

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations, the description carries the full burden of behavioral disclosure. It only states the action and goal, without disclosing consequences, reversibility, or operational impact—critical for a safe-mode trigger.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single efficient sentence, front-loaded with the key verb, and avoids unnecessary words. It is concise but lacks additional structural detail that could enhance utility.

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?

For a critical emergency action with no annotations and no output schema, the description is too sparse. It omits prerequisites, post-trigger behavior, and operational dependencies, which are essential for safe use.

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

Parameters2/5

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

Schema description coverage is 50% (reason described, satellite_id not). The description adds no parameter details, leaving satellite_id's purpose entirely unclear and not compensating for the coverage gap.

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?

Description uses a specific verb 'Triggers' with a clear resource ('emergency spacecraft safe-mode sequence') and purpose ('protect bus hardware'), making the tool's function distinct from sibling diagnostic or isolation tools.

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 emergency use through words like 'emergency' and 'protect bus hardware', but it provides no explicit when-to-use/when-not-to-use guidance or mentions alternatives among the sibling tools.

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

verify_ground_station_authB

Verifies Ground Station security context for executing sensitive safety maneuvers.

ParametersJSON Schema
NameRequiredDescriptionDefault
api_keyYesGround station authorization key
command_levelYes

TDQS

B3.3/5.0
Behavior2/5

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

No annotations are provided, so the description must carry the full burden. It only says 'verifies' without disclosing whether this is a read-only check, what happens on success/failure, or any side effects. The term 'security context' is minimal behavioral context.

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 concise sentence with the verb and object front-loaded. No redundant or filler content; every word earns its place.

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?

No output schema and no annotations. The description omits return format, error behavior, and parameter roles, which are critical for a verification tool. The sibling tool list provides external context but the description itself is incomplete for safe invocation.

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

Parameters2/5

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

Schema coverage is 50% (api_key is described, command_level is not). The description adds no parameter-level detail: it doesn't explain how command_level affects verification or which level is required for sensitive maneuvers, leaving the agent to infer from the enum names alone.

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?

Clear verb 'verifies' + specific resource 'Ground Station security context' + scope 'for executing sensitive safety maneuvers'. This distinguishes it from sibling tools like trigger_safe_mode, which actually executes the maneuver, and diagnostic/telemetry tools.

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 phrase 'for executing sensitive safety maneuvers' implies when to use it (before such maneuvers) but there is no explicit guidance on when not to use it or which alternative to choose. No exclusions or sibling comparisons are provided.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 7 tool updatesv1.0.0
    • First observeddetect_novelty_anomaly
    • First observedevaluate_telemetry
    • First observedgenerate_diagnostic_report
    • First observedisolate_fault_component
    • First observedsimulate_scenario
    • First observedtrigger_safe_mode
    • First observedverify_ground_station_auth

TDQS

A3.5/5.0

Scored across 7 tools

Disambiguation5/5

Each tool targets a distinct phase of anomaly handling: evaluation, novelty detection, simulation, diagnosis, and response actions. Even the two detection-oriented tools are clearly differentiated by method and scope, so there is no ambiguity.

Naming Consistency5/5

All tool names follow a consistent verb_noun snake_case pattern (e.g., evaluate_telemetry, trigger_safe_mode), making the tool set predictable and easy to navigate.

Tool Count5/5

Seven tools is well-scoped for a satellite anomaly management domain, covering detection, diagnosis, simulation, and response without unnecessary redundancy.

Completeness4/5

The toolset covers the full anomaly response workflow from detection to safe mode, but lacks explicit recovery or restore operations (e.g., reactivating a component after isolation), which is a minor gap.

Maintenance

ActivitySlowing
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers