- Home
- MCP servers
- Physics
Physics
- python
1
GitHub Stars
python
Language
4 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
You can run an MCP server that lets your language models perform precise physics calculations and realistic simulations. This server exposes analytic calculations and, via an optional external physics engine, full rigid-body simulations. It enables rapid, interactive exploration of projectile motion, forces, energy, momentum, fluids, rotation, and complex multi‑body dynamics, so you can teach, prototype, and reason about physics with exact results and rich visualization data.
How to use
You interact with the MCP server through a client that sends tool requests and receives structured results. Start with analytic calculations for quick, exact answers, then move to simulations when you need realistic motion, collisions, and trajectories. Typical workflows include: calculating projectile trajectories, checking collisions between objects, evaluating forces and energies, and generating trajectory data for visualization tools like React Three Fiber or Remotion. When you need multi‑body dynamics, connect to a Rapier service so you can run full rigid‑body simulations and export motion data for animation.
To begin, connect to a MCP server endpoint or run a local stdio or uvx workflow as described in the installation section. Use analytic tools for simple questions first, and switch to simulation tools for complex scenes that involve multiple bodies, joints, and drag variations. You can also perform unit conversions and physics analyses to support design, education, or visualization tasks.
How to install
Prerequisites: Python 3.11+ and, for simulations, access to a Rapier service. You can use the public Rapier service or run your own instance.
-
Run a quick start with no installation required using uvx. This starts the analytic provider directly.
-
If you want to run locally, install the package and run the server. Follow the exact commands shown for either the PyPI installation path or the source installation path.
-
For Claude Desktop or other clients, choose either a public hosted MCP server or a local uvx workflow, and configure the client with the provided URL or command.
Configuration and usage notes
Public MCP server: Add the following server endpoint to your client configuration to use the hosted physics server.
{
"mcpServers": {
"physics": {
"command": "node",
"args": ["-e", "require('https').get('https://physics.chukai.io/mcp')"]
}
}
}
Security and reliability
When using external services, respect rate limits and ensure proper handling of network errors. For production workloads, consider deploying your own Rapier service and point the MCP server to that endpoint for deterministic performance and data locality.
Examples
Here are representative usage patterns you can try in order: analytic projectile motion, collision checks, and a small multi‑body scene. Then, when ready, run a Rapier‑backed simulation to capture trajectories for visualization.
Analytic projectile: calculate_projectile_motion with initial velocity and angle to obtain range, time of flight, and peak height.
Development
If you contribute, follow the standard MCP server development flow: install dependencies, run tests, and validate against the provided examples. The server supports both analytic and Rapier-backed operation, so you can build hybrid workflows for education, prototyping, and production.
Available tools
calculate_projectile_motion
Compute ballistic trajectory parameters using kinematic equations for range, time of flight, and maximum height.
check_collision
Predict whether two spheres will collide and estimate collision time and location.
calculate_force
Compute force based on mass and acceleration, F = ma.
calculate_kinetic_energy
Compute kinetic energy KE = ½ mv² for a moving object.
calculate_momentum
Compute linear momentum p = mv for a moving object.
calculate_potential_energy
Compute gravitational potential energy PE = mgh at height h.
calculate_work_power
Compute work done by force and the associated power.
calculate_elastic_collision
Model a one-dimensional elastic collision conserving energy and momentum.
calculate_drag_force
Compute drag force using F = ½ ρ v² Cd A.
calculate_buoyancy
Determine buoyant force using Archimedes' principle.
calculate_terminal_velocity
Compute terminal velocity where drag equals weight.
simulate_underwater_motion
Simulate underwater trajectory with drag and buoyancy.
calculate_lift_force
Compute aerodynamic lift using L = ½ ρ v² C_L A.
calculate_magnus_force
Compute force due to spin (Magnus effect) on spinning bodies.
calculate_bernoulli
Apply Bernoulli's equation for flowing fluids.
calculate_pressure_at_depth
Compute hydrostatic pressure at depth in a fluid.
calculate_reynolds_number
Determine Reynolds number to classify flow regime.
calculate_venturi_effect
Analyze flow through constrictions using Venturi principles.
create_simulation
Initialize a physics world for rigid-body simulations.
add_rigid_body
Add static or dynamic bodies to the simulation with properties.
step_simulation
Advance the physics simulation by a number of steps.
record_trajectory
Capture motion data for visualization and analysis.
destroy_simulation
Clean up simulation resources.
add_joint
Create joints between bodies to constrain motion.
calculate_torque
Compute torque from force and lever arm.
calculate_moment_of_inertia
Compute rotational inertia for common shapes.
calculate_angular_momentum
Compute angular momentum L = Iω.
calculate_rotational_kinetic_energy
Compute rotational kinetic energy ½ I ω².
calculate_angular_acceleration
Compute angular acceleration α = τ / I.
calculate_hookes_law
Spring force F = -k x and potential energy.
calculate_spring_mass_period
Compute period for a spring-mass system.
calculate_simple_harmonic_motion
Compute position, velocity, and acceleration for SHM.
calculate_damped_oscillation
Model under/over/critical damping in oscillations.
calculate_pendulum_period
Compute the period of a simple pendulum.
calculate_centripetal_force
Compute centripetal force for circular motion.
calculate_orbital_period
Compute orbital period for circular orbit.
calculate_banking_angle
Determine banking angle for a curved path.
calculate_escape_velocity
Compute velocity to escape gravity.
analyze_circular_orbit
Provide a complete analysis of a circular orbit.
check_force_balance
Verify that the sum of forces is zero.
check_torque_balance
Verify torque equilibrium in a system.
calculate_center_of_mass
Compute the overall center of mass for a system.
calculate_static_friction
Determine maximum static friction before slipping.
calculate_normal_force
Compute the normal force on an incline.
check_equilibrium
Assess overall equilibrium of a structure.
calculate_beam_reactions
Compute reaction forces for a simply supported beam.
calculate_acceleration_from_position
Derive acceleration from position data.
calculate_jerk
Compute the jerk, the rate of change of acceleration.
fit_trajectory
Fit a trajectory to a mathematical model.
generate_motion_graph
Create graphs of position, velocity, and acceleration.
calculate_average_speed
Compute average speed along a path.
calculate_instantaneous_velocity
Compute velocity at a specific time with interpolation.
calculate_projectile_with_drag
Compute a realistic projectile trajectory with drag and optional wind, altitude, and spin.
calculate_elastic_collision_3d
Perform 3D elastic collision calculations.
calculate_inelastic_collision_3d
Perform 3D inelastic collision calculations with energy loss.
check_energy_conservation
Verify total energy conservation across a process.
check_momentum_conservation
Verify momentum conservation across a process.
check_angular_momentum_conservation
Verify angular momentum conservation.
track_energy_dissipation
Track how energy is dissipated over time.
convert_unit
Convert between units across multiple categories.
list_unit_conversions
Return all supported unit conversions.