canonical: https://jentic.com/apis/mario-kart-tour-api.herokuapp.com/mario-kart-tour-main

# Mario Kart Tour API

Jentic publishes the only available OpenAPI specification for Mario Kart Tour API, keeping it validated and agent-ready. The Mario Kart Tour API is an unofficial fan-built service that exposes scraped game data for Nintendo's Mario Kart Tour mobile racer. It returns drivers, karts, gliders, and courses as JSON resources via nine GET endpoints with no authentication. The API is best suited to community fan sites, leaderboards, build optimisers, and chatbots that need a structured data feed for Mario Kart Tour entities rather than for production gameplay or commercial use.

## For AI agents

Read scraped Mario Kart Tour game data - drivers, karts, gliders, and courses - through nine unauthenticated GET endpoints returning JSON.

## Scope

Does not handle live race data, player accounts, leaderboards, or any official Nintendo service - use for unofficial driver, kart, glider, and course catalogue lookups only.

## Capabilities

- List all Mario Kart Tour drivers via `/api/drivers` and look up a single driver by ID through `/api/drivers/{driverId}`
- Browse the kart catalogue with `/api/karts` and fetch details for one kart via `/api/karts/{kartId}`
- Browse the glider catalogue with `/api/gliders` and fetch a single glider through `/api/gliders/{gliderId}`
- List every course in `/api/courses` and fetch course detail through `/api/courses/{courseId}`
- Discover the available endpoint groups with the index endpoint at /api
- Combine driver, kart, and glider lookups to build best-build recommendations for a chosen course
- Power a fan-site search box that filters drivers, karts, gliders, or courses on cached responses

## Use cases

### Fan Wiki Data Source

Mario Kart Tour fan wikis and stat trackers call `/api/drivers`, `/api/karts`, `/api/gliders`, and `/api/courses` to populate browsable catalogue pages without manually scraping the game UI. Each list endpoint returns the full collection in a single response and the per-ID endpoints supply the detail view. Integration is a few hours behind a static-site generator or a small caching backend.

Example prompt: Call `/api/drivers` and `/api/karts` in parallel and return a merged JSON document grouping each driver with the karts that share its rarity tier.

### Build Optimiser Backend

Build optimiser tools that recommend the best driver, kart, and glider combination for a given course read `/api/courses/{courseId}` for the course's bonus rules and the three list endpoints for the candidate items. The 9 endpoints return small JSON payloads that are cheap to cache for an entire optimisation session. A working prototype takes under a day.

Example prompt: Call `/api/courses/14` to read the bonus tags, then iterate over `/api/drivers`, `/api/karts`, and `/api/gliders` to score and return the top three loadouts.

### Discord Bot Game Lookups

Discord bots in Mario Kart Tour fan communities call the per-ID endpoints (`/api/drivers/{driverId}`, `/api/karts/{kartId}`, etc.) on demand to answer in-channel questions like 'show me the stats for Pink Gold Peach'. Because the API has no authentication a bot integration is just an HTTP client and a handful of slash commands.

Example prompt: Match a slash-command argument against `/api/drivers`, take the first hit's ID, and call `/api/drivers/{driverId}` to return the driver's full stats.

### Static Site Catalogue Refresh

Static fan sites call all four list endpoints during a scheduled rebuild and write the responses to JSON files that drive the rendered catalogue pages. Because the API has no authentication and no rate-limit signal in the spec, fan sites cache aggressively and rebuild on a daily or weekly cron rather than on every page view.

Example prompt: Fetch `/api/drivers`, `/api/karts`, `/api/gliders`, and `/api/courses`, write each response to a JSON file in the site repo, and commit the changes.

### AI Agent Mario Kart Tour Lookups

An AI agent powering a fan-community assistant calls the Mario Kart Tour API through Jentic to answer driver, kart, glider, and course questions without scraping the game UI. Jentic exposes each operation as a typed tool with a discoverable input schema so the agent invokes the right per-ID endpoint based on the user's question. Setup runs through search, load, and execute in under an hour.

