Skip to main content
Glama

Pitstop

reference.py•3.25 kB
from pydantic import BaseModel, Field from typing import Optional from datetime import date class DriverInfo(BaseModel): """Information about an F1 driver.""" driver_id: str = Field(..., description="Unique driver identifier") driver_number: Optional[int] = Field(None, description="Driver's racing number") driver_code: Optional[str] = Field(None, description="Three-letter driver code (e.g., 'VER', 'HAM')") given_name: str = Field(..., description="Driver's first name") family_name: str = Field(..., description="Driver's last name") date_of_birth: Optional[date] = Field(None, description="Driver's date of birth") nationality: str = Field(..., description="Driver's nationality") team_name: Optional[str] = Field(None, description="Current team (for specific season)") team_color: Optional[str] = Field(None, description="Team color hex code") class ConstructorInfo(BaseModel): """Information about an F1 constructor/team.""" constructor_id: str = Field(..., description="Unique constructor identifier") constructor_name: str = Field(..., description="Constructor/team name") nationality: str = Field(..., description="Constructor's nationality") team_color: Optional[str] = Field(None, description="Team color hex code") drivers: Optional[list[str]] = Field(None, description="Driver names in the team (for specific season)") class CircuitInfo(BaseModel): """Information about an F1 circuit.""" circuit_id: str = Field(..., description="Unique circuit identifier") circuit_name: str = Field(..., description="Circuit name") location: str = Field(..., description="City/location of the circuit") country: str = Field(..., description="Country where the circuit is located") lat: Optional[float] = Field(None, description="Latitude coordinate") lng: Optional[float] = Field(None, description="Longitude coordinate") url: Optional[str] = Field(None, description="Wikipedia or official URL") class TireCompoundInfo(BaseModel): """Information about tire compounds.""" compound_name: str = Field(..., description="Compound name (SOFT, MEDIUM, HARD, etc.)") color: Optional[str] = Field(None, description="Display color for the compound") description: Optional[str] = Field(None, description="Compound description") class ReferenceDataResponse(BaseModel): """Response containing reference/metadata information.""" reference_type: str = Field(..., description="Type: 'driver', 'constructor', 'circuit', 'tire_compounds'") year: Optional[int] = Field(None, description="Season year (if applicable)") # Optional data based on type drivers: Optional[list[DriverInfo]] = Field(None, description="Driver information") constructors: Optional[list[ConstructorInfo]] = Field(None, description="Constructor information") circuits: Optional[list[CircuitInfo]] = Field(None, description="Circuit information") tire_compounds: Optional[list[TireCompoundInfo]] = Field(None, description="Tire compound information") # Metadata total_records: int = Field(..., description="Total number of records returned") name_filter: Optional[str] = Field(None, description="Name filter applied (if any)")

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/praneethravuri/pitstop'

If you have feedback or need assistance with the MCP directory API, please join our Discord server