AI-Powered Space Mission Tracking MCP Server providing real-time ISS tracking, rocket launch information, and space mission data
Three tools with complete schemas and descriptions, but descriptions are generic and lack LLM-optimization guidance. All tools are READ_ONLY with proper input schemas including types and constraints (e.g., days: 1-365). However, descriptions lack WHEN/WHY context and recovery guidance. Output schemas are not documented. Error handling returns text but lacks actionable recovery steps. Tool names follow verb_noun pattern correctly.
Get the current real-time position of the International Space Station
Get detailed information about a specific space mission by ID
Get upcoming rocket launches within a specified time period
Output schemas not documented. LLMs cannot plan downstream calls or extract fields without knowing response structure. getMissionDetails, getISSPosition, getUpcomingLaunches all return text content but no formal schema.
Descriptions lack WHEN/WHY context. 'Get detailed information about a specific space mission by ID' does not explain when to call this vs other tools, or what makes it distinct. Baseline: 194 chars avg, these are ~80 chars.
Error handling returns plain text ('❌ Error fetching...') without recovery guidance. Pattern requires: 'User not found. Try search_users() with a partial name.' Current errors give LLM no actionable next step.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 63 | 2026-07-28+ | v2 |
Parameter 'include_passes' in getISSPosition has no description of what 'passes' means or when to enable it. LLM cannot infer whether this returns orbital passes, ground station passes, or visibility windows.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). All three tools are READ_ONLY but this is not declared in schema, forcing LLM to infer safety from description alone.