Example prompt: Search Jentic for 'look up a Mario Kart Tour driver', load the schema for `/api/drivers/{driverId}`, and execute the call for the driver ID matching 'Mario'.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | `/api` | Index of available endpoint groups |
| GET | `/api/drivers` | List all drivers |
| GET | `/api/drivers/{driverId}` | Fetch one driver by ID |
| GET | `/api/karts` | List all karts |
| GET | `/api/karts/{kartId}` | Fetch one kart by ID |
| GET | `/api/gliders` | List all gliders |
| GET | `/api/courses` | List all courses |
| GET | `/api/courses/{courseId}` | Fetch one course by ID |

## Key resources

- **Drivers** — List and fetch driver records via `/api/drivers` and `/api/drivers/{driverId}`
- **Karts** — List and fetch kart records via `/api/karts` and `/api/karts/{kartId}`
- **Gliders** — List and fetch glider records via `/api/gliders` and `/api/gliders/{gliderId}`
- **Courses** — List and fetch course records via `/api/courses` and `/api/courses/{courseId}`

## Why Jentic

- **Setup:** Wiring this unofficial Mario Kart Tour API by hand means learning its /api driver, kart, glider, and course paths and parsing each response yourself, even though it needs no auth. Through Jentic you install once, import the Mario Kart Tour API from the API Directory, and your agent calls it.
- **Permission scoping:** The Mario Kart Tour endpoints are read-only catalogue lookups, so scoping is by operation: you limit the agent to the operations it needs, such as listing drivers or looking up a kart or course by id, and leave out the rest. Every operation you allow is one you have chosen, so the agent stays inside that set.
- **Credential handling:** This API needs no credential, so Jentic One stores none for it. Calls run through your own Jentic One instance under the same execution policy as any other operation.
- **Discovery method:** Agents search Jentic by intent such as 'list Mario Kart Tour drivers' or 'look up a kart by id', and Jentic returns the matching operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Riot Games API** — Riot's API exposes official game data for League of Legends and other Riot titles; Mario Kart Tour API is a fan-built scraper.
- **Bungie API** — Bungie offers an official Destiny game-data API; Mario Kart Tour API is unofficial and scoped to one mobile title.
- **Giant Bomb** — Giant Bomb provides cross-title video-game metadata that complements the Mario Kart Tour-specific data this API returns.
- **Comic Vine** — Comic Vine adds character and franchise metadata that pairs with Mario Kart Tour's roster data.

## FAQ

### Why is there no official OpenAPI spec for Mario Kart Tour API?

Nintendo does not publish a public Mario Kart Tour API or OpenAPI specification - this is a community-built scraping service. Jentic generates and maintains this spec so that AI agents and developers can call Mario Kart Tour API via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the Mario Kart Tour API use?

The API requires no authentication. All nine endpoints are public GET requests that return JSON. Through Jentic the calls run anonymously without any vault credential.

### Is the Mario Kart Tour API official?

No. The API is an unofficial fan-built service hosted on Heroku that scrapes Mario Kart Tour game data. It is not endorsed by Nintendo and should not be used for commercial integrations or in any product that interacts with Nintendo accounts.

### What are the rate limits for the Mario Kart Tour API?

The API does not publish a rate limit. Because it runs on a free Heroku-style host the practical guidance is to cache responses aggressively and avoid burst traffic; treat 429 or 503 responses as a signal to back off and retry.

### How do I list every Mario Kart Tour driver through Jentic?

Run `pip install jentic`, search for 'list Mario Kart Tour drivers', load the schema for GET `/api/drivers`, and execute it. Jentic returns the parsed JSON list of drivers ready to use in code.

### Does the API expose live race or leaderboard data?

No. The current spec exposes only static catalogue data - drivers, karts, gliders, and courses. There are no endpoints for live races, player profiles, or current event leaderboards.

### Can I limit what my agent is allowed to do with the Mario Kart Tour API?

Yes. Because you run Jentic One yourself, you decide which of the Mario Kart Tour API operations your agent may call, and your own rules govern that set. Since every endpoint is a read-only catalogue lookup, you scope by operation: allow only what the agent needs, such as listing drivers or fetching a kart or course by ID, and leave the rest out. Any operation you do not permit stays unavailable, so the agent works strictly within the boundary you set.
