mrd

Spacecraft component specs from vendor datasheets: search, digests, facts, gaps, budgets, bus design

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
98%
Integridad del esquema
92%
Calidad de los nombres
91%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~5,273Tokens (definiciones de herramientas)
~3.2 KBTamaño de respuesta típico
Impacto significativo en la atención (4.12% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "mrd": {
      "command": "npx",
      "args": [
        "@newspacemarket/mrd-mcp"
      ]
    }
  }
}

Paquetes ejecutables

npm@newspacemarket/mrd-mcp1.2.0stdio

Puntos de conexión remotos

https://newspacemarket.com/mrd-connect/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (13)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢explain_properties(category, subtype)

What every property of a product category means: definition, how it is measured and what goes into the measurement condition, how to use it when selecting, what it is commonly confused with, typical range and related properties. Call this before interpreting specs of an unfamiliar category.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "category": {
      "type": "string",
      "description": "category slug, e.g. reaction-wheels, deployers, thermal"
    },
    "subtype": {
      "type": "string",
      "description": "optional subtype slug, e.g. cmg, heatpipe, sequencer"
    }
  },
  "required": [
    "category"
  ]
}
🟢match_components(category, momentum_min, torque_min, clock_min, ram_min, ...)

Reverse search over a typed spec layer: pass a category and engineering requirements, get every catalogued item grouped as A (meets all stated requirements), B (fails a named requirement, both figures quoted) or C (could fit, data missing). Verdicts cite the datasheet page. Omit parameters you do not care about. Categories: reaction-wheels, star-trackers, obc-computers, batteries, radios, solar-panels, propulsion, sun-sensors, magnetometers, magnetorquers, imus-gyros, gnss-receivers, eps, deployers, thermal, antennas, sdr-modems, cameras, structures, platforms, ground-stations, sadm, tanks-valves, separation-systems, pointing-mechanisms. The answer is compact: group A in full (up to 25), groups B and C — the first 10 with the reason, plus counts and the fields most often unpublished in C; page with group and offset.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "category": {
      "type": "string",
      "enum": [
        "reaction-wheels",
        "star-trackers",
        "obc-computers",
        "batteries",
        "radios",
        "solar-panels",
        "propulsion",
        "sun-sensors",
        "magnetometers",
        "magnetorquers",
        "imus-gyros",
        "gnss-receivers",
        "eps",
        "deployers",
        "thermal",
        "antennas",
        "sdr-modems",
        "cameras",
        "structures",
        "platforms",
        "ground-stations",
        "sadm",
        "tanks-valves",
        "separation-systems",
        "pointing-mechanisms"
      ],
      "description": "which component class to search — ONE per call; for several classes call once per class (default reaction-wheels)"
    },
    "momentum_min": {
      "type": "number",
      "description": "wheels: min angular momentum storage, N*m*s"
    },
    "torque_min": {
      "type": "number",
      "description": "wheels: min torque, mN*m"
    },
    "clock_min": {
      "type": "number",
      "description": "OBC: min CPU clock, MHz"
    },
    "ram_min": {
      "type": "number",
      "description": "OBC: min RAM, MB"
    },
    "storage_min": {
      "type": "number",
      "description": "OBC: min storage, GB"
    },
    "capacity_min_wh": {
      "type": "number",
      "description": "battery: min capacity, Wh"
    },
    "cycles_min": {
      "type": "number",
      "description": "battery: min cycle life"
    },
    "band": {
      "type": "string",
      "description": "radio: frequency band UHF|VHF|S|X|L|C|Ku|Ka"
    },
    "rate_min_kbps": {
      "type": "number",
      "description": "radio: min data rate, kbps"
    },
    "txpow_min_w": {
      "type": "number",
      "description": "radio: min TX RF power, W"
    },
    "panel_power_min_w": {
      "type": "number",
      "description": "solar panel: min BOL output, W"
    },
    "thrust_min_mn": {
      "type": "number",
      "description": "propulsion: min thrust, mN"
    },
    "isp_min_s": {
      "type": "number",
      "description": "propulsion: min specific impulse, s"
    },
    "impulse_min_ns": {
      "type": "number",
      "description": "propulsion: min total impulse, N*s"
    },
    "prop_type": {
      "type": "string",
      "description": "propulsion: electric | chemical | cold-gas | water; platforms: electric | chemical | any (the bus carries propulsion)"
    },
    "sunacc_max": {
      "type": "number",
      "description": "sun sensor: worst acceptable accuracy, deg"
    },
    "range_min_ut": {
      "type": "number",
      "description": "magnetometer: min field range, uT"
    },
    "mag_res_max": {
      "type": "number",
      "description": "magnetometer: worst resolution, nT"
    },
    "dipole_min_am2": {
      "type": "number",
      "description": "magnetorquer: min dipole moment, A*m2"
    },
    "gyro_range_min_dps": {
      "type": "number",
      "description": "IMU: min gyro range, deg/s"
    },
    "bias_max_degh": {
      "type": "number",
      "description": "IMU: worst bias instability, deg/h"
    },
    "arw_max": {
      "type": "number",
      "description": "IMU: worst angle random walk, deg per sqrt hour"
    },
    "pos_acc_max": {
      "type": "number",
      "description": "GNSS: worst position accuracy, m"
    },
    "ttff_max": {
      "type": "number",
      "description": "GNSS: worst cold TTFF, s"
    },
    "channels_min": {
      "type": "number",
      "description": "GNSS: min channels"
    },
    "constellation": {
      "type": "string",
      "description": "GNSS: required constellation GPS|Galileo|GLONASS|BeiDou"
    },
    "outpow_min_w": {
      "type": "number",
      "description": "EPS: min total output power, W"
    },
    "capacity_min_u": {
      "type": "number",
      "description": "deployer: min capacity, U (your satellite size)"
    },
    "paymass_min_g": {
      "type": "number",
      "description": "platforms / deployers / separation systems: payload or satellite mass that must fit, grams"
    },
    "conductance_min_wk": {
      "type": "number",
      "description": "thermal strap: min conductance, W/K"
    },
    "gain_min_dbi": {
      "type": "number",
      "description": "antenna: min gain, dBi"
    },
    "beam_max_deg": {
      "type": "number",
      "description": "antenna: max beamwidth, deg"
    },
    "polarization": {
      "type": "string",
      "description": "antenna: RHCP|LHCP|linear|circular"
    },
    "gsd_max_m": {
      "type": "number",
      "description": "camera: worst ground sample distance, m"
    },
    "swath_min_km": {
      "type": "number",
      "description": "camera: min swath width, km"
    },
    "mpx_min": {
      "type": "number",
      "description": "camera: min sensor resolution, Mpx"
    },
    "bands_min": {
      "type": "number",
      "description": "camera: min spectral bands"
    },
    "form_u": {
      "type": "number",
      "description": "structures / platforms: CubeSat size, U (exact match)"
    },
    "material": {
      "type": "string",
      "description": "structure: alloy, e.g. Al 7075"
    },
    "dish_min_m": {
      "type": "number",
      "description": "ground station: min antenna diameter, m"
    },
    "gt_min_dbk": {
      "type": "number",
      "description": "ground station: min G/T, dB/K"
    },
    "eirp_min_dbw": {
      "type": "number",
      "description": "ground station: min EIRP, dBW"
    },
    "slip_min_ch": {
      "type": "number",
      "description": "SADM: min slip-ring channels"
    },
    "ptrans_min_w": {
      "type": "number",
      "description": "SADM: min power transfer, W"
    },
    "volume_min_l": {
      "type": "number",
      "description": "tank/valve: min volume, L"
    },
    "meop_min_bar": {
      "type": "number",
      "description": "tank/valve: min operating pressure, bar"
    },
    "media": {
      "type": "string",
      "description": "tank/valve: propellant/media, e.g. xenon, hydrazine"
    },
    "preload_min_kn": {
      "type": "number",
      "description": "separation: min preload/holding force, kN"
    },
    "reltime_max_ms": {
      "type": "number",
      "description": "separation: max release time, ms"
    },
    "shock_max_g": {
      "type": "number",
      "description": "separation: max release shock, g"
    },
    "range_min_deg": {
      "type": "number",
      "description": "pointing: min travel range, deg"
    },
    "res_max_deg": {
      "type": "number",
      "description": "pointing: max angular resolution, deg"
    },
    "tid_min": {
      "type": "number",
      "description": "any category: min radiation tolerance TID, krad"
    },
    "accuracy_max": {
      "type": "number",
      "description": "star trackers: worst acceptable cross-boresight accuracy, arcsec"
    },
    "update_min": {
      "type": "number",
      "description": "star trackers: min update rate, Hz"
    },
    "sun_excl_max": {
      "type": "number",
      "description": "star trackers: max acceptable sun exclusion angle, deg"
    },
    "acq_max": {
      "type": "number",
      "description": "star trackers: max lost-in-space acquisition time, s"
    },
    "mass_max": {
      "type": "number",
      "description": "max unit mass, grams"
    },
    "mass_min": {
      "type": "number",
      "description": "min unit mass, grams (rare: \"heavier than\")"
    },
    "capacity_max_wh": {
      "type": "number",
      "description": "batteries: max capacity, Wh"
    },
    "fov_min_deg": {
      "type": "number",
      "description": "sun sensors / star trackers / cameras: min field of view, deg"
    },
    "thrust_max_mn": {
      "type": "number",
      "description": "propulsion: max thrust, mN"
    },
    "paypower_min_w": {
      "type": "number",
      "description": "platforms: min orbit-average power available to the payload, W"
    },
    "buspower_min_w": {
      "type": "number",
      "description": "platforms: min orbit-average power generation, W"
    },
    "payvol_min_u": {
      "type": "number",
      "description": "platforms: min volume for the payload, U"
    },
    "payvol_min_l": {
      "type": "number",
      "description": "platforms: min volume for the payload, litres"
    },
    "battery_min_wh": {
      "type": "number",
      "description": "platforms: min battery capacity, Wh"
    },
    "pointacc_max_deg": {
      "type": "number",
      "description": "platforms / pointing mechanisms / ground stations: worst acceptable pointing accuracy, deg (30 arcsec = 0.0083)"
    },
    "dv_min_ms": {
      "type": "number",
      "description": "platforms / propulsion: min delta-v, m/s"
    },
    "life_min_y": {
      "type": "number",
      "description": "any category: min design life in orbit, years"
    },
    "orbit": {
      "type": "string",
      "description": "platforms: orbit the bus is designed for — LEO | SSO | VLEO | MEO | GEO | HEO | lunar | deep space (LEO, SSO and VLEO pass each other)"
    },
    "link_band": {
      "type": "string",
      "description": "platforms: radio band of the bus — UHF | VHF | L | S | X | Ku | Ka | optical"
    },
    "power_max": {
      "type": "number",
      "description": "max steady-state power, W (peak/regenerative not counted)"
    },
    "bus_v": {
      "type": "number",
      "description": "your power bus voltage, V — the unit must accept it"
    },
    "lead_max": {
      "type": "number",
      "description": "max lead time, months"
    },
    "data_if": {
      "type": "string",
      "description": "required data interface: CAN, RS-422, RS-485, SpaceWire, I2C, SPI, UART, MIL-STD-1553"
    },
    "price_max_eur": {
      "type": "number",
      "description": "max indicative price, EUR (few vendors publish it — expect group C)"
    },
    "export": {
      "type": "string",
      "description": "required export status: ITAR-free | EAR99 | ITAR"
    },
    "limit": {
      "type": "integer",
      "description": "items of groups B and C to return (default 10, max 50); group A comes in full up to 25"
    },
    "group": {
      "type": "string",
      "enum": [
        "A",
        "B",
        "C"
      ],
      "description": "page through one group only — use with offset from paging.next"
    },
    "offset": {
      "type": "integer",
      "description": "start position inside the group (paging.next.offset of the previous answer)"
    },
    "flight_proven": {
      "type": "boolean",
      "description": "any category: true = only products with stated flight heritage (missions flown, heritage text or TRL 9)"
    }
  }
}
🟢selection_guide(category)

