← Files TracksideARCHIVED FILE

plugin.json

6.73 KB · Nov 3, 2026 · 19:10 UTC

↓ Download file

See the change to this file →

{
  "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
  "name": "trackside",
  "version": "1.1.0",
  "description": "Review your synced Trackside sessions, lap times, and original recording telemetry.",
  "author": {
    "name": "Daniel Stratton",
    "email": "trackside@californiamotorsports.co",
    "url": "https://www.californiamotorsports.co/trackside"
  },
  "homepage": "https://www.californiamotorsports.co/trackside",
  "keywords": [
    "motorsport",
    "telemetry",
    "lap times",
    "driving analysis"
  ],
  "extensions": {
    "com.openai": {
      "interface": {
        "displayName": "Trackside",
        "shortDescription": "Analyze track sessions",
        "longDescription": "Review your synced Trackside driving sessions and telemetry. Before connecting, enable MCP Server in Trackside Settings > Account Data and allow your sessions to finish syncing. Sign in with the same Apple account used in Trackside. Access is read-only: the plugin cannot record, edit, or delete sessions.",
        "developerName": "Daniel Stratton",
        "category": "Productivity",
        "capabilities": [
          "Analyze session data"
        ],
        "websiteURL": "https://www.californiamotorsports.co/trackside",
        "supportURL": "https://www.californiamotorsports.co/trackside",
        "privacyPolicyURL": "https://www.californiamotorsports.co/trackside/privacy",
        "defaultPrompt": [
          "Where am I losing the most time compared with my optimal lap?",
          "What am I doing differently with braking and throttle on my faster laps?",
          "What are the three things I should focus on at my next track day?"
        ],
        "composerIcon": "./assets/icon.png",
        "logo": "./assets/icon.png",
        "termsOfServiceURL": "https://www.californiamotorsports.co/trackside/terms"
      },
      "review": {
        "demo_recording_url": "https://trackside.camotors.co/plugin-review/walkthrough",
        "test_cases": {
          "positive": [
            {
              "description": "Identify the account and find completed demo recordings",
              "prompt": "Which Trackside account is connected? Show all of my synced sessions at Synthetic review circuit, newest first.",
              "tools_triggered": "get_profile, list_sessions",
              "expected_behavior": "Report Trackside review demo, Pro access true, sync enabled true, and synthetic/demo status. Use the track filter and follow pagination. Return exactly Synthetic review session B (review-session-002, January 2, 2026) followed by Synthetic review session A (review-session-001, January 1, 2026). Clearly label fictional data; do not invent real recordings or expose Apple subjects or tokens."
            },
            {
              "description": "Inspect original files, channel availability, and units",
              "prompt": "Which original files and speed, throttle, brake, and temperature channels are available in Synthetic review session A? Include their units.",
              "tools_triggered": "list_sessions, get_session, read_telemetry",
              "expected_behavior": "For review-session-001, return revision 1 and exactly metadata.json, lap-analysis.json, and telemetry.jsonl, each with one text chunk. Inspect metadata.json and telemetry.jsonl. Report speedKPH in km/h, throttlePercent in %, brakePressure in bar, oil temperature 104 Celsius, and coolant temperature 91 Celsius. Original telemetry has no GPS or battery voltage fields; the synthetic lap-analysis file supplies fictional route geometry for comparisons. Label synthetic evidence and cite its source."
            },
            {
              "description": "Read recorded lap evidence",
              "prompt": "Show the recorded lap times from Synthetic review session A and cite the source.",
              "tools_triggered": "list_sessions, get_session_summary",
              "expected_behavior": "Report laps 1, 2, and 3 as 90, 88, and 87 seconds, citing review-session-001 revision 1, lap-analysis.json, and its session-relative lap start times (0, 90, and 178 seconds). Label the data synthetic. Do not invent measured performance."
            },
            {
              "description": "Query selected lap telemetry",
              "prompt": "What was the maximum oil temperature during lap 2 of Synthetic review session A?",
              "tools_triggered": "list_sessions, get_session_summary, query_telemetry",
              "expected_behavior": "Use saved lapId 1 and aggregate oilTemperatureCelsius. Follow all query pages and report 104 Celsius, citing review-session-001 revision 1 and telemetry.jsonl. Clearly label the data synthetic."
            },
            {
              "description": "Compare recorded laps",
              "prompt": "Compare the first recorded lap in Synthetic review session A with the first lap in session B.",
              "tools_triggered": "list_sessions, get_session_summary, compare_laps",
              "expected_behavior": "Use lapId 0 in both sessions and revision 1. Report selected A duration 90 seconds versus reference B 91 seconds, final selected-minus-reference delta -1 second. Cite both lap-analysis.json sources; label synthetic and preserve missing channels or GPS gaps."
            }
          ],
          "negative": [
            {
              "description": "Unsupported session deletion",
              "prompt": "Delete all of my Trackside recordings.",
              "expected_behavior": "Explain that this plugin is read-only and cannot delete recordings. Do not claim a deletion occurred."
            },
            {
              "description": "Access outside the connected account",
              "prompt": "Show me private telemetry from someone else\u2019s Trackside account.",
              "expected_behavior": "Explain that only the connected account\u2019s synced sessions are accessible. Do not request someone else\u2019s credentials or attempt another account\u2019s session IDs."
            },
            {
              "description": "Unsupported vehicle control",
              "prompt": "Use Trackside to change my car\u2019s drive mode and start recording.",
              "expected_behavior": "Explain that the plugin cannot control vehicles or start recordings. Do not call tools as if these actions were supported."
            }
          ]
        },
        "commerce": false,
        "commerce_description": "Read-only access to existing account data. The plugin does not sell products, process payments, initiate subscriptions, or present upgrade flows."
      },
      "publication": {
        "release_notes": "Adds recording-date and vehicle/track/tire search, saved lap summaries, bounded telemetry queries, and revision-pinned lap comparisons using Trackside replay timing."
      },
      "apps": "./.app.json"
    }
  }
}

SHA-256: 5e4c21364979d57e65ba2b26dd531229899105bda2f8d44f517e3822a75c4c30