Turn Claude into your F1 race engineer — 79 MCP tools for telemetry, strategy, and 75 years of race history
Drift inferred · capture-to-capture
No drift recorded — single capability capture; advisories appear once its surface changes.
transport stdio · streamable-http · http counts 79 tools · 0 res
· 0 prompts
permission surface via code analysis
tools
-
analyze_brake_points
-
analyze_drs_usage
-
analyze_lap_consistency
-
analyze_long_run_pace
-
analyze_rpm_data
-
analyze_starting_tires
-
compare_grid_to_finish
-
compare_sector_times
-
compare_strategies
-
compare_tire_age_performance
-
compare_tire_compounds
-
detect_overtakes
-
get_championship_standings
-
get_circuit_info
-
get_constructor_standings
-
get_deleted_laps
-
get_dnf_list
-
get_driver_comparison
-
get_driver_info
-
get_driver_standings
-
get_driver_tyre_detail
-
get_fastest_lap_data
-
get_fastest_pit_stops
-
get_fastest_sectors
-
get_gap_to_leader
-
get_historical_results
-
get_lap_times
-
get_lap_times_fastf1
-
get_live_best_sectors
-
get_live_gps_positions
-
get_live_lap_times
-
get_live_mini_sectors
-
get_live_pit_activity
-
get_live_positions
-
get_live_race_control
-
get_live_sector_times
-
get_live_session_clock
-
get_live_session_status
-
get_live_speed_comparison
-
get_live_speed_trap
-
get_live_stint_history
-
get_live_telemetry
-
get_live_time_gaps
-
get_live_track_status_history
-
get_live_tyres
-
get_live_weather
-
get_penalties
-
get_personal_best_laps
-
get_pit_stop_detail
-
get_pit_stops
-
get_position_changes
-
get_qualifying_progression
-
get_race_control
-
get_race_control_messages
-
get_race_info
-
get_race_results
-
get_race_winners_history
-
get_schedule
-
get_session_info
-
get_session_summary
-
get_speed_trap_comparison
-
get_speed_traps
-
get_sprint_results
-
get_standings
-
get_stint_analysis
-
get_team_laps
-
get_telemetry
-
get_track_record
-
get_track_status
-
get_tyre_strategy
-
get_weather
-
get_weather_data
-
list_races
-
list_seasons
-
plot_driver_telemetry_comparison
-
plot_gear_shifts
-
plot_multi_telemetry_comparison
-
plot_telemetry_comparison
-
team_head_to_head
prompt-surface
shipped agent-instruction files + hidden-content / dangerous-code findings —
quoted from the analyzed source
analyzed commit 3f7fb86 · analyzer v28 · 1d ago
skills & prompt files 2
- agent-rules darshjoshi-pitwall-3f7fb86/CLAUDE.md
- skill darshjoshi-pitwall-3f7fb86/SKILL.md
evidence-backed
findings quoted directly from the published source artifact — not inferred
code files: 8
filesystem 1
- fs darshjoshi-pitwall-3f7fb86/auth_setup.py :14
from pathlib import Path
network 2
- net darshjoshi-pitwall-3f7fb86/pitwall.py :26
import requests - net darshjoshi-pitwall-3f7fb86/signalr_client.py :28
import aiohttp
tool registrations 79
- list_seasons darshjoshi-pitwall-3f7fb86/pitwall.py :217
- list_races darshjoshi-pitwall-3f7fb86/pitwall.py :233
- get_race_info darshjoshi-pitwall-3f7fb86/pitwall.py :253
- get_standings darshjoshi-pitwall-3f7fb86/pitwall.py :281
- get_lap_times darshjoshi-pitwall-3f7fb86/pitwall.py :325
- get_telemetry darshjoshi-pitwall-3f7fb86/pitwall.py :398
- get_tyre_strategy darshjoshi-pitwall-3f7fb86/pitwall.py :518
- get_pit_stops darshjoshi-pitwall-3f7fb86/pitwall.py :549
- get_race_control darshjoshi-pitwall-3f7fb86/pitwall.py :592
- get_weather darshjoshi-pitwall-3f7fb86/pitwall.py :623
- get_speed_traps darshjoshi-pitwall-3f7fb86/pitwall.py :647
- get_driver_comparison darshjoshi-pitwall-3f7fb86/pitwall.py :686
- get_historical_results darshjoshi-pitwall-3f7fb86/pitwall.py :745
- get_championship_standings darshjoshi-pitwall-3f7fb86/pitwall.py :796
- get_schedule darshjoshi-pitwall-3f7fb86/pitwall.py :922
- get_session_info darshjoshi-pitwall-3f7fb86/pitwall.py :932
- get_race_results darshjoshi-pitwall-3f7fb86/pitwall.py :945
- get_fastest_lap_data darshjoshi-pitwall-3f7fb86/pitwall.py :956
- plot_telemetry_comparison darshjoshi-pitwall-3f7fb86/pitwall.py :983
- plot_multi_telemetry_comparison darshjoshi-pitwall-3f7fb86/pitwall.py :1030
- plot_driver_telemetry_comparison darshjoshi-pitwall-3f7fb86/pitwall.py :1107
- plot_gear_shifts darshjoshi-pitwall-3f7fb86/pitwall.py :1193
- get_weather_data darshjoshi-pitwall-3f7fb86/pitwall.py :1257
- get_circuit_info darshjoshi-pitwall-3f7fb86/pitwall.py :1275
- get_driver_tyre_detail darshjoshi-pitwall-3f7fb86/pitwall.py :1292
- get_pit_stop_detail darshjoshi-pitwall-3f7fb86/pitwall.py :1314
- get_driver_standings darshjoshi-pitwall-3f7fb86/pitwall.py :1397
- get_constructor_standings darshjoshi-pitwall-3f7fb86/pitwall.py :1426
- get_sprint_results darshjoshi-pitwall-3f7fb86/pitwall.py :1458
- compare_sector_times darshjoshi-pitwall-3f7fb86/pitwall.py :1474
- get_lap_times_fastf1 darshjoshi-pitwall-3f7fb86/pitwall.py :1509
- get_deleted_laps darshjoshi-pitwall-3f7fb86/pitwall.py :1534
- get_position_changes darshjoshi-pitwall-3f7fb86/pitwall.py :1562
- get_track_status darshjoshi-pitwall-3f7fb86/pitwall.py :1595
- get_race_control_messages darshjoshi-pitwall-3f7fb86/pitwall.py :1627
- get_driver_info darshjoshi-pitwall-3f7fb86/pitwall.py :1655
- get_team_laps darshjoshi-pitwall-3f7fb86/pitwall.py :1692
- get_speed_trap_comparison darshjoshi-pitwall-3f7fb86/pitwall.py :1723
- analyze_drs_usage darshjoshi-pitwall-3f7fb86/pitwall.py :1754
- compare_tire_compounds darshjoshi-pitwall-3f7fb86/pitwall.py :1800
- get_stint_analysis darshjoshi-pitwall-3f7fb86/pitwall.py :1828
- get_dnf_list darshjoshi-pitwall-3f7fb86/pitwall.py :1862
- get_fastest_sectors darshjoshi-pitwall-3f7fb86/pitwall.py :1896
- compare_grid_to_finish darshjoshi-pitwall-3f7fb86/pitwall.py :1941
- get_qualifying_progression darshjoshi-pitwall-3f7fb86/pitwall.py :1976
- analyze_lap_consistency darshjoshi-pitwall-3f7fb86/pitwall.py :2021
- analyze_brake_points darshjoshi-pitwall-3f7fb86/pitwall.py :2056
- analyze_rpm_data darshjoshi-pitwall-3f7fb86/pitwall.py :2091
- get_fastest_pit_stops darshjoshi-pitwall-3f7fb86/pitwall.py :2120
- compare_tire_age_performance darshjoshi-pitwall-3f7fb86/pitwall.py :2177
- get_penalties darshjoshi-pitwall-3f7fb86/pitwall.py :2220
- get_race_winners_history darshjoshi-pitwall-3f7fb86/pitwall.py :2254
- detect_overtakes darshjoshi-pitwall-3f7fb86/pitwall.py :2305
- get_gap_to_leader darshjoshi-pitwall-3f7fb86/pitwall.py :2359
- analyze_long_run_pace darshjoshi-pitwall-3f7fb86/pitwall.py :2390
- team_head_to_head darshjoshi-pitwall-3f7fb86/pitwall.py :2442
- get_track_record darshjoshi-pitwall-3f7fb86/pitwall.py :2502
- get_session_summary darshjoshi-pitwall-3f7fb86/pitwall.py :2553
- compare_strategies darshjoshi-pitwall-3f7fb86/pitwall.py :2597
- analyze_starting_tires darshjoshi-pitwall-3f7fb86/pitwall.py :2636
- get_personal_best_laps darshjoshi-pitwall-3f7fb86/pitwall.py :2669
- get_live_session_status darshjoshi-pitwall-3f7fb86/pitwall.py :2892
- get_live_positions darshjoshi-pitwall-3f7fb86/pitwall.py :2901
- get_live_lap_times darshjoshi-pitwall-3f7fb86/pitwall.py :2909
- get_live_sector_times darshjoshi-pitwall-3f7fb86/pitwall.py :2917
- get_live_weather darshjoshi-pitwall-3f7fb86/pitwall.py :2925
- get_live_tyres darshjoshi-pitwall-3f7fb86/pitwall.py :2957
- get_live_race_control darshjoshi-pitwall-3f7fb86/pitwall.py :2983
- get_live_speed_trap darshjoshi-pitwall-3f7fb86/pitwall.py :3008
- get_live_session_clock darshjoshi-pitwall-3f7fb86/pitwall.py :3025
- get_live_track_status_history darshjoshi-pitwall-3f7fb86/pitwall.py :3051
- get_live_best_sectors darshjoshi-pitwall-3f7fb86/pitwall.py :3090
- get_live_speed_comparison darshjoshi-pitwall-3f7fb86/pitwall.py :3128
- get_live_stint_history darshjoshi-pitwall-3f7fb86/pitwall.py :3159
- get_live_pit_activity darshjoshi-pitwall-3f7fb86/pitwall.py :3186
- get_live_time_gaps darshjoshi-pitwall-3f7fb86/pitwall.py :3214
- get_live_mini_sectors darshjoshi-pitwall-3f7fb86/pitwall.py :3251
- get_live_telemetry darshjoshi-pitwall-3f7fb86/pitwall.py :3282
- get_live_gps_positions darshjoshi-pitwall-3f7fb86/pitwall.py :3360
declared dependencies 6
- mcp@>=1.0.0
- requests@>=2.28.0
- fastf1@>=3.0.0
- matplotlib@>=3.7.0
- pandas@>=2.0.0
- numpy@>=1.24.0
perm:untrusted 1
- untrusted darshjoshi-pitwall-3f7fb86/pitwall.py :776
races = requests.get(url, timeout=10).json().get("MRData", {}).get("RaceTable", {}).get("Races", [])