How to choose a product of one category, from the catalogue data only: the decisive parameters with real ranges (middle half and full range), which side is better, how many products publish each, what to ask the vendor, and ready match queries. category = "cubesat" gives the list of subsystems a CubeSat is built from with catalogue counts.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "category": {
      "type": "string",
      "description": "component class (reaction-wheels, star-trackers, platforms, antennas…) or \"cubesat\""
    }
  },
  "required": [
    "category"
  ]
}
🟢find_suppliers(category, country, orbit, prop_type, flight_proven, ...)

Companies whose PRODUCTS meet engineering requirements in one category — "who makes platforms for GEO", "Chinese companies making star trackers better than 10 arcsec", "suppliers of flight-proven reaction wheels". Pass category, optional country and any requirement parameter of match_components (same names and units). Returns companies with their matching products, and how many more companies may fit because the decisive value is not published.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "category": {
      "type": "string",
      "description": "component class, e.g. platforms, star-trackers, reaction-wheels (see match_components)"
    },
    "country": {
      "type": "string",
      "description": "English country or region (China, Germany, Europe)"
    },
    "orbit": {
      "type": "string",
      "description": "platforms: LEO | SSO | MEO | GEO | lunar"
    },
    "prop_type": {
      "type": "string",
      "description": "platforms: electric | chemical | any; propulsion: electric | chemical | cold-gas | water"
    },
    "flight_proven": {
      "type": "boolean",
      "description": "only flight-proven products"
    },
    "paymass_min_g": {
      "type": "number",
      "description": "platforms: payload mass that must fit, g"
    },
    "paypower_min_w": {
      "type": "number",
      "description": "platforms: orbit-average power for the payload, W"
    },
    "accuracy_max": {
      "type": "number",
      "description": "star trackers: cross-boresight accuracy, arcsec"
    },
    "momentum_min": {
      "type": "number",
      "description": "reaction wheels: momentum, N·m·s"
    },
    "mass_max": {
      "type": "number",
      "description": "max unit mass, g"
    },
    "bus_v": {
      "type": "number",
      "description": "bus voltage the unit must accept, V"
    },
    "data_if": {
      "type": "string",
      "description": "data interface: CAN, RS-422, SpaceWire…"
    },
    "export": {
      "type": "string",
      "description": "ITAR-free | EAR99 | ITAR"
    }
  },
  "required": [
    "category"
  ],
  "additionalProperties": true
}
🟢build_budget(items, bus_v)

