Vigi-Sky
Server Details
Factual sky for AIs: ISS, auroras, archives. Never confuses unexplained with extraterrestrial.
- Status
- Healthy
- Uptime
- 100.0% over 43 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 24 tools
Most tools target distinct actions or domains, but there is notable overlap between hatch_search and nearby_cases for Hatch archive lookups near a point. Space-weather tools such as aurora, solar, and tonight_sky also partially overlap on Kp context, though their composite purposes differ.
Tool names are mostly snake_case, but they mix English and French (annuler_action, confirmer_action, proposer_signalement vs. hatch_search, iss_passes) and use inconsistent semantic patterns (verb_noun, noun_verb, plain noun). It remains readable, but the convention is not predictable.
With 24 tools, the server is on the heavy side and borders on overwhelming for a public UAP/sky-observation MCP. The broad domain includes reporting, archive, astronomy, and space-weather functions, but several tools feel peripheral or composite.
The surface covers the reporting lifecycle well: proposer_signalement, confirmer_action, annuler_action, and statut_actions. It also covers archive search/stats, satellite identification/passes, observation conditions, space weather, and reference/status tools, with only minor gaps such as retrieving a specific report or updating a draft.
Available Tools
24 toolsannuler_actionAnnuler ActionBRead-onlyIdempotentInspect
Annule un brouillon de signalement non confirme.
| Name | Required | Description | Default |
|---|---|---|---|
| action_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description says the tool cancels (annule) a draft, i.e. removes/voids it, which is a state-changing operation. The annotations declare readOnlyHint=true ('does not modify its environment'), directly conflicting with a cancellation semantics. This is an annotation contradiction rather than useful added 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
One short, front-loaded sentence with no filler or repetition. It is efficient, though its brevity is partly the reason for the missing usage and parameter context rather than a deliberate, complete rendering.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be explained. But for a workflow tool in a family with confirmer_action/proposer_signalement, the description omits what happens on a confirmed action, error conditions, and reversibility, leaving real gaps for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description never mentions action_id, so it adds no explicit parameter meaning. The single parameter name is largely self-explanatory given the tool acts on an action, which keeps this from being a low score, but the description still fails to compensate for the coverage gap (e.g. whether it must reference an existing draft).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource (annule un brouillon de signalement) and constrains scope to unconfirmed drafts, which implicitly separates it from confirmer_action. It never names a sibling tool explicitly, so an agent must infer the routing from the 'non confirme' qualifier.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'non confirme' functions as a usage precondition (only unconfirmed drafts can be cancelled), which is meaningful guidance. However, it gives no explicit when-not rule (e.g. what to do with a confirmed action, or which sibling to use instead), leaving the agent to infer the workflow relationship with confirmer_action and statut_actions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
auroraAurores / KpBRead-onlyIdempotentInspect
Live Kp/aurora odds from Vigi-Sky (NOAA) plus France Kp 6/7/8–9 thresholds.
| Name | Required | Description | Default |
|---|---|---|---|
| lat | Yes | Latitude WGS84 | |
| lng | No | Longitude WGS84. lon and lng are aliases — provide either. | |
| lon | No | Longitude WGS84. lon and lng are aliases — provide either. | |
| lang | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| aurora | No | |
| citations | Yes | |
| provenance | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, destructiveHint=false, idempotentHint=true, and openWorldHint=true, which align with the safe, read-only nature implied by 'Live Kp/aurora odds'. The description adds that it uses specific data sources and thresholds, which is helpful behavioral context but does not explicitly detail any additional behavioral traits beyond what annotations already cover.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that packs source, output type, and key details (thresholds) with no redundant words. It earns its place without any fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given there is an output schema and annotations cover safety and idempotency, the description adequately completes the picture by specifying data source and France-specific thresholds. However, it could hint at the output shape (e.g., odds, KP index) to further aid an agent, though the output schema likely fills that gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 75%, so the schema already documents three of four parameters fairly well (lat, lng, lon). The description does not elaborate on parameter meaning, leaving the schema to carry most of the burden. For the required 'lat' parameter, the description adds no extra semantics beyond what the schema provides. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool as providing 'Live Kp/aurora odds' from a specific source (Vigi-Sky / NOAA) and includes mention of threshold values for France. It is distinct from siblings like 'solar' or 'first_skies', but does not explicitly differentiate itself from them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus other astronomy or observation tools. No alternatives or context-based suggestions are provided, leaving the agent to infer usage solely from the name and description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
capabilitiesCarte des MCPARead-onlyIdempotentInspect
Map of this public MCP + the shipped local vigisky-sentinel (23 typed tools, stdio/127.0.0.1).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| citations | Yes | |
| provenance | Yes | |
| this_server | No | |
| local_server | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, openWorldHint=false, so the safety profile is fully specified. The description adds value by naming 'public MCP' and 'local vigisky-sentinel', indicating scope (public vs local) and transport (stdio/127.0.0.1). This is beyond what annotations provide, earning a 4.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence of 17 words. It is front-loaded with 'Map of this MCP', immediately conveying purpose. Every phrase adds context: public vs local, tool count (23), transport method. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given zero parameters, rich annotations, and an output schema (not shown but exists), the description completes the picture by specifying scope and transport. For a discovery/listing tool, this is fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters, and schema description coverage is 100%, so the schema fully documents the tool. The description does not need to add parameter meaning. Baseline 4 is appropriate given zero params and complete schema coverage; the description earns a 5 because no additional parameter info is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description says 'Map of this public MCP + the shipped local vigisky-sentinel (23 typed tools, stdio/127.0.0.1)', which clearly indicates it provides an overview or listing of tools. The verb 'Map' implies discovery or cataloging, and it distinguishes itself from 19 sibling tools by not being a domain-specific function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this tool is for exploring available tools, particularly the public MCP and a local set. It doesn't explicitly say when not to use it, but with zero parameters and a read-only idempotent nature, usage context is obvious. It provides a specific number (23 typed tools) and location (stdio/127.0.0.1), which helps in deciding relevance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
citeCiter une pageBRead-onlyIdempotentInspect
Map a user question to the best Vigi-Sky (or GEIPAN) URL to cite.
| Name | Required | Description | Default |
|---|---|---|---|
| lang | No | ||
| query | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| best | No | |
| lang | No | |
| query | No | |
| citations | Yes | |
| provenance | Yes | |
| alternatives | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, informing the agent of safe, non-destructive behavior. The description adds that the tool returns a URL (implying a read operation), which is consistent. However, it does not disclose edge cases like no matching URL, ambiguity handling, or response format. It minimally supplements 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that directly states the tool's purpose with no extraneous words. It is front-loaded and efficient, earning its place without waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite an output schema existing and simple parameters, the description lacks key information: parameter semantics, usage boundaries, and behavioral details (e.g., what constitutes 'best' URL). It does not guide the agent on how to prepare the query or interpret results beyond the schema. The description is insufficient for complete autonomous use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0% description coverage, meaning the parameter names 'query' and 'lang' carry no documentation. The description fails to clarify that 'query' is the user question and 'lang' is an optional language specifier. With no parameter explanations, the agent cannot determine how to properly populate these fields, causing potential misuse.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Map' and clearly identifies the resource: a user question to a Vigi-Sky or GEIPAN URL. This distinguishes the tool from sibling tools like 'nearby_cases' or 'object_lookup', which serve different functions. The purpose is unambiguous and directly stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 alternative tools such as 'nearby_cases' or 'iss_passes'. It does not mention any exclusions or contextual clues that would help an agent decide between similar tools. The agent is left to infer usage solely from the tool name and siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
confirmer_actionConfirmer ActionCRead-onlyIdempotentInspect
Execute le brouillon APRES confirmation du temoin et previent l'equipe. Etape 2 de 2.
| Name | Required | Description | Default |
|---|---|---|---|
| action_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description says it executes a draft and notifies the team, which are clear mutating side effects, while the annotations declare readOnlyHint=true and destructiveHint=false. Executing a draft and notifying an external team is not a read-only operation, so the description directly contradicts the structured safety hints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two terse sentences with no filler, and the operational precondition is front-loaded before the workflow position. The mixed-language phrasing is compact but slightly ambiguous to a non-French reader.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists so return values need not be explained, but for a mutation-style tool the description omits what the draft contains, what happens on failure, and what the notification entails. Combined with the annotation contradiction, the agent cannot reliably judge safety or behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for the single required parameter action_id. The description never mentions it, so an agent gets no meaning, format, or source for the identifier beyond the bare name in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb and object ('Execute le brouillon') and situates the tool as step 2 of 2, with the precondition of witness confirmation. It is distinguishable from a cancel counterpart (annuler_action) by intent, though it never names that sibling explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It states a precondition ('APRES confirmation du temoin') and the ordinal position in a workflow ('Etape 2 de 2'), which implies when to call it. It gives no explicit when-not-to-use guidance and does not name the alternative steps or the sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
doctrineDoctrine Vigi-SkyDRead-onlyIdempotentInspect
Vigi-Sky identity and method: never 'UFO detected', Hatch vs live corpus, book ISBN, founder.
| Name | Required | Description | Default |
|---|---|---|---|
| lang | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| entity | No | |
| summary | No | |
| citations | Yes | |
| provenance | Yes | |
| public_consented_dossiers | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is clear. The description adds content about Vigi-Sky's doctrine but does not disclose any behavioral traits beyond annotations—e.g., how the optional 'lang' parameter affects output, whether the response is a single string or structured data, or any limits. The description adds minimal value for behavioral understanding.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one line and not overly verbose, but it sacrifices clarity for brevity. The list of topics is crammed without structure. A bulleted or more explanatory format would improve scannability. As a single sentence, it is concise but not effectively front-loaded or organized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having an output schema (which could describe return values), the description fails to explain what the tool actually returns or how to use it. The optional 'lang' parameter is not addressed. The description gives only cryptic hints about content (e.g., 'never UFO detected', 'Hatch vs live corpus'), leaving the agent uncertain about the tool's complete behavior and output structure.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has a single parameter 'lang' with 0% description coverage and no enums. The description does not mention the parameter or explain its role (e.g., language selection). Schema coverage is low, so the description should compensate, but it provides no semantic information about any parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description lists topics ('never UFO detected', 'Hatch vs live corpus', 'book ISBN', 'founder') but does not state a clear verb and resource. It is unclear whether the tool returns a text, performs a query, or provides a reference. The phrase 'Vigi-Sky identity and method' hints at documentation retrieval, but the purpose remains vague and does not distinguish it from sibling tools like 'hatch_stats' or 'hypothesis_rank'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool over alternatives. Sibling tools include 'hatch_search', 'hatch_stats', 'hypothesis_rank', etc., but the description offers no context for choosing 'doctrine'. No when-to-use, when-not-to-use, or prerequisite information is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
first_skiesCiel des peuplesARead-onlyIdempotentInspect
Query Ciel des peuples: 9 named nations, asterisms with RA/Dec, sources, attested vs interpretation vs reserved. nation=dine | q=pléiades | western=orion | theme=agriculture | lat=44 for horizon honesty. Never 'the Indians'.
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | ||
| lat | No | Latitude WGS84 | |
| lng | No | Longitude WGS84. lon and lng are aliases — provide either. | |
| lon | No | Longitude WGS84. lon and lng are aliases — provide either. | |
| lang | No | ||
| theme | No | ||
| nation | No | ||
| western | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| slug | No | |
| ethics | No | |
| objects | No | |
| citations | Yes | |
| n_nations | No | |
| provenance | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, destructiveHint=false, and idempotentHint=true, so the safety profile is already clear. The description adds value by disclosing that queries are 'honest' regarding horizon (lat=44 constraint) and includes cultural sensitivity guidance ('Never "the Indians"'). These go beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long and front-loads the purpose. The first sentence is dense but clear; the second provides quick examples. Slightly more context could be added without verbosity, but it's efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (8 params, cultural sensitivity), the description covers key usage patterns and behavioral nuance well. There is an output schema, so return format details are handled. The description doesn't explain how queries combine parameters or how the horizon honesty constraint works, but it's sufficient for most uses.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is low at 38%, but the description provides concrete examples of how to use common parameters (q, nation, western, theme, lat). It adds meaning beyond the schema for some parameters, but doesn't cover all 8 parameters (e.g., lang, lng/lon aliases are not mentioned). Baseline adjusted for low coverage, but still only partial compensation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool queries 'Ciel des peuples' and lists what it returns (nations, asterisms with RA/Dec, sources, etc.). It's a specific verb-resource combination, but doesn't explicitly distinguish it from siblings like 'object_lookup' or 'asterisms', which is a minor gap.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides examples of query parameters (e.g., 'nation=dine', 'q=pléiades') which imply usage, but doesn't explicitly state when to use this tool versus alternatives like 'object_lookup' or 'tonight_sky'. No when-not-to-use guidance is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hatch_searchHatch SearchARead-onlyIdempotentInspect
Filter Hatch cases near a point by country/text. Approximate geocode.
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | ||
| lat | Yes | ||
| lng | No | ||
| lon | No | ||
| country | No | ||
| radius_km | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| n | No | |
| cases | No | |
| limit | No | |
| filter | No | |
| citations | Yes | |
| provenance | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide strong behavioral hints: readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds value by noting the geocoding is approximate, which is important behavioral context. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise at 8 words, front-loading the key verb 'Filter' and resource 'Hatch cases'. The single sentence efficiently conveys the core purpose. Could benefit from slightly more structure or examples.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 6 parameters (moderate complexity), 0% schema coverage, but does have an output schema and rich annotations, the description is minimally adequate. It doesn't explain the output format, error cases, the radius_km boundary meaning (20000 km is half the Earth), or the ambiguous lon/lng field.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate fully. It explains the purpose of the coordinates (point near which to filter), the country parameter, and the text parameter. However, it doesn't explain the unique 'lon' vs 'lng' choice, the semantics of 'radius_km', or the text search behavior. High reliance on parameter names alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool filters Hatch cases by proximity to a point, constrained by country and text. The phrase 'Approximate geocode' provides useful accuracy expectations. However, it doesn't differentiate from the sibling tool 'nearby_cases' which may have similar geographic filtering.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance on when to use this tool versus alternatives like 'nearby_cases', 'hatch_stats', or other search tools. It doesn't mention prerequisites, required coordinate format preferences (lon vs lng), or when text filtering is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hatch_statsHatch StatsARead-onlyIdempotentInspect
Hatch UDB stats (decades, countries) + wiki lessons. Archive, not live 2026.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| n | No | |
| archive | No | |
| citations | Yes | |
| provenance | Yes | |
| top_countries | No | |
| by_decade_1900_2002 | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark it as read-only, idempotent, and non-destructive. The description adds value by clarifying the data is archived and not live as of 2026, which is critical for an agent to interpret date relevance. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is exceptionally concise at two sentences, front-loading the key idea of stats and archive status. Every word adds value with no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no parameters, comprehensive annotations, and an existing output schema, the description covers the essential 'what' and 'temporal scope'. It could optionally detail the nature of 'wiki lessons' but is sufficient for a read-only tool with schema support.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters, so the description carries no burden for parameter documentation. Baseline 4 is appropriate as no further semantics are needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource ('Hatch UDB stats (decades, countries) + wiki lessons') and implies retrieval/access. It distinguishes from sibling 'hatch_search' by specifying it's static archive data, and notes the temporal scope ('Archive, not live 2026'). The verb is implicit rather than explicit, but the purpose is clear enough.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool instead of siblings like 'hatch_search' or others. The description hints at historical data but does not state contexts where stats are preferred over search, nor when the tool should be avoided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hypothesis_rankHypothesis RankBRead-onlyIdempotentInspect
Rank cheap natural hypotheses from a free-text sighting. No origin claim.
| Name | Required | Description | Default |
|---|---|---|---|
| description | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| next | No | |
| ranked | No | |
| citations | Yes | |
| provenance | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint, idempotentHint, and no destructive behavior. The description adds context with 'No origin claim,' which is a behavioral trait beyond the annotations. However, it does not elaborate on the ranking process, limits, or any side effects, so the added value is minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with two sentences, delivering the core purpose and a key constraint without any wasted words. It is front-loaded and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the low complexity (one parameter, no enums, annotations covering safety, and an output schema assumed to describe return values), the description is minimally sufficient. However, it lacks details on the ranking algorithm, number of hypotheses, or input constraints, so it could be more complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for the single 'description' parameter. The tool description clarifies that the input is a 'free-text sighting,' which adds meaning beyond the bare schema type. This is adequate but not extensive, as it does not specify format, length, or example content.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it ranks natural hypotheses from a free-text sighting, which is a specific verb+resource. It distinguishes from siblings like 'identify' or 'object_lookup' by focusing on ranking hypotheses rather than identification. However, the phrase 'cheap natural hypotheses' is somewhat jargon and could be clearer.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide explicit guidance on when to use this tool versus alternatives. It only mentions 'No origin claim,' which hints at a scope but does not clarify when to prefer this over siblings like 'identify' or 'nearby_cases.' No when-not or alternative tools are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
identifyIdentifier un pointARead-onlyIdempotentInspect
Match a timed azimuth/elevation to known bright satellites. Verdict: compatible | no_catalog_match | insufficient_data. Never 'UFO detected'.
| Name | Required | Description | Default |
|---|---|---|---|
| az | Yes | ||
| el | Yes | ||
| lat | Yes | Latitude WGS84 | |
| lng | No | Longitude WGS84. lon and lng are aliases — provide either. | |
| lon | No | Longitude WGS84. lon and lng are aliases — provide either. | |
| lang | No | ||
| time | Yes | ISO-8601, e.g. 2026-08-14T21:30:00Z |
Output Schema
| Name | Required | Description |
|---|---|---|
| matches | No | |
| verdict | No | |
| citations | Yes | |
| best_match | No | |
| provenance | Yes | |
| separation_deg | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true, and openWorldHint=true, so the agent knows the tool is safe, idempotent, and has an open-world result. The description adds value with the three possible verdicts and the explicit 'Never UFO detected' caveat, which clarifies limitations beyond annotations. No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences and front-loads the key action. It is concise and avoids fluff, though the 'Never UFO detected' sentence could be integrated into the first or placed as a separate note. Every sentence serves a purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 7 parameters (57% schema coverage), an output schema, and no nested objects, the description covers the essential behavior (matching, verdicts) and edge case (no UFO). It does not detail the output format, but the output schema is present, so that is acceptable. It could mention what the tool does with the 'lon'/'lng' alias more explicitly, but overall it is complete for its complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 57%, and the description does not detail individual parameters. However, the description's high-level explanation of the tool's purpose (matching azimuth/elevation/time to satellites) provides enough semantic context for the required parameters (az, el, lat, time). The 'lon' and 'lng' alias is documented in the schema. The description could have added more detail on the 'lang' or optional parameters, but the core meaning is clear.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses specific verbs ('Match') and resources ('timed azimuth/elevation to known bright satellites'), and distinguishes from siblings—none of the sibling tools (e.g., object_lookup, iss_passes) suggest the same satellite identification function. The three possible verdicts are enumerated, which clarifies the output scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly states the tool's function (matching observations to satellites) and implies its use case (when an agent has a timed observation), but it does not explicitly exclude alternatives or state when not to use it. The verdict list and 'Never UFO detected' provide some usage boundaries, but no sibling comparisons are made.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
iss_passesPassages ISSBRead-onlyIdempotentInspect
Upcoming bright satellite/ISS passes (SGP4). night_only=true keeps only dark+sunlit passes.
| Name | Required | Description | Default |
|---|---|---|---|
| lat | Yes | Latitude WGS84 | |
| lng | No | Longitude WGS84. lon and lng are aliases — provide either. | |
| lon | No | Longitude WGS84. lon and lng are aliases — provide either. | |
| lang | No | ||
| limit | No | ||
| night_only | No | ||
| include_tle | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| passes | No | |
| citations | Yes | |
| night_only | No | |
| provenance | Yes | |
| n_potentially_visible | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, covering safety and idempotency. The description adds that it uses the SGP4 algorithm and explains the night_only filter's effect. This adds some behavioral context beyond annotations but does not cover rate limits, authentication, or what 'bright' means. Value is modest.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences (17 words) frontload the core purpose. No redundant or filler content. Every clause adds value. Ideal length for quick scanning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 7 parameters, output schema present, and annotations available, the description adequately covers the basic purpose and a key parameter. However, it lacks usage context (e.g., typical scenario, how results relate to output schema) and does not help an agent choose between this and sibling tools like starlink_trains. It is minimally complete for a simple tool but has notable gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 43% (3 of 7 parameters described in schema: lat, lng, lon). The description explains the night_only parameter's effect, adding meaning for one more parameter. However, lang, limit, and include_tle remain undocumented in both schema and description. The compensation is partial.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it provides 'upcoming bright satellite/ISS passes' and mentions the SGP4 algorithm. The verb 'upcoming' plus resource 'satellite/ISS passes' is specific. However, it does not explicitly differentiate from sibling tools like 'starlink_trains' or 'object_lookup', though the topic is distinct enough.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance on when to use this tool versus alternatives. It does not mention prerequisites (e.g., requiring a date/time), nor does it state when night_only should be set to true in a broader recommendation. Sibling tools exist but no comparisons are made.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
nasa_apodNasa ApodARead-onlyIdempotentInspect
NASA Astronomy Picture of the Day via Vigi-Sky.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| apod | No | |
| citations | Yes | |
| provenance | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint, idempotentHint, and destructiveHint=false, so the description does not need extensive behavioral disclosure. The mention of 'via Vigi-Sky' slightly adds context about data provenance, but no further traits are revealed. This is adequate given the annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-front-loaded sentence. It is concise and immediately communicates the purpose. However, it could be slightly more informative without adding length, such as hinting at the output type.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only tool with solid annotations and an output schema, the description is essentially complete. It answers the core 'what does it do?' question. The existence of an output schema reduces the need to describe return values explicitly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters, so schema coverage is 100% by default. The baseline for 0 parameters is 4. The description does not need to explain parameters; 'via Vigi-Sky' is a peripheral detail about the tool's backend.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns NASA's Astronomy Picture of the Day, specifying the source and service ('via Vigi-Sky'). It is the only APOD-related tool among 19 siblings, so there is no confusion with alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 other astronomy tools like 'aurora', 'solar', or 'object_lookup'. Without any context on use cases or exclusions, the agent must infer entirely from the name and siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
nearby_casesCas Hatch prochesARead-onlyIdempotentInspect
Historical Hatch UDB cases near a point. Archive 1900–2002, approximate geocode — not live Vigi-Sky reports.
| Name | Required | Description | Default |
|---|---|---|---|
| lat | Yes | Latitude WGS84 | |
| lng | No | Longitude WGS84. lon and lng are aliases — provide either. | |
| lon | No | Longitude WGS84. lon and lng are aliases — provide either. | |
| lang | No | ||
| radius_km | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| cases | No | |
| query | No | |
| archive | No | |
| returned | No | |
| citations | Yes | |
| provenance | Yes | |
| not_vigisky_live | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint, openWorldHint, idempotentHint, and destructiveHint. The description adds important context beyond annotations: archive nature (UDB), date range (1900–2002), and approximate geocoding precision. This is valuable behavior disclosure that annotations alone do not convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: two sentences with no wasted words. Every sentence is front-loaded with the core action and adds a critical qualifier (date range, geocoding precision, distinction from live reports).
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 5 parameters, moderate schema coverage, and an output schema (so return values need no description), the description is adequately complete. It covers what the tool does, data scope, precision, and clarifies it's not live data. The only minor gap is not mentioning that lat is required and lon/lng are aliases, but the schema covers that.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 60%, and the description does not repeat parameter details. The description provides high-level context (historical archive, approximate geocode) that helps interpret parameters like radius_km and lang. For the 40% of undocumented parameters, the tool's overall purpose compensates somewhat. A minor point: the description doesn't explicitly guide on the lon/lng alias choice.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the tool finds historical Hatch UDB cases near a point, with specific date range (1900–2002) and approximate geocode. It clearly distinguishes itself from live Vigi-Sky reports and by context from siblings like hatch_search and hatch_stats.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly indicates the tool is for historical archive data (1900–2002) and not live reports, which helps the agent choose between this and live-report tools. However, it does not explicitly state when not to use it or name sibling alternatives, though the context signals show many related tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neo_watchNeo WatchARead-onlyIdempotentInspect
Near-Earth objects for today (astronomy, not UAP).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| neo | No | |
| note | No | |
| citations | Yes | |
| provenance | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true, idempotentHint=true, destructiveHint=false, so the tool's safety is clear. The description adds the note '(astronomy, not UAP)' which clarifies the scope (avoids confusion with UFO/UAP domains). This adds value beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with a parenthetical clarification—extremely concise and front-loaded with purpose. Every word is earned; no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 0 parameters, a clear description, and an output schema present, the tool definition is fairly complete. The description doesn't detail return values, but the output schema covers that. Could mention the data source or reliability briefly, but overall sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has 0 parameters and schema description coverage is 100%, so no additional parameter meaning is needed. The description does not need to compensate, earning a baseline of 4 due to schema coverage, but since there are no parameters, a 3 is adequate as there is nothing to add.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists near-Earth objects for today, which is specific and distinct from sibling tools like 'iss_passes' or 'nasa_apod'. However, it doesn't differentiate from tools like 'object_lookup' or 'first_skies' which could overlap in purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for today's NEO data, but there are no explicit guidelines on when to use this vs alternatives like 'object_lookup' (which may cover historical or broader objects). No when-not-to-use or prerequisite info.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
nights_networkNights NetworkARead-onlyIdempotentInspect
Public Sentinel night reports. Currently empty — says so honestly.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| live | No | |
| page | No | |
| honest | No | |
| citations | Yes | |
| provenance | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and idempotentHint=true, covering the safety profile. The description adds that the tool is 'currently empty', which is a behavioral state beyond the annotations. It does not contradict any annotation. However, it does not disclose other traits like return format or pagination, which would be useful given the output schema exists.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is front-loaded with the purpose and ends with a candid note about emptiness. Every word serves a purpose, with no redundancy. It is highly concise for a zero-parameter tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (no parameters, annotations covering safety, output schema exists), the description is reasonably complete. It states the resource and current state. However, it could be improved by briefly describing what the reports contain when not empty, to better inform the agent about expected data.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With zero parameters, the baseline is 4 per instructions. The input schema has 100% coverage (trivially, since no params). The description does not need to add parameter meaning, and it correctly avoids irrelevant details. No enhancement needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Public Sentinel night reports' clearly identifies the resource as a collection of night reports from Sentinel, implying a read operation. It distinguishes from sibling tools like 'aurora' or 'tonight_sky' by specifying the data source. The honesty about being empty adds context. However, it lacks a verb like 'get' or 'list', which would make it slightly more explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. Given the sibling tools (e.g., 'observation_conditions', 'tonight_sky'), there is no differentiation or use case context. The 'currently empty' note is a factual state, not usage advice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
object_lookupObject LookupBRead-onlyIdempotentInspect
Quick Messier/deep-sky hint. q is required (M31, M42, M45…). No silent default.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| id | No | |
| known | No | |
| object | No | |
| unknown | No | |
| citations | Yes | |
| provenance | Yes | |
| first_skies | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds 'No silent default', which is a useful behavioral trait beyond annotations (ensuring the agent must supply a query). However, it does not disclose other behaviors like error handling, rate limits, or output nature, though the return format is presumably covered by the output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: two sentences, no wasted words. The first sentence front-loads the purpose, and the second provides the key input requirement. It could be slightly more informative about the return format without sacrificing brevity, but overall it is well-structured for a simple tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter, no nested objects) and the presence of an output schema (which covers return values per the guidelines), the description is minimally adequate. It explains the input requirement and gives examples. However, it lacks details on the output content (e.g., what a 'hint' includes) and error cases, which could affect an agent's ability to fully understand the tool's capabilities.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage for the sole parameter 'q'. The description compensates by providing example values (M31, M42, M45) and stating it is required. This adds meaning beyond the bare schema, showing the expected format (Messier catalog designations). However, it does not explain whether other deep-sky object IDs (e.g., NGC) are accepted, leaving some ambiguity.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Quick Messier/deep-sky hint' clearly states the tool's purpose: looking up quick information about Messier objects and deep-sky objects. It implies a verb (lookup/hint) and a specific resource category. However, it does not fully differentiate from sibling tools like 'identify' or 'nights_network', which might also involve object lookup, but the scope is narrowed to Messier/deep-sky.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides input format guidance ('q is required (M31, M42, M45…)') but no explicit direction on when to use this tool versus alternatives. It lacks context about alternative tools for similar tasks, such as 'identify' for unknown objects or 'nights_network' for broader sky info. The agent receives no 'when-not-to-use' or exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
observation_conditionsObservation ConditionsARead-onlyIdempotentInspect
Night/moon/solar observing-conditions score. NOT a UFO-appearance probability.
| Name | Required | Description | Default |
|---|---|---|---|
| lat | Yes | Latitude WGS84 | |
| lng | No | Longitude WGS84. lon and lng are aliases — provide either. | |
| lon | No | Longitude WGS84. lon and lng are aliases — provide either. | |
| lang | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| citations | Yes | |
| provenance | Yes | |
| interpretation | No | |
| not_ufo_probability | No | |
| observation_conditions_score | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and openWorldHint. The description adds the context that the tool computes a score for night/moon/solar conditions, which is valuable but does not disclose return format, range, or any other behavioral traits. It does not contradict 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no wasted words. The first sentence front-loads the core purpose, and the second sentence provides a crucial negative clarification. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having annotations, a high schema coverage, and an output schema, the description is very brief. It does not explain the score's range, interpretation, or any caveats about location or time. For a score-computing tool with many sibling tools, this leaves ambiguity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 75% with lat, lng, lon, and lang all described. The tool description adds no additional parameter-level meaning; it only provides overall context. Given the high schema coverage, a baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool evaluates observing conditions (night, moon, solar) and explicitly distinguishes it from a UFO-appearance probability. This verb+resource framing is specific and differentiates from sibling tools like 'aurora', 'solar', and 'nights_network'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives a negative usage hint (NOT a UFO-appearance probability) but provides no explicit guidance on when to use this tool versus alternatives like 'aurora' or 'tonight_sky'. Usage is implied rather than directed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
proposer_signalementProposer SignalementBRead-onlyIdempotentInspect
Prepare un brouillon de signalement d'observation (consentement obligatoire, jamais une detection). Etape 1 de 2.
| Name | Required | Description | Default |
|---|---|---|---|
| lat | No | ||
| lon | No | ||
| No | Email du temoin (optionnel, pour suite). | ||
| prenom | No | ||
| consent | Yes | Accord explicite du temoin (true requis). | |
| date_heure | No | Date/heure ISO approximative. | |
| description | Yes | Description factuelle de l'observation (sans qualification de l'objet). |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint/idempotentHint/destructiveHint=false, so safety is covered. The description usefully adds that this produces only a draft and is never an automated detection, plus that consent is mandatory, but does not explain whether the draft is persisted or how step 2 consumes it.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short clauses, front-loaded with the core action and the critical consent constraint. No filler, though the parenthetical is slightly dense.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists so return values needn't be described, and the two-step framing is present. However, for a 7-parameter workflow tool the description leaves the draft lifecycle and the handoff to step 2 unexplained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 57%, and the description adds no meaning for lat, lon, prenom, or date_heure beyond what the schema already carries. It only reinforces the required consent flag, leaving the other parameters undocumented in prose.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: it prepares a draft ('prepare un brouillon') of an observation report ('signalement d'observation'). The 'Etape 1 de 2' phrase implicitly positions it as the first step of a workflow, though it doesn't name the sibling (e.g., confirmer_action) that completes step 2.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives one clear constraint ('consentement obligatoire, jamais une detection') and signals a two-step workflow, but never states when to choose this over siblings or what happens after the draft. Usage is implied rather than spelled out.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
solarSolarARead-onlyIdempotentInspect
Live solar/CME context plus current Kp from Vigi-Sky APIs.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| cme | No | |
| aurora_kp | No | |
| citations | Yes | |
| provenance | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint: true, openWorldHint: true, idempotentHint: true, and destructiveHint: false. The description adds that the data comes from 'Vigi-Sky APIs' (external dependency) and that it is 'Live' (real-time), which is useful context beyond annotations. However, it does not disclose rate limits, data freshness guarantees, or any specific behavior of the API calls.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single 12-word sentence that is front-loaded with the core purpose ('Live solar/CME context') and provides the source ('from Vigi-Sky APIs'). Every word earns its place; there is no redundancy or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given zero parameters and an existing output schema (which presumably defines the return structure), the description is sufficient. It names the two main data categories (solar/CME context and Kp) and the source. It could be slightly more specific about what 'solar/CME context' includes (e.g., flares, CMEs), but the output schema likely covers that, so completeness is adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters (input schema is empty), so per the guidelines baseline is 4. The description adds meaning by explaining what the tool returns (solar/CME context and Kp), which compensates for the lack of parameters. The schema coverage is trivially 100% as there are none.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it provides 'Live solar/CME context plus current Kp', using a specific verb ('Live') and naming the specific resource (solar/CME context and Kp index). It distinguishes from siblings like 'aurora' (which likely focuses on aurora forecasts) and 'observation_conditions' (broader conditions) by focusing on solar activity and geomagnetic index.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives. Siblings include 'aurora' and 'observation_conditions', which might overlap, but the description does not provide any when-to-use or when-not-to-use advice. The agent is left to infer from the tool name and description alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
starlink_trainsStarlink TrainsBRead-onlyIdempotentInspect
Recently launched Starlink trains (count + launch id).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| trains | No | |
| citations | Yes | |
| how_to_see | No | |
| provenance | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true, and openWorldHint=true, which clearly indicate a safe, read-only, potentially stateful operation. The description adds that it returns 'count + launch id', which is useful output context. However, it does not explain behavior over time (e.g., whether trains are ephemeral) or data freshness. Given the strong annotations, this is adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that captures the essence of the tool. Every word is meaningful: 'recently launched' sets context, 'Starlink trains' identifies the resource, and 'count + launch id' specifies the data fields. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool (0 parameters, well-covered by annotations) and the presence of an output schema (which describes return format), the description is mostly complete for basic understanding. However, it does not clarify whether 'recently launched' refers to days or weeks, nor does it explain if the tool filters by the user's location. With sibling tools like 'first_skies' and 'nights_network', the agent might benefit from more context on how this relates to actual visibility.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has 0 parameters and schema description coverage is 100%, so the description does not need to add parameter details. It mentions the specific data returned (count and launch id), which adds value beyond the schema of empty properties. This is a clear and helpful addition.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the verb 'launched' and specifies the resource 'Starlink trains', indicating a listing of recent Starlink train sightings. It mentions two data points (count and launch id) which clarifies the output. It does not explicitly differentiate from sibling tools like 'aurora' or 'iss_passes', but the resource name is distinctive enough.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 such as 'nights_network' or 'iss_passes'. There is no mention of prerequisites, frequency of updates, or typical use cases. The context signals show 0 parameters, so the tool is simple, but the agent would benefit from knowing that this is for recently launched trains specifically.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
statusÉtat publicARead-onlyIdempotentInspect
Vigi-Sky API health, Hatch archive size, public observation counts.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| citations | Yes | |
| provenance | Yes | |
| mcp_version | No | |
| availability | No | |
| public_consented_dossiers | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint, making the tool's safe, read-only, and non-destructive nature clear. The description adds context about the specific data (API health, archive size, observation counts) without contradicting annotations, but does not reveal additional behavioral traits (e.g., caching behavior, authentication requirements).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, using a single sentence with a list to convey all key outputs. Every word earns its place, and there is no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no parameters and an output schema exists, the description is sufficiently complete for a status/health endpoint. It covers the key data categories returned. The only minor gap is not mentioning that the output schema fully describes the structure, but the context signal already notes it has an output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters and schema description coverage is 100%, so the description does not need to explain parameters. The description adds meaning by listing the types of data returned, which is helpful beyond the empty schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool provides Vigi-Sky API health, Hatch archive size, and public observation counts. It references a specific resource (the Vigi-Sky API and related stats) and uses a clear verb ("health, ... size, ... counts"), though it does not explicitly distinguish it from sibling tools like 'capabilities'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description lists what data the tool returns, but provides no guidance on when to use this tool over alternatives, such as 'capabilities' or 'hatch_stats'. It implies usage for checking system status and counts, but lacks explicit when/when-not or alternative references.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
statut_actionsStatut ActionsBRead-onlyIdempotentInspect
Compteurs des ecritures preparees (aucune donnee personnelle).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, non-destructive and openWorldHint=false, so the safety profile is fully covered. The description adds one genuinely new behavioral fact — that no personal data is exposed — which matters for a status/count tool, but says nothing about freshness, scope, or when counters update.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence that names the output (counters) first and then qualifies the data-handling constraint. It is efficient, though arguably too terse to be self-sufficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return-value shape need not be explained. However, for a no-param status tool the description should still orient the agent on what domain of 'prepared entries' is being counted and when to reach for it, which it does not.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is nothing for the description to disambiguate; the baseline for a no-parameter tool applies. Schema description coverage is 100% and no parameter semantics are needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the tool returns counters of 'prepared entries', which is a concrete output type, but the resource being counted ('ecritures preparees') is ambiguous and the sibling 'status' is not differentiated. An agent cannot confidently tell what domain these counters cover or how this differs from 'status'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisite, and no mention of the adjacent siblings ('status', 'annuler_action', 'confirmer_action') that an agent might otherwise pick. The agent is left to infer the trigger condition entirely.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tonight_skyCiel de ce soirBRead-onlyIdempotentInspect
Kp + next potentially visible satellite pass + First Skies asterisms. Default night_only=true (no daylight ISS).
| Name | Required | Description | Default |
|---|---|---|---|
| lat | Yes | Latitude WGS84 | |
| lng | No | Longitude WGS84. lon and lng are aliases — provide either. | |
| lon | No | Longitude WGS84. lon and lng are aliases — provide either. | |
| lang | No | ||
| night_only | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| citations | Yes | |
| next_pass | No | |
| night_only | No | |
| provenance | Yes | |
| not_a_ufo_forecast | No | |
| observer_condition | No | |
| observer_sun_altitude | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, idempotentHint as true, and destructiveHint as false, making the safe, non-destructive nature clear. The only behavioral addition in the description is the default 'night_only=true' setting, which is useful but minor. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long, very concise, and front-loads the main outputs. However, the second sentence about night_only could be integrated more smoothly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has a moderate parameter count (5) with an output schema, and annotations are fairly complete. The description covers core outputs but omits details on how to interpret Kp values, what 'next potentially visible satellite pass' means, and format of asterisms. With an output schema existing, return structure explanation is not needed, but usage context is still sparse.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already defines all five parameters with descriptions, achieving 60% coverage. The description only mentions 'night_only' explicitly (its default), adding no detail on lat, lng/lon aliasing, or lang. It does not compensate for the 40% of schema parameters lacking descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description lists specific outputs: 'Kp + next potentially visible satellite pass + First Skies asterisms', clearly naming the key resources returned. It also mentions the default night_only parameter, adding useful scope. However, it does not differentiate from sibling tools like 'aurora', 'iss_passes', or 'first_skies', which may overlap.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 does not mention any prerequisites, typical use cases, or when not to use it. With many sibling tools covering related astronomical topics, this is a significant gap.
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.
4 tool updates
- Added
annuler_action - Added
confirmer_action - Added
proposer_signalement - Added
statut_actions
20 tool updates
- Changed
aurora1 field changed- added
Output schema / requiredAdded value: +[ + "citations", + "provenance" +]
- Changed
capabilities5 fields changed- removed
Output schema / properties / doctrineRemoved value: -{ - "type": "string" -} - added
Output schema / properties / local_serverAdded value: +{ + "type": "object" +} - added
Output schema / properties / provenance / properties / neverAdded value: +{ + "type": "string" +} - added
Output schema / properties / this_serverAdded value: +{ + "type": "object" +} - added
Output schema / requiredAdded value: +[ + "citations", + "provenance" +]
- Changed
cite7 fields changed- added
Output schema / properties / alternativesAdded value: +{ + "type": "array" +} - added
Output schema / properties / bestAdded value: +{ + "type": "object" +} - removed
Output schema / properties / doctrineRemoved value: -{ - "type": "string" -} - added
Output schema / properties / langAdded value: +{ + "type": "string" +} - added
Output schema / properties / provenance / properties / neverAdded value: +{ + "type": "string" +} - added
Output schema / properties / queryAdded value: +{ + "type": "string" +} - added
Output schema / requiredAdded value: +[ + "citations", + "provenance" +]
- Changed
doctrine6 fields changed- removed
Output schema / properties / doctrineRemoved value: -{ - "type": "string" -} - added
Output schema / properties / entityAdded value: +{ + "type": "object" +} - added
Output schema / properties / provenance / properties / neverAdded value: +{ + "type": "string" +} - added
Output schema / properties / public_consented_dossiersAdded value: +{ + "type": "integer" +} - added
Output schema / properties / summaryAdded value: +{ + "type": "string" +} - added
Output schema / requiredAdded value: +[ + "citations", + "provenance" +]
- Changed
first_skies1 field changed- added
Output schema / requiredAdded value: +[ + "citations", + "provenance" +]
- Changed
hatch_search12 fields changed- added
Input schema / anyOfAdded value: +[ + { + "required": [ + "lon" + ] + }, + { + "required": [ + "lng" + ] + } +] - added
Input schema / properties / lon / maximumAdded value: +180 - added
Input schema / properties / lon / minimumAdded value: +-180 - added
Input schema / properties / radius_km / maximumAdded value: +20000 - changed
Input schema / requiredPrevious value: -[ - "lat", - "lon" -]New value: +[ + "lat" +] - added
Output schema / properties / casesAdded value: +{ + "type": "array" +} - removed
Output schema / properties / doctrineRemoved value: -{ - "type": "string" -} - added
Output schema / properties / filterAdded value: +{ + "type": "object" +} - added
Output schema / properties / limitAdded value: +{ + "type": "string" +} - added
Output schema / properties / nAdded value: +{ + "type": "integer" +} - added
Output schema / properties / provenance / properties / neverAdded value: +{ + "type": "string" +} - added
Output schema / requiredAdded value: +[ + "citations", + "provenance" +]
- Changed
hatch_stats7 fields changed- added
Output schema / properties / archiveAdded value: +{ + "type": "string" +} - added
Output schema / properties / by_decade_1900_2002Added value: +{ + "type": "object" +} - removed
Output schema / properties / doctrineRemoved value: -{ - "type": "string" -} - added
Output schema / properties / nAdded value: +{ + "type": [ + "integer", + "null" + ] +} - added
Output schema / properties / provenance / properties / neverAdded value: +{ + "type": "string" +} - added
Output schema / properties / top_countriesAdded value: +{ + "type": "object" +} - added
Output schema / requiredAdded value: +[ + "citations", + "provenance" +]
- Changed
hypothesis_rank1 field changed- added
Output schema / requiredAdded value: +[ + "citations", + "provenance" +]
- Changed
identify1 field changed- added
Output schema / requiredAdded value: +[ + "citations", + "provenance" +]
- Changed
iss_passes1 field changed- added
Output schema / requiredAdded value: +[ + "citations", + "provenance" +]
- Changed
nasa_apod1 field changed- added
Output schema / requiredAdded value: +[ + "citations", + "provenance" +]
- Changed
nearby_cases8 fields changed- added
Output schema / properties / archiveAdded value: +{ + "type": "object" +} - added
Output schema / properties / casesAdded value: +{ + "type": "array" +} - removed
Output schema / properties / doctrineRemoved value: -{ - "type": "string" -} - added
Output schema / properties / not_vigisky_liveAdded value: +{ + "type": "boolean" +} - added
Output schema / properties / provenance / properties / neverAdded value: +{ + "type": "string" +} - added
Output schema / properties / queryAdded value: +{ + "type": "object" +} - added
Output schema / properties / returnedAdded value: +{ + "type": "integer" +} - added
Output schema / requiredAdded value: +[ + "citations", + "provenance" +]
- Changed
neo_watch5 fields changed- removed
Output schema / properties / doctrineRemoved value: -{ - "type": "string" -} - added
Output schema / properties / neoAdded value: +{ + "type": "object" +} - added
Output schema / properties / noteAdded value: +{ + "type": "string" +} - added
Output schema / properties / provenance / properties / neverAdded value: +{ + "type": "string" +} - added
Output schema / requiredAdded value: +[ + "citations", + "provenance" +]
- Changed
nights_network6 fields changed- removed
Output schema / properties / doctrineRemoved value: -{ - "type": "string" -} - added
Output schema / properties / honestAdded value: +{ + "type": "string" +} - added
Output schema / properties / liveAdded value: +{ + "type": "object" +} - added
Output schema / properties / pageAdded value: +{ + "type": "string" +} - added
Output schema / properties / provenance / properties / neverAdded value: +{ + "type": "string" +} - added
Output schema / requiredAdded value: +[ + "citations", + "provenance" +]
- Changed
object_lookup8 fields changed- removed
Output schema / properties / doctrineRemoved value: -{ - "type": "string" -} - added
Output schema / properties / first_skiesAdded value: +{ + "type": "array" +} - added
Output schema / properties / idAdded value: +{ + "type": "string" +} - added
Output schema / properties / knownAdded value: +{ + "type": "array" +} - added
Output schema / properties / objectAdded value: +{ + "type": "object" +} - added
Output schema / properties / provenance / properties / neverAdded value: +{ + "type": "string" +} - added
Output schema / properties / unknownAdded value: +{ + "type": "string" +} - added
Output schema / requiredAdded value: +[ + "citations", + "provenance" +]
- Changed
observation_conditions6 fields changed- removed
Output schema / properties / doctrineRemoved value: -{ - "type": "string" -} - added
Output schema / properties / interpretationAdded value: +{ + "type": "string" +} - added
Output schema / properties / not_ufo_probabilityAdded value: +{ + "type": "boolean" +} - added
Output schema / properties / observation_conditions_scoreAdded value: +{ + "type": [ + "number", + "null" + ] +} - added
Output schema / properties / provenance / properties / neverAdded value: +{ + "type": "string" +} - added
Output schema / requiredAdded value: +[ + "citations", + "provenance" +]
- Changed
solar5 fields changed- added
Output schema / properties / aurora_kpAdded value: +{ + "type": "object" +} - added
Output schema / properties / cmeAdded value: +{ + "type": "object" +} - removed
Output schema / properties / doctrineRemoved value: -{ - "type": "string" -} - added
Output schema / properties / provenance / properties / neverAdded value: +{ + "type": "string" +} - added
Output schema / requiredAdded value: +[ + "citations", + "provenance" +]
- Changed
starlink_trains5 fields changed- removed
Output schema / properties / doctrineRemoved value: -{ - "type": "string" -} - added
Output schema / properties / how_to_seeAdded value: +{ + "type": "string" +} - added
Output schema / properties / provenance / properties / neverAdded value: +{ + "type": "string" +} - added
Output schema / properties / trainsAdded value: +{ + "type": "array" +} - added
Output schema / requiredAdded value: +[ + "citations", + "provenance" +]
- Changed
status1 field changed- added
Output schema / requiredAdded value: +[ + "citations", + "provenance" +]
- Changed
tonight_sky1 field changed- added
Output schema / requiredAdded value: +[ + "citations", + "provenance" +]
20 tool updates
- First observed
aurora - First observed
capabilities - First observed
cite - First observed
doctrine - First observed
first_skies - First observed
hatch_search - First observed
hatch_stats - First observed
hypothesis_rank - First observed
identify - First observed
iss_passes - First observed
nasa_apod - First observed
nearby_cases - First observed
neo_watch - First observed
nights_network - First observed
object_lookup - First observed
observation_conditions - First observed
solar - First observed
starlink_trains - First observed
status - First observed
tonight_sky
Related MCP Connectors
Observational astronomy in one place
Live space data for AI agents - rocket launches, ISS passes, launch news. Free, no auth.
Live stargazing forecasts: per-night sky scores, dark-sky sites, aurora & light pollution anywhere.
Swedish space & astronomy: ISS passes, aurora forecasts, space weather, rocket launches, moon.
Related MCP Servers
- AlicenseAqualityBmaintenanceAccurate astronomical catalog data and observing session planner for LLM assistants. Stops hallucinated magnitudes, coordinates, and visibility.338 npm3MIT
- AlicenseNot gradedqualityDmaintenanceProvides astronomical data including ISS tracking, moon phases, NASA APOD, near-Earth objects, exoplanets, space weather, and upcoming celestial events without requiring an API key.MIT
- AlicenseBqualityCmaintenanceEnables AI agents to query verifiable physical-world ground truth for any point on Earth — water availability, seismic and space-weather hazard, ground stability, and resource indications — with every answer backed by a Bitcoin-anchored provenance record that can be independently verified. It also lets agents check whether an Earth-science hypothesis has already been tested, list documented nulls and retractions, and run bounded controlled tests that return UNTESTABLE rather than fabricate a result.11Academic Free v1.1
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to pull the Astronomy Picture of the Day, near-Earth asteroid close approaches, Mars rover imagery, and image-library media, plus space-weather events such as solar flares, coronal mass ejections, geomagnetic storms and solar energetic particles. Also surfaces forecaster alerts, watches, warnings and weekly summaries for space-weather situational awareness.364 npmMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.