Race Calendar F1
REMOTE · RACECALENDAR.APP · SCANNED AUG 3
Anonymous read-only Formula 1 tools, resources, prompts, completion, and interactive dashboard.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score →
Endpoint Security83
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one. See how to fix → View diagnostics → Partial
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC is configured correctly; the domain's records validate against the full chain to the root. View diagnostics → Pass
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability85
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (excellent).Pass
- Tool/resource definitions use about 1598 tokens (~88/item across 18 items; 16 tools + 2 resources), lean.Pass
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management27
- Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Capabilities100
- Implements a current MCP spec version (2026-07-28).Pass
- Supports UI / widget rendering.Pass
Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.
remote · racecalendar.app
claude mcp add --transport http app-racecalendar-f1 https://racecalendar.app/mcp
[mcp_servers.app-racecalendar-f1] url = "https://racecalendar.app/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"app-racecalendar-f1": {
"type": "remote",
"url": "https://racecalendar.app/mcp",
"enabled": true
}
}
} openclaw mcp add app-racecalendar-f1 --url https://racecalendar.app/mcp --transport streamable-http
mcp_servers:
app-racecalendar-f1:
url: "https://racecalendar.app/mcp" {
"mcpServers": {
"app-racecalendar-f1": {
"type": "http",
"url": "https://racecalendar.app/mcp"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 2 Aug 26 +7
- Schema quality: unverified → excellent ▲ functional
- 1 Aug 26 −6
- Schema quality: excellent → unverified ▼ functional
- 31 Jul 26 +5
- Tool coverage: 86% → 100% ▲ functional
- Schema quality: good → excellent functional
- MCP protocol: Implements a current MCP spec version (2026-07-28). functional
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 30 Jul 26 +1
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 28 Jul 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 3 to 7. That category is still filling its 30-day observation window: 1 days of observed history at the previous scan, 2 at this one. The score rises as the window fills, whether or not the server changes.
- 27 Jul 26 +1
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 26 Jul 26 70
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 3 Aug 2026 · Probed https://racecalendar.app/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=racecalendar.app | CN=WE1,O=Google Trust Services,C=US | 25 Jul 2026 | 23 Oct 2026 | ECDSA 256 | ECDSA-SHA256 | 9aa74ed1acb9ea670e0abc1476cd57d0 |
| SANs: racecalendar.app, admin.racecalendar.app, *.admin.racecalendar.app | ||||||
| CN=WE1,O=Google Trust Services,C=US (CA) | CN=GTS Root R4,O=Google Trust Services LLC,C=US | 13 Dec 2023 | 20 Feb 2029 | ECDSA 256 | ECDSA-SHA384 | 7ff31977972c224a76155d13b6d685e3 |
| CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) | CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE | 15 Nov 2023 | 28 Jan 2028 | ECDSA 384 | SHA256-RSA | 7fe530bf331343bedd821610493d8a1b |
DNSSEC secure
Validation of racecalendar.app. — Secure
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| app. | present | 23684 | 8 | Verified |
| racecalendar.app. | present | 2371 | 13 | Verified |
| racecalendar.app. | Verified address RRset verified with the apex keys |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
| Header | Value |
|---|---|
| strict-transport-security | max-age=31536000; includeSubDomains |
| x-content-type-options | nosniff |
| referrer-policy | strict-origin-when-cross-origin |
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://racecalendar.app/mcp | Verified | 200 | |
| http (plaintext) | http://racecalendar.app/mcp | HTTPS enforced | 301 | https://racecalendar.app/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.
compare_f1_competitors Compare F1 Competitors ~85
Compare two Formula 1 drivers or constructors in one season using sourced standings and explicitly described calculations.
| Name | Type | Req | Description |
|---|---|---|---|
| competitorType | string | yes | Compare two drivers or two constructors. |
| left | string | yes | First driver or constructor name to compare. |
| right | string | yes | Second driver or constructor name to compare. |
| year | integer | yes | Formula 1 season year. |
| Name | Type | Req | Description |
|---|---|---|---|
| comparison | object | yes | — |
| generatedAt | string | yes | — |
| kind | string | yes | — |
| leader | string | yes | — |
| left | object | yes | — |
| methodology | string | yes | — |
| right | object | yes | — |
| source | object | yes | — |
| year | integer | yes | — |
No examples provided.
get_f1_circuit F1 Circuit Details ~127
Get circuit metadata and normalized track geometry for a race weekend selected by meeting key, round, race name, or slug.
| Name | Type | Req | Description |
|---|---|---|---|
| meetingKey | integer | — | OpenF1 meeting key for the race weekend. |
| raceName | string | — | Human-friendly Grand Prix or race name, matched case-insensitively. |
| round | integer | — | Championship round number for the season. |
| slug | string | — | Race Calendar race slug, such as round-6-miami-grand-prix or miami-grand-prix. |
| year | integer | yes | Formula 1 season year. |
| Name | Type | Req | Description |
|---|---|---|---|
| canonicalUrl | string | yes | — |
| circuit | object | yes | — |
| meetingKey | integer | yes | — |
| raceName | string | yes | — |
| round | integer | yes | — |
| sourceUrl | string | yes | — |
| year | integer | yes | — |
No examples provided.
get_f1_driver_session_summary F1 Driver Session Summary ~94
Get one driver's lap, sector, speed, grid, position, and interval summary for a Formula 1 session.
| Name | Type | Req | Description |
|---|---|---|---|
| driverNumber | integer | yes | Permanent or event-specific Formula 1 car number. |
| meetingKey | integer | yes | OpenF1 meeting key for the race weekend. |
| sessionKey | integer | yes | OpenF1 session key. |
| year | integer | yes | Formula 1 season year. |
| Name | Type | Req | Description |
|---|---|---|---|
| averageLap | — | yes | — |
| bestPosition | — | yes | — |
| bestSector1 | — | yes | — |
| bestSector2 | — | yes | — |
| bestSector3 | — | yes | — |
| bestSpeedTrap | — | yes | — |
| canonicalUrl | string | yes | — |
| driver | object | yes | — |
| fastestLap | — | yes | — |
| finalPosition | — | yes | — |
| generatedAt | string | yes | — |
| hasData | boolean | yes | — |
| intervalSamples | integer | yes | — |
| lapCount | integer | yes | — |
| meetingKey | integer | yes | — |
| sessionKey | integer | yes | — |
| sourceUrl | string | yes | — |
| startingPosition | — | yes | — |
| year | integer | yes | — |
No examples provided.
get_f1_historical_race_result Historical race result ~80
Get one complete historical Formula 1 race classification by season and championship round. Use only for a single race; for two or more races, call get_f1_historical_race_results once instead.
| Name | Type | Req | Description |
|---|---|---|---|
| round | integer | yes | Championship round number in the historical season. |
| year | integer | yes | Formula 1 season year. |
| Name | Type | Req | Description |
|---|---|---|---|
| canonicalUrl | string | yes | — |
| generatedAt | string | yes | — |
| race | object | yes | — |
| results | array | yes | — |
| round | integer | yes | — |
| sourceUrl | string | yes | — |
| year | integer | yes | — |
No examples provided.
get_f1_historical_race_results Historical race results ~78
Get 2 to 8 complete historical Formula 1 race classifications in one consolidated request, with per-race sources and bounded partial failures. Use once for multi-race questions instead of repeating get_f1_historical_race_result.
| Name | Type | Req | Description |
|---|---|---|---|
| races | array | yes | Two to eight historical races to retrieve in one request. |
| Name | Type | Req | Description |
|---|---|---|---|
| races | array | yes | — |
| unavailable | array | yes | — |
No examples provided.
get_f1_live_session Live F1 Session Status ~98
Get the latest explicitly timestamped status for the current or selected Formula 1 session. Returns unavailable rather than implying stale data is live.
| Name | Type | Req | Description |
|---|---|---|---|
| meetingKey | integer | — | Optional OpenF1 meeting key. Omit to discover the current live session. |
| sessionKey | integer | — | Optional OpenF1 session key. Requires meetingKey when supplied. |
| year | integer | — | Season to inspect. Defaults to the current UTC season. |
| Name | Type | Req | Description |
|---|---|---|---|
| dataDelaySeconds | — | yes | — |
| dataTimestamp | — | yes | — |
| endDate | — | yes | — |
| isLive | boolean | yes | — |
| meetingKey | — | yes | — |
| message | — | yes | — |
| observedAt | string | yes | — |
| sessionKey | — | yes | — |
| sessionKind | — | yes | — |
| sessionName | — | yes | — |
| sourceUrl | string | yes | — |
| startDate | — | yes | — |
| state | string | yes | — |
| year | integer | yes | — |
No examples provided.
get_f1_next_event Next F1 Event ~98
Find the next Formula 1 session or race weekend from a UTC timestamp, including an event already in progress.
| Name | Type | Req | Description |
|---|---|---|---|
| from | string | — | UTC timestamp to search from. Defaults to the current time. |
| level | string | — | Return the next individual session or the next race weekend. Defaults to session. |
| year | integer | — | Season to search. Defaults to the season containing the search timestamp, then the following season if needed. |
| Name | Type | Req | Description |
|---|---|---|---|
| canonicalUrl | string | yes | — |
| event | — | yes | — |
| level | string | yes | — |
| searchedFrom | string | yes | — |
| sourceUrl | string | yes | — |
| year | integer | yes | — |
No examples provided.
get_f1_race_preview Spoiler-safe F1 Race Preview ~132
Get a structurally spoiler-safe race-weekend briefing containing schedule and venue context but no classifications, winners, podiums, or result fields.
| Name | Type | Req | Description |
|---|---|---|---|
| meetingKey | integer | — | OpenF1 meeting key for the race weekend. |
| raceName | string | — | Human-friendly Grand Prix or race name, matched case-insensitively. |
| round | integer | — | Championship round number for the season. |
| slug | string | — | Race Calendar race slug, such as round-6-miami-grand-prix or miami-grand-prix. |
| year | integer | yes | Formula 1 season year. |
| Name | Type | Req | Description |
|---|---|---|---|
| canonicalUrl | string | yes | — |
| raceWeekend | object | yes | — |
| sourceUrl | string | yes | — |
| spoilerSafe | boolean | yes | — |
| year | integer | yes | — |
No examples provided.
get_f1_race_weekend F1 Race Weekend ~132
Get one public Formula 1 race weekend by season and exactly one friendly selector: meeting key, round, race name, or slug.
| Name | Type | Req | Description |
|---|---|---|---|
| meetingKey | integer | — | OpenF1 meeting key for the race weekend. |
| raceName | string | — | Human-friendly Grand Prix or race name, matched case-insensitively. |
| round | integer | — | Championship round number for the season. |
| slug | string | — | Race Calendar race slug, such as round-6-miami-grand-prix or miami-grand-prix. |
| year | integer | yes | Formula 1 season year. |
| Name | Type | Req | Description |
|---|---|---|---|
| canonicalUrl | string | yes | — |
| raceWeekend | object | yes | — |
| sourceUrl | string | yes | — |
| year | integer | yes | — |
No examples provided.
get_f1_season_schedule F1 Season Schedule ~49
Get the verified public Formula 1 schedule for a season, including UTC session times, freshness, results, and canonical links.
| Name | Type | Req | Description |
|---|---|---|---|
| year | integer | yes | Formula 1 season year. |
| Name | Type | Req | Description |
|---|---|---|---|
| canonicalUrl | string | yes | — |
| generatedAt | string | yes | — |
| lastVerifiedAt | string | yes | — |
| raceCount | integer | yes | — |
| races | array | yes | — |
| refreshIntervalSeconds | integer | yes | — |
| source | string | yes | — |
| sourceUrl | string | yes | — |
| staleAfter | string | yes | — |
| year | integer | yes | — |
No examples provided.
get_f1_session_analysis F1 Session Analysis ~91
Get one strictly typed analysis view for a Formula 1 session: strategy, weather, timeline, or championship implications.
| Name | Type | Req | Description |
|---|---|---|---|
| kind | string | yes | Analysis view to return for the selected session. |
| meetingKey | integer | yes | OpenF1 meeting key for the race weekend. |
| sessionKey | integer | yes | OpenF1 session key. |
| year | integer | yes | Formula 1 season year. |
| Name | Type | Req | Description |
|---|---|---|---|
| analysis | — | yes | — |
| canonicalUrl | string | yes | — |
| generatedAt | string | yes | — |
| hasData | boolean | yes | — |
| meetingKey | integer | yes | — |
| sessionKey | integer | yes | — |
| sourceUrl | string | yes | — |
| year | integer | yes | — |
No examples provided.
get_f1_session_results F1 Session Results ~80
Get the published classification for one Formula 1 session by season, meeting key, and session key, with positions and available result details.
| Name | Type | Req | Description |
|---|---|---|---|
| meetingKey | integer | yes | OpenF1 meeting key for the race weekend. |
| sessionKey | integer | yes | OpenF1 session key. |
| year | integer | yes | Formula 1 season year. |
| Name | Type | Req | Description |
|---|---|---|---|
| canonicalUrl | string | yes | — |
| meetingKey | integer | yes | — |
| resultCount | integer | yes | — |
| results | array | yes | — |
| sessionKey | integer | yes | — |
| sourceUrl | string | yes | — |
| year | integer | yes | — |
No examples provided.
get_f1_standings F1 Standings ~42
Get the public Formula 1 driver and constructor standings for a season with canonical source links.
| Name | Type | Req | Description |
|---|---|---|---|
| year | integer | yes | Formula 1 season year. |
| Name | Type | Req | Description |
|---|---|---|---|
| canonicalUrl | string | yes | — |
| constructors | array | yes | — |
| drivers | array | yes | — |
| sessionKey | integer | yes | — |
| sourceUrl | string | yes | — |
| year | integer | yes | — |
No examples provided.
get_f1_starting_grid F1 Starting Grid ~83
Get the published starting grid for one Formula 1 session by season, meeting key, and session key; use session results for the final classification.
| Name | Type | Req | Description |
|---|---|---|---|
| meetingKey | integer | yes | OpenF1 meeting key for the race weekend. |
| sessionKey | integer | yes | OpenF1 session key. |
| year | integer | yes | Formula 1 season year. |
| Name | Type | Req | Description |
|---|---|---|---|
| canonicalUrl | string | yes | — |
| entryCount | integer | yes | — |
| meetingKey | integer | yes | — |
| sessionKey | integer | yes | — |
| sourceUrl | string | yes | — |
| startingGrid | array | yes | — |
| year | integer | yes | — |
No examples provided.
get_f1_updates Recent F1 Changes ~79
Get recent public schedule, standings, and result changes after an optional timestamp or cursor.
| Name | Type | Req | Description |
|---|---|---|---|
| cursor | string | — | Opaque continuation cursor returned by an earlier updates request. |
| limit | integer | — | Maximum changes to return. Defaults to 20 and never exceeds 50. |
| since | string | — | Only return changes after this UTC timestamp. |
| Name | Type | Req | Description |
|---|---|---|---|
| generatedAt | string | yes | — |
| items | array | yes | — |
| nextCursor | — | yes | — |
| since | — | yes | — |
No examples provided.
search_f1_history Search F1 History ~105
Search the Formula 1 history index for drivers, teams, circuits, and races with bounded, cursor-based results.
| Name | Type | Req | Description |
|---|---|---|---|
| cursor | string | — | Opaque continuation cursor returned by an earlier history search. |
| limit | integer | — | Maximum results to return. Defaults to 10 and never exceeds 20. |
| query | string | yes | Driver, team, circuit, or race text to find. |
| types | array | — | Optional unique entity types to include in the search. |
| Name | Type | Req | Description |
|---|---|---|---|
| generatedAt | string | yes | — |
| items | array | yes | — |
| nextCursor | — | yes | — |
| query | string | yes | — |
| sourceUpdatedAt | — | yes | — |
| types | array | yes | — |
No examples provided.