Engineering budget for a component stack: pass product ids (from the other tools) and your bus voltage, get total mass, total steady-state power, per-item data interfaces, voltage-compatibility verdicts and an honest list of what could NOT be counted because the vendor does not publish it. Use it to assemble and sanity-check a subsystem, e.g. 3-4 reaction wheels for an ADCS.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "id"
        ],
        "properties": {
          "id": {
            "type": "integer",
            "description": "product id"
          },
          "qty": {
            "type": "integer",
            "description": "quantity, default 1"
          }
        }
      },
      "description": "components of the stack"
    },
    "bus_v": {
      "type": "number",
      "description": "power bus voltage, V — each item is checked against its supply range"
    }
  },
  "required": [
    "items"
  ]
}
🟢get_component_specs(category, confidence, ids, keys, limit, ...)

The typed layer of a category, 10 products per call (page with offset, narrow with ids and keys) — every item with every value (number, canonical unit, bound, measurement condition, datasheet source page, confidence L0/L1) plus the property dictionary grouped by interface port (perf/power/data/mech/thermal/env/supply) — for arbitrary comparison, budgeting or trade studies on your side.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "category": {
      "type": "string",
      "enum": [
        "reaction-wheels",
        "star-trackers",
        "obc-computers",
        "batteries",
        "radios",
        "solar-panels",
        "propulsion",
        "sun-sensors",
        "magnetometers",
        "magnetorquers",
        "imus-gyros",
        "gnss-receivers",
        "eps",
        "deployers",
        "thermal",
        "antennas",
        "sdr-modems",
        "cameras",
        "structures",
        "platforms",
        "ground-stations",
        "sadm",
        "tanks-valves",
        "separation-systems",
        "pointing-mechanisms"
      ],
      "description": "component class — ONE per call; for several classes call once per class (default reaction-wheels)"
    },
    "confidence": {
      "type": "string",
      "enum": [
        "L1"
      ],
      "description": "pass L1 to get only human-verified rows"
    },
    "ids": {
      "type": "array",
      "items": {
        "type": "integer"
      },
      "description": "only these product ids (from match_components)"
    },
    "keys": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "only these properties (prop_key values from properties), e.g. [\"mass_g\",\"momentum_nms\"]"
    },
    "limit": {
      "type": "integer",
      "description": "products per call (default 10, max 60)"
    },
    "offset": {
      "type": "integer",
      "description": "continue from paging.next_offset"
    }
  }
}
🟢get_datasheet_digest(product_id, q)

