{"ok":true,"site":{"host":"esbiko.com","url":"https://www.esbiko.com/experiments/physics.acoustics.doppler/run","type":"live","desc":"Esbiko is an interactive science simulation platform for students and teachers. Explore virtual physics labs, earth science simulations, astronomy activities, and STEM experiments online.","tools":[{"name":"list_science_simulations","kind":"answer","impl":"imperative","description":"List Esbiko simulations that provide agent-operable WebMCP tools. Returns each simulation's ID, topic, route, and supported actions.","annotations":{"readOnlyHint":true,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/experiments/physics.acoustics.doppler/run","pages":["/experiments/physics.acoustics.doppler/run","/experiments","/experiments/astronomy.space.satellites-telescopes","/","/experiments/astronomy.kepler-lab","/experiments/astronomy.space.earth-orbit-lab"]},{"name":"open_science_simulation","kind":"act","impl":"imperative","description":"Open a WebMCP-enabled Esbiko science simulation in the current page so its experiment tools become available.","annotations":{"readOnlyHint":false,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{"simulationId":{"type":"string","enum":["physics.waves.coupled-pendulums-cord","physics.optics.microscope-telescope","physics.mechanics.simple-projectile","evolution-of-life","physics.challenges.moon-lander","physics.optics.lens-mirror-3d","earth-science.geology.plate-tectonics","astronomy.space.satellites-telescopes","physics.optics.lens-mirror-2d","physics.electricity.circuits","creative.patterns.ambient-pattern-studio","physics.thermodynamics.gas","physics.acoustics.spatial-audio","physics.waves.surface-waves-double-slit","astronomy.kepler-lab","physics.electricity.coulomb-law-3d","physics.optics.microscope","physics.mechanics.simple-pendulum","physics.mechanics.spring-mass","physics.waves.multi-source-interference","astronomy.space.earth-orbit-lab","astronomy.space.solar-system","physics.acoustics.doppler"],"description":"The exact Esbiko simulation ID returned by list_science_simulations."}},"required":["simulationId"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/experiments/physics.acoustics.doppler/run","pages":["/experiments/physics.acoustics.doppler/run","/experiments","/experiments/astronomy.space.satellites-telescopes","/","/experiments/astronomy.kepler-lab","/experiments/astronomy.space.earth-orbit-lab"]},{"name":"get_doppler_state","kind":"answer","impl":"imperative","description":"Read the visible Doppler experiment's live parameters and calculated measurements, including emitted and observed frequency and shift.","annotations":{"readOnlyHint":true,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/experiments/physics.acoustics.doppler/run","pages":["/experiments/physics.acoustics.doppler/run"]},{"name":"configure_doppler","kind":"act","impl":"imperative","description":"Configure one visible Doppler sound-source experiment. Motion is relative to the observer; omitted numeric values preserve the current value or use safe defaults.","annotations":{"readOnlyHint":false,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{"motion":{"type":"string","enum":["approaching","receding","stationary"],"description":"Whether the source moves toward, away from, or stays still relative to the observer."},"sourceSpeedMps":{"type":"number","minimum":0,"maximum":150,"description":"Non-negative source speed in metres per second; direction comes from motion."},"emittedFrequencyHz":{"type":"number","minimum":100,"maximum":1000,"description":"Emitted pure-tone frequency in hertz."},"sourcePositionM":{"type":"number","minimum":0,"maximum":1000,"description":"Source position on Esbiko's 0–1000 metre horizontal coordinate."},"observerPositionM":{"type":"number","minimum":0,"maximum":1000,"description":"Observer position on Esbiko's 0–1000 metre horizontal coordinate."},"observerVelocityMps":{"type":"number","minimum":-100,"maximum":100,"description":"Signed observer velocity in metres per second; positive is rightward."},"instrument":{"type":"string","enum":["sine","saw","square","organ","brass","drone"],"description":"Exact-frequency sound used for the experiment."}},"required":["motion"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/experiments/physics.acoustics.doppler/run","pages":["/experiments/physics.acoustics.doppler/run"]},{"name":"configure_doppler_scene","kind":"act","impl":"imperative","description":"Configure one visible Doppler scene with one or two independently positioned sound sources. Signed velocity controls left-to-right or right-to-left travel, and recorded vehicle sounds are supported.","annotations":{"readOnlyHint":false,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{"observerPositionM":{"type":"number","minimum":0,"maximum":1000,"description":"Stationary or moving observer position in metres."},"observerVelocityMps":{"type":"number","minimum":-100,"maximum":100,"description":"Signed observer velocity in metres per second."},"sources":{"type":"array","minItems":1,"maxItems":2,"description":"One or two sound sources sharing the visible simulation.","items":{"type":"object","properties":{"id":{"type":"string","description":"Stable source identifier used by later state reads."},"label":{"type":"string","description":"Short human-readable source label."},"sourcePositionM":{"type":"number","minimum":0,"maximum":1000},"sourceVelocityMps":{"type":"number","minimum":-150,"maximum":150,"description":"Signed velocity; positive moves right and negative moves left."},"emittedFrequencyHz":{"type":"number","minimum":100,"maximum":1000},"instrument":{"type":"string","enum":["sine","saw","square","organ","brass","drone","esbiko_voice","car_engine","diesel_engine","bus_engine","tractor_engine","ambulance_siren","police_siren","engine"],"description":"Synthesized tone or real recorded vehicle/siren sound."}},"required":["sourcePositionM","sourceVelocityMps","emittedFrequencyHz","instrument"],"additionalProperties":false}}},"required":["sources"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/experiments/physics.acoustics.doppler/run","pages":["/experiments/physics.acoustics.doppler/run"]},{"name":"set_doppler_playback","kind":"act","impl":"imperative","description":"Run or pause the visible Doppler experiment. Running advances the source, observer, wavefronts, and calculated measurements.","annotations":{"readOnlyHint":false,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{"action":{"type":"string","enum":["run","pause"],"description":"Set the simulation playback state to run or pause."}},"required":["action"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/experiments/physics.acoustics.doppler/run","pages":["/experiments/physics.acoustics.doppler/run"]},{"name":"reset_doppler","kind":"act","impl":"imperative","description":"Reset the visible Doppler experiment to scientific mode with a stationary observer, no sources, and paused playback.","annotations":{"readOnlyHint":false,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/experiments/physics.acoustics.doppler/run","pages":["/experiments/physics.acoustics.doppler/run"]},{"name":"create_doppler_video","kind":"act","impl":"imperative","description":"Create a 10–60 second 9:16 WebM Doppler video with deterministic motion, recorded sound, wavefronts, captions, and before/after pitch. Use single_pass for one source that crosses the observer halfway through the video; use two_vehicle for the two-source story. Silent files are rejected.","annotations":{"readOnlyHint":false,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{"storyMode":{"type":"string","enum":["two_vehicle","single_pass"],"default":"two_vehicle","description":"single_pass uses one left-to-right source for the whole video; two_vehicle uses two sequential sources."},"durationSeconds":{"type":"number","minimum":10,"maximum":60,"default":30,"description":"Total video duration. In single_pass, the observer crossing occurs exactly halfway through."},"speedMps":{"type":"number","minimum":10,"maximum":60,"default":60},"emittedFrequencyHz":{"type":"number","minimum":100,"maximum":1000,"default":440},"firstInstrument":{"type":"string","enum":["car_engine","diesel_engine","bus_engine","tractor_engine","ambulance_siren","police_siren","esbiko_voice"],"default":"esbiko_voice","description":"Recorded sound for the first source, or the only source in single_pass mode."},"secondInstrument":{"type":"string","enum":["car_engine","diesel_engine","bus_engine","tractor_engine","ambulance_siren","police_siren","esbiko_voice"],"default":"ambulance_siren","description":"Recorded sound for the second source in two_vehicle mode."}},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/experiments/physics.acoustics.doppler/run","pages":["/experiments/physics.acoustics.doppler/run"]},{"name":"get_doppler_video_status","kind":"answer","impl":"imperative","description":"Read recording state, elapsed time, story phase, scientific comparison, audio-track presence, verified audio-signal status, and download readiness for the directed Doppler video.","annotations":{"readOnlyHint":true,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/experiments/physics.acoustics.doppler/run","pages":["/experiments/physics.acoustics.doppler/run"]},{"name":"stop_doppler_video","kind":"act","impl":"imperative","description":"Stop an active Doppler director recording early and finalize the WebM video so it can be reviewed or downloaded.","annotations":{"readOnlyHint":false,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/experiments/physics.acoustics.doppler/run","pages":["/experiments/physics.acoustics.doppler/run"]},{"name":"download_doppler_video","kind":"act","impl":"imperative","description":"Download the finalized agent-directed Doppler WebM video. The recording must have status ready before this action is called.","annotations":{"readOnlyHint":false,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/experiments/physics.acoustics.doppler/run","pages":["/experiments/physics.acoustics.doppler/run"]}],"category":"Health & Education","favicon":"/favicons/esbiko.com.png","apiSurface":"spec","toolCount":11}}