{"apiVersion":"v1","directorySlug":"ops-mcp-9a55a57130","title":"OpsRocket","description":"A bit-for-bit Rust reimplementation of the OpenRocket simulator core: 17/17 fixtures mass bit-exact, CP within 1 cm, −0.0% against a flown altimeter.","pageUrl":"https://www.mcpbundles.com/skills/ops-mcp-9a55a57130","connectPath":"importable","connectAction":"import_server","catalogListing":false,"bundleSlug":null,"listingKind":"remote_mcp","kind":"provider","transportUrl":"https://ops.sg/mcp","hostedMcpUrl":null,"toolCount":21,"toolInventoryStatus":"observed","refreshedAt":"2026-11-03T13:26:00.516172+00:00","registryName":"sg.ops/ops-mcp-9a55a57130","registryVersion":"2026.11.3","registryEligible":true,"tools":[{"name":"list_examples","description":"List the bundled example rockets (each carries an embedded OpenRocket reference for cross-validation).","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{}},"logicalName":"list_examples","displayName":"list_examples","title":"list_examples","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"capabilities","description":"Engine version, component kinds, allowed children, edit-op list, units.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{}},"logicalName":"capabilities","displayName":"capabilities","title":"capabilities","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"inspect","description":"Rocket overview: name, components tree, motor configs, simulations. detail:'full' includes full geometry.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"detail":{"enum":["summary","full"],"type":"string","default":"summary"},"example":{"type":"string"},"ork_b64":{"type":"string"},"ork_url":{"type":"string"}}},"logicalName":"inspect","displayName":"inspect","title":"inspect","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"stability","description":"Mass, CG, CP, stability margin (cal), Cd and its breakdown.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"example":{"type":"string"},"ork_b64":{"type":"string"},"ork_url":{"type":"string"}}},"logicalName":"stability","displayName":"stability","title":"stability","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"aero_analysis","description":"Per-component aerodynamics (CNα, CP, Cd shares) and totals at a given Mach.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"mach":{"type":"number","default":0.3},"example":{"type":"string"},"ork_b64":{"type":"string"},"ork_url":{"type":"string"}}},"logicalName":"aero_analysis","displayName":"aero_analysis","title":"aero_analysis","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"mass_breakdown","description":"Mass / CG / inertia properties and stability summary.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"example":{"type":"string"},"ork_b64":{"type":"string"},"ork_url":{"type":"string"}}},"logicalName":"mass_breakdown","displayName":"mass_breakdown","title":"mass_breakdown","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"simulate","description":"Run the flight simulation. Returns apogee / max velocity / flight time / events; detail:'full' adds a downsampled time series.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"sim":{"type":"string"},"detail":{"enum":["summary","full"],"type":"string","default":"summary"},"example":{"type":"string"},"ork_b64":{"type":"string"},"ork_url":{"type":"string"},"max_points":{"type":"integer","default":200,"maximum":2000,"minimum":10}}},"logicalName":"simulate","displayName":"simulate","title":"simulate","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"compare_runs","description":"Diff two rockets' flight summaries (e.g. before/after an edit). Pass A and B as base64.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["a_ork_b64","b_ork_b64"],"properties":{"sim":{"type":"string"},"a_ork_b64":{"type":"string"},"b_ork_b64":{"type":"string"}}},"logicalName":"compare_runs","displayName":"compare_runs","title":"compare_runs","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"optimize","description":"Sweep one component field (min..max, steps) vs a goal (apogee|margin). Find comp_id/key via inspect's tree.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["comp_id","key","min","max"],"properties":{"key":{"type":"string"},"max":{"type":"number"},"min":{"type":"number"},"goal":{"enum":["apogee","margin"],"type":"string","default":"apogee"},"steps":{"type":"integer","default":15,"maximum":60,"minimum":2},"target":{"type":"number","default":0},"comp_id":{"type":"string"},"example":{"type":"string"},"ork_b64":{"type":"string"},"ork_url":{"type":"string"},"sim_name":{"type":"string"},"min_margin":{"type":"number","default":1}}},"logicalName":"optimize","displayName":"optimize","title":"optimize","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"open_in_workbench","description":"Surface a bundled example or any .ork (b64/url) as `ork_b64`. When the user has the workbench open in another tab, the client auto-loads whatever this returns — so call this whenever the user says 'open X', 'load X', 'show me X', or wants to see a design in 3D. No-op otherwise (the chat just gets the bytes back).","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"example":{"type":"string"},"ork_b64":{"type":"string"},"ork_url":{"type":"string"}}},"logicalName":"open_in_workbench","displayName":"open_in_workbench","title":"open_in_workbench","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"new_document","description":"Create a fresh runnable starter rocket with cfg-0, Simulation 1, a 24mm D12 motor mount, fins, and parachute. Returns ork_b64 to feed into inspect / edit_apply / simulate.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{}},"logicalName":"new_document","displayName":"new_document","title":"new_document","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"edit_apply","description":"Apply a batch of edit ops and return the new ork_b64 + a stability/tree snapshot. Ops: patch_field{id,key,value} | add_component{parent_id,kind} | delete_component{id} | patch_sim{sim_name,key,value} | assign_motor{mount_id,config_id,designation,digest?,ejection_delay?} | clear_motor{mount_id,config_id} | set_ignition{mount_id,event,delay?} | apply_preset{id,preset_id} | add_config{id?,name?} | rename_config{id,name} | delete_config{id} | set_active_stages{id,active:[stage_index,...]}.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["ops"],"properties":{"ops":{"type":"array","items":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"example":{"type":"string"},"ork_b64":{"type":"string"},"ork_url":{"type":"string"}}},"logicalName":"edit_apply","displayName":"edit_apply","title":"edit_apply","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"list_materials","description":"The bundled materials catalog (OpenRocket-compatible). Returns Bulk (kg/m³), Surface (kg/m²) and Line (kg/m) entries with their density and group (wood / plastic / composite / metal / film / fabric / cord / …). Use the entry's exact `name` as material_name in edit_apply (the density is filled in automatically).","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"kind":{"enum":["bulk","surface","line"],"type":"string"},"group":{"type":"string"},"contains":{"type":"string"}}},"logicalName":"list_materials","displayName":"list_materials","title":"list_materials","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"list_presets","description":"Bundled component preset catalog — manufacturer + part number for body tubes, nose cones, transitions, inner tubes (motor mounts), and centering rings (Estes BT-*, PNC-*, AeroTech motor mounts, LOC Precision, Apogee). To apply a preset to a component use edit_apply with {op:'apply_preset', id:<comp_id>, preset_id:<preset.id>}.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"kind":{"enum":["body_tube","nose_cone","transition","inner_tube","centering_ring"],"type":"string"},"contains":{"type":"string"},"body_od_mm":{"type":"number"},"manufacturer":{"type":"string"}}},"logicalName":"list_presets","displayName":"list_presets","title":"list_presets","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"sim_warnings","description":"Pre-flight check against the design + a simulation's launch conditions: motor present, stability margin, recovery, time-step coarseness, multi-stage parity hint. Returns a list of {kind: info|warn|error, category, message}.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"example":{"type":"string"},"ork_b64":{"type":"string"},"ork_url":{"type":"string"},"sim_name":{"type":"string"}}},"logicalName":"sim_warnings","displayName":"sim_warnings","title":"sim_warnings","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"component_mass","description":"Mass of a single component (grams) in the current design. Find comp_id via inspect's tree.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["comp_id"],"properties":{"comp_id":{"type":"string"},"example":{"type":"string"},"ork_b64":{"type":"string"},"ork_url":{"type":"string"}}},"logicalName":"component_mass","displayName":"component_mass","title":"component_mass","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"list_motors","description":"The bundled motor thrust-curve database. Optional filters.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"limit":{"type":"integer","default":100,"maximum":500,"minimum":1},"contains":{"type":"string"},"motor_class":{"type":"string"},"manufacturer":{"type":"string"}}},"logicalName":"list_motors","displayName":"list_motors","title":"list_motors","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"register_motor","description":"Register a user-supplied motor by pasting its RASP .eng text. Adds it to the session catalog so subsequent assign_motor / simulate calls can use the designation. Returns the parsed designation. Browser-only — survives within a session.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name","eng_text"],"properties":{"name":{"type":"string"},"eng_text":{"type":"string"}}},"logicalName":"register_motor","displayName":"register_motor","title":"register_motor","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"motor_info","description":"One motor's full record by designation (e.g. 'C6').","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["designation"],"properties":{"designation":{"type":"string"}}},"logicalName":"motor_info","displayName":"motor_info","title":"motor_info","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"load_skill","description":"Load a named OpsRocket skill — a curated workflow or canonical knowledge doc. The SYSTEM_PROMPT lists the names + descriptions available. Use this whenever the user's question matches one of those descriptions (e.g. 'what is opsrocket' → load_skill(name='opsrocket')). Cheap call; do it before answering instead of guessing from memory.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["name"],"properties":{"name":{"type":"string"}}},"logicalName":"load_skill","displayName":"load_skill","title":"load_skill","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"export","description":"Export the rocket: format 'ork' (base64) | 'csv' (flight data) | 'rocket_view_json' (geometry). PNG/OBJ need a browser renderer and are not available server-side.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["format"],"properties":{"sim":{"type":"string"},"format":{"enum":["ork","csv","rocket_view_json"],"type":"string"},"example":{"type":"string"},"ork_b64":{"type":"string"},"ork_url":{"type":"string"}}},"logicalName":"export","displayName":"export","title":"export","annotations":{"untrustedContentHint":true,"readOnlyHint":true}}],"toolSource":"directory_preview","agentAction":"both","installLinks":[{"id":"cursor","label":"Cursor","href":"cursor://anysphere.cursor-deeplink/mcp/install?name=OpsRocket&config=eyJ1cmwiOiAiaHR0cHM6Ly9vcHMuc2cvbWNwIn0%3D"},{"id":"vscode","label":"VS Code","href":"vscode:mcp/install?%7B%22name%22%3A%22OpsRocket%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fops.sg%2Fmcp%22%7D"},{"id":"vscode-insiders","label":"VS Code Insiders","href":"vscode-insiders:mcp/install?%7B%22name%22%3A%22OpsRocket%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fops.sg%2Fmcp%22%7D"},{"id":"claude-web","label":"Claude.ai","href":"https://claude.ai/customize/connectors?modal=add-custom-connector&connectorName=OpsRocket&connectorUrl=https%3A%2F%2Fops.sg%2Fmcp"},{"id":"codex","label":"Codex","copyText":"codex mcp add \"OpsRocket\" --url \"https://ops.sg/mcp\""},{"id":"chatgpt","label":"ChatGPT","href":"https://www.mcpbundles.com/docs/integrations/chatgpt"}],"catalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/ops-mcp-9a55a57130","callUrl":"https://www.mcpbundles.com/api/directory/v1/servers/ops-mcp-9a55a57130/tools/{tool}","mcpServerUrl":"https://ops.sg/mcp","liveCatalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/ops-mcp-9a55a57130?live=1"}