Facts machine-read from a product datasheet, by section (identity, performance, electrical, interfaces, mechanical, thermal, environmental, qualification, lifetime, options, compliance, commercial). Each fact carries unit, condition, the page and a verbatim quote it was verified against (confidence L0) plus a link into the PDF. Use it for what the typed layer does not hold: connectors, protocols, survival temperature, vibration, radiation, heritage, options, export control, lead time. Pass product_id from match_components or a product name.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "product_id": {
      "type": "integer"
    },
    "q": {
      "type": "string",
      "description": "product name if no id"
    }
  }
}
🟢search_datasheet_facts(category, key, contains)

One fact key across a whole category: which products state it in their datasheets and what value — e.g. connector, data_interface, protocol, survival_temperature, tid_tolerance, flight_heritage, trl, export_control, lead_time, price, design_life. One row per product with page and quote. Reports coverage (how many products of the category have a digested datasheet).

Esquema de entrada

{
  "type": "object",
  "properties": {
    "category": {
      "type": "string",
      "enum": [
        "reaction-wheels",
        "star-trackers",
        "obc-computers",
        "batteries",
        "radios",
        "solar-panels",
        "propulsion",
        "sun-sensors",
        "magnetometers",
        "magnetorquers",
        "imus-gyros",
        "gnss-receivers",
        "eps",
        "deployers",
        "thermal",
        "antennas",
        "sdr-modems",
        "cameras",
        "structures",
        "platforms",
        "ground-stations",
        "sadm",
        "tanks-valves",
        "separation-systems",
        "pointing-mechanisms"
      ]
    },
    "key": {
      "type": "string"
    },
    "contains": {
      "type": "string",
      "description": "keep only values containing this text"
    }
  },
  "required": [
    "category",
    "key"
  ]
}
🟢ask_datasheet(product_id, q, category, term)

