{"name":"io.github.darshjoshi/pitwall","slug":"darshjoshi-pitwall","title":"Pitwall — F1 Data for Claude","description":"F1 race engineer for Claude — 79 tools for live timing, telemetry, strategy, and 75 years of history","url":"https://mcp.market/server/darshjoshi-pitwall","rating":null,"grade":"A","score":88,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":29,"stars":8,"forks":1,"downloads_week":22,"last_push_at":"2026-08-02T07:45:15.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"pypi","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/darshjoshi/pitwall","website":"https://github.com/darshjoshi/pitwall","version":"1.1.1","remotes":[],"packages":[{"registryType":"pypi","identifier":"f1pitwall","version":"1.1.1","transport":{"type":"stdio"}}],"tools":[{"name":"analyze_brake_points","description":"Analyze braking patterns on fastest lap.","write_action":false,"price_micros":0,"input_schema":null},{"name":"analyze_drs_usage","description":"Analyze DRS usage on a driver's fastest lap.","write_action":false,"price_micros":0,"input_schema":null},{"name":"analyze_lap_consistency","description":"Analyze lap time consistency (standard deviation, variation).","write_action":false,"price_micros":0,"input_schema":null},{"name":"analyze_long_run_pace","description":"Analyze race simulation pace from practice sessions.","write_action":true,"price_micros":0,"input_schema":null},{"name":"analyze_rpm_data","description":"Analyze engine RPM patterns on fastest lap.","write_action":false,"price_micros":0,"input_schema":null},{"name":"analyze_starting_tires","description":"Analyze which tire compounds were used at race start.","write_action":false,"price_micros":0,"input_schema":null},{"name":"compare_grid_to_finish","description":"Compare starting grid positions to finishing positions.","write_action":false,"price_micros":0,"input_schema":null},{"name":"compare_sector_times","description":"Compare sector times between two drivers.","write_action":false,"price_micros":0,"input_schema":null},{"name":"compare_strategies","description":"Compare tire strategies between two drivers.","write_action":false,"price_micros":0,"input_schema":null},{"name":"compare_tire_age_performance","description":"Compare lap times on fresh vs used tires.","write_action":false,"price_micros":0,"input_schema":null},{"name":"compare_tire_compounds","description":"Compare average lap times across different tire compounds.","write_action":false,"price_micros":0,"input_schema":null},{"name":"detect_overtakes","description":"Detect when a driver overtook others (position gained between laps).","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_championship_standings","description":"Get championship standings from 1950 to present.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_circuit_info","description":"Get track layout info (Corners, DRS Zones).","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_constructor_standings","description":"Get constructor/team championship standings.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_deleted_laps","description":"Get all laps deleted due to track limits or other violations.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_dnf_list","description":"Get list of drivers who did not finish the race and reasons.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_driver_comparison","description":"Compare two drivers head-to-head — position, pace, strategy, pit stops.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_driver_info","description":"Get detailed driver information (number, team, headshot, etc.).","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_driver_standings","description":"Get driver championship standings after a specific round or latest.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_driver_tyre_detail","description":"Get detailed tyre stint data for a specific driver via FastF1 — compound, laps, and degradation.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_fastest_lap_data","description":"Get detailed stats for a driver's fastest lap (Sector times, Speed trap).","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_fastest_pit_stops","description":"Get the fastest pit stops of the race, ranked by stationary time.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_fastest_sectors","description":"Find who set the fastest time in each sector.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_gap_to_leader","description":"Track gap to race leader throughout the race.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_historical_results","description":"Get historical F1 race results from 1950 to present.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_lap_times","description":"Get lap-by-lap times for one or all drivers. Filterable by lap range.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_lap_times_fastf1","description":"Get all lap times for a driver via FastF1 — includes compound and tyre life per lap.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_live_best_sectors","description":"Live personal-best sector times and overall best lap per driver, ranked by lap position. No auth required.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_live_gps_positions","description":"Live circuit-relative GPS coordinates — raw x/y integers for every car, a snapshot of the current instant. NOT mapped to named corners (no x/y-to-corner model). Requires a valid F1 TV token.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_live_lap_times","description":"Live last + best lap time per driver. No auth required.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_live_mini_sectors","description":"Live mini-sector status per driver: g=green/personal-best, p=purple/overall-best, y=yellow, .=no data. No auth required.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_live_pit_activity","description":"Live pit-stop count and real-time in-pit / out-lap flags per driver. No auth required.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_live_positions","description":"Live running order with gap-to-leader and interval. No auth required.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_live_race_control","description":"Live race control: flags, penalties, track-limit deletions, SC/VSC. No auth required.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_live_sector_times","description":"Live sector times + speed trap for one driver (TLA or car number). No auth required.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_live_session_clock","description":"Live time remaining in the current session. No auth required.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_live_session_status","description":"Live F1 session status: session name, flag/track status, lap count. No auth required. Honest 'no live session' message when nothing is running.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_live_speed_comparison","description":"Live best speed at each measurement point (I1, I2, FL, ST) for every driver. No auth required.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_live_speed_trap","description":"Live speed-trap (ST) ranking across the whole field. No auth required.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_live_stint_history","description":"Live full compound sequence and stint lengths for every driver in track-position order. No auth required.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_live_telemetry","description":"Live car telemetry — the LATEST single sample (speed/rpm/gear/throttle/brake) for one driver: a snapshot of the current instant, NOT a lap trace and NOT resolved to a track corner. No DRS in 2026 (active aero). Auth-gated: needs a valid F1 TV token (CarData.z) AND cars on track. For a corner-by-corner lap trace use the post-session tool get_telemetry(driver, lap=N).","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_live_time_gaps","description":"Live gap to leader and interval to car ahead per driver, mode-aware (race gap vs quali/practice fastest). No auth required.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_live_track_status_history","description":"Live chronological log of track-status and session-status changes. No auth required.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_live_tyres","description":"Live tyre compound, age (laps), and stint number per driver. No auth required.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_live_weather","description":"Live track weather (air/track temp, humidity, wind, rain). No auth required.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_penalties","description":"Get all penalties issued during the race.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_personal_best_laps","description":"Get each driver's personal best lap time.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_pit_stop_detail","description":"Get detailed pit stop data — stationary time, pit-lane time, and tyre compound swap per stop.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_pit_stops","description":"Get all pit stops sorted by fastest stop time.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_position_changes","description":"Track position changes throughout the race for a driver.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_qualifying_progression","description":"Show who was eliminated in Q1, Q2 and who made it to Q3.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_race_control","description":"Get race control messages — flags, penalties, safety cars, investigations.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_race_control_messages","description":"Get all race control messages during a session.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_race_info","description":"Get session details and list of available data feeds.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_race_results","description":"Get the final classification (Position, Driver, Team, Points).","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_race_winners_history","description":"Get race winners for a specific GP over the last N years.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_schedule","description":"Get the full race calendar for a specific year (excluding testing).","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_session_info","description":"Get start time and status of a specific session (R=Race, Q=Quali, FP1, etc).","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_session_summary","description":"Get a comprehensive quick summary of a session.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_speed_trap_comparison","description":"Compare speed trap data across all drivers.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_speed_traps","description":"Get speed trap readings at 4 measurement points (I1, I2, FL, ST) per driver.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_sprint_results","description":"Get sprint race results (for sprint weekends).","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_standings","description":"Get race classification — positions, gaps, best laps, pit stops, retirements.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_stint_analysis","description":"Analyze each stint: compound, lap times, degradation.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_team_laps","description":"Get all laps for a specific team (both drivers).","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_telemetry","description":"Get car telemetry — speed, RPM, throttle, brake, gear, DRS for a specific lap.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_track_record","description":"Get the all-time lap record for a specific circuit (via Ergast).","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_track_status","description":"Get track status changes (yellow flags, safety car, red flag, etc.).","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_tyre_strategy","description":"Get tyre strategy for every driver — compound, stint length, new/used tyres.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_weather","description":"Get weather conditions during a session — temperature, rain, wind, humidity.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_weather_data","description":"Get detailed weather conditions (Rain, Track Temp, Wind).","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_races","description":"List all races and sessions for a season with dates and session paths.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_seasons","description":"List all available F1 seasons (2018-present).","write_action":false,"price_micros":0,"input_schema":null},{"name":"plot_driver_telemetry_comparison","description":"Plot comprehensive telemetry comparison (speed, throttle, brake, gear) between two drivers for the same lap.","write_action":false,"price_micros":0,"input_schema":null},{"name":"plot_gear_shifts","description":"Generates a Gear Shift chart for a single driver.","write_action":false,"price_micros":0,"input_schema":null},{"name":"plot_multi_telemetry_comparison","description":"Compare full telemetry (speed, throttle, brake, gear) between two laps for same driver. Example: Compare first lap vs last lap for Piastri Brazil 2024","write_action":false,"price_micros":0,"input_schema":null},{"name":"plot_telemetry_comparison","description":"Generates a Speed Trace comparison image between two drivers. Returns: An ImageContent object that can be displayed in the client.","write_action":false,"price_micros":0,"input_schema":null},{"name":"team_head_to_head","description":"Compare both drivers in a team head-to-head.","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":88,"grade":"A","scanned_at":"2026-09-24T12:01:30.759Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-24T12:01:30.767Z","components":{"code":{"score":25,"max":25,"notes":["7 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":12,"max":15,"notes":["local package, no credentials required"]},"maintenance":{"score":12,"max":15,"notes":["last push 53 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[],"inputs":{"packages":[{"registryType":"pypi","identifier":"f1pitwall","version":"1.1.1","found":true,"weeklyDownloads":22,"license":"MIT","dependencyCount":10,"publishedAt":"2026-08-02T07:45:39.011422Z","repositoryUrl":"https://github.com/darshjoshi/pitwall"}],"repo":{"found":true,"owner":"darshjoshi","repo":"pitwall","archived":false,"pushedAt":"2026-08-02T07:45:15Z","stars":8,"forks":1,"openIssues":1,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/46282088?v=4","ownerCreatedAt":"2018-12-31T14:07:20Z","license":"MIT"},"icon":{"url":"https://avatars.githubusercontent.com/u/46282088?v=4&s=128","source":"github"},"presence":{"stars":8,"forks":1,"downloadsWeek":22,"license":"MIT","lastPushAt":"2026-08-02T07:45:15.000Z","score":29}}}},"grade_history":[],"reviews":[]}