Ask a product datasheet a question and get the closest excerpts with page numbers (pre-indexed text), or scan ALL datasheets of a category for an exact term (term + category) and get the exact list of products mentioning it with an excerpt each.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "product_id": {
      "type": "integer"
    },
    "q": {
      "type": "string",
      "description": "question to one datasheet"
    },
    "category": {
      "type": "string",
      "enum": [
        "reaction-wheels",
        "star-trackers",
        "obc-computers",
        "batteries",
        "radios",
        "solar-panels",
        "propulsion",
        "sun-sensors",
        "magnetometers",
        "magnetorquers",
        "imus-gyros",
        "gnss-receivers",
        "eps",
        "deployers",
        "thermal",
        "antennas",
        "sdr-modems",
        "cameras",
        "structures",
        "platforms",
        "ground-stations",
        "sadm",
        "tanks-valves",
        "separation-systems",
        "pointing-mechanisms"
      ]
    },
    "term": {
      "type": "string",
      "description": "exact word/phrase for the category scan, e.g. SpaceWire, ITAR"
    }
  }
}
🟢design_stack(q, fixed)

Assemble a whole spacecraft bus from a plain-language task: the service plans the subsystems, matches every item deterministically against the stated requirements, computes the mass/power budget and writes an evidence-bound rationale. Pass fixed = product ids you have already chosen (from match_components or get_datasheet_digest): they stay in their subsystems, are checked against the requirements (selected.fixed, fixed_verdict, fixed_fails) and the rest is assembled around them. LLM-backed and rate-limited (6/min, 30/h anonymous).

Esquema de entrada

{
  "type": "object",
  "properties": {
    "q": {
      "type": "string",
      "description": "the task, e.g. \"6U CubeSat bus on 12 V with S-band radio and GNSS, star tracker better than 10 arcsec\""
    },
    "fixed": {
      "type": "array",
      "items": {
        "type": "integer"
      },
      "description": "product ids to keep (locked parts)"
    }
  },
  "required": [
    "q"
  ]
}
🟢find_data_gaps(product_id, company_id, category, status)

What is missing for a product, a company or a category and where to get it: in_digest (already read from the datasheet — value, page), in_datasheet_text (the datasheet mentions it — page, excerpt), not_in_datasheet (ask the vendor), no_datasheet (ask the vendor for a datasheet). For vendors: what to publish; for buyers: what to ask.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "product_id": {
      "type": "integer"
    },
    "company_id": {
      "type": "integer"
    },
    "category": {
      "type": "string",
      "enum": [
        "reaction-wheels",
        "star-trackers",
        "obc-computers",
        "batteries",
        "radios",
        "solar-panels",
        "propulsion",
        "sun-sensors",
        "magnetometers",
        "magnetorquers",
        "imus-gyros",
        "gnss-receivers",
        "eps",
        "deployers",
        "thermal",
        "antennas",
        "sdr-modems",
        "cameras",
        "structures",
        "platforms",
        "ground-stations",
        "sadm",
        "tanks-valves",
        "separation-systems",
        "pointing-mechanisms"
      ]
    },
    "status": {
      "type": "string",
      "enum": [
        "in_digest",
        "in_datasheet_text",
        "not_in_datasheet",
        "no_datasheet"
      ]
    }
  }
}
🟢ask_console(q)

Plain-language engineering question over the whole platform, answered by platform rules without any external model: selection by requirements, values of a property across a class, companies by capability and country, launch windows, term definitions. Returns a short answer plus data blocks (candidates A/B/C, values, companies, launches). Use when the question does not map cleanly onto one structured tool.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "q": {
      "type": "string",
      "description": "the question in English or Russian, e.g. \"star tracker better than 10 arcsec under 1 kg\", \"who makes batteries in Germany\", \"what is TRL\""
    }
  },
  "required": [
    "q"
  ]
}
🟢check_fit(items)

Check whether a set of products docks together, by the interface template of each product type: deployer and CubeSat structure form factor and satellite mass, separation system and spacecraft mass, solar panel size and EPS solar input (Voc/Vmp, power), battery and EPS, EPS output rails or the unregulated bus against each unit supply range, EPS charge current against the battery limit, satellite envelope against the deployer envelope for its form factor, on-board computer against unit data interfaces, board stack format, free volume, radio against antenna and ground station (frequency, band, connector, protocol and modulation), antenna against ground station polarization, GNSS receiver signals against the GNSS antenna band, magnetorquer coil current against the driver channel, PPU output power against the electric thruster, array drive against panel power, propulsion propellant against tank media, steady power budget. Verdicts fits / conflict / check / unknown, plus ask_vendor: exactly which values are missing to decide.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "id"
        ],
        "properties": {
          "id": {
            "type": "integer",
            "description": "product id"
          },
          "qty": {
            "type": "integer",
            "description": "quantity, default 1"
          }
        }
      },
      "description": "products of the spacecraft, deployer or ground segment (ids from match_components)"
    }
  },
  "required": [
    "items"
  ]
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada13 herramientas
verificadoversión no registrada10 herramientas