# Start.gg MCP

> Start.gg MCP Server connects your AI agent directly to Start.gg tournament data. It pulls event IDs from slugs, fetches real-time standings, tracks match sets in a bracket, and allows admins to report results or update seeding—all via natural language commands. Stop clicking through web dashboards; manage the entire esports lifecycle with specific API calls.

## Overview
- **Category:** event-management
- **Price:** Free
- **Tags:** esports, tournaments, brackets, gaming, match-reporting

## Description

You're connecting your AI agent straight into Start.gg tournament data. This server gives you full control over everything—from finding an event by its web link all the way through reporting final match results. You don't gotta click around in a dashboard; your agent handles the whole esports lifecycle using specific API calls.

**`get_event_id`** lets you fetch a tournament's unique Event ID number just by feeding it a URL slug. If you know where the event is online, this tool pulls the specific identifier the system needs to run any other check. You use that ID for everything else.

If you need to find tournaments before you even have an ID, **`get_tournaments_by_country`** lets you filter and list available events based on their country code location. This is key when you're tracking regional circuits or looking for upcoming competition in a specific area.

Once you have the Event ID, checking the current state of play is simple. **`get_event_standings`** pulls the top placements and rankings data for any specified tournament event ID. It shows you who's currently ahead in the standings without leaving your chat window.

To map out the bracket progress, use **`get_event_sets`**. This tool retrieves all matches—or 'sets'—for an entire event, letting you monitor exactly where the brackets are and what results have come through so far. You'll see every match listed there.

For admin tasks that actually change data, you've got a few tools ready to go. If you need to report who won a set of matches, **`report_set`** updates the official event record; remember, you gotta have admin permissions for this one. When the bracket structure changes and you need to save new seeding information for a phase, you run **`update_phase_seeding`**, which manually adjusts and saves that data. These tools let your agent take control of crucial administrative actions.

Basically, you use these commands when your AI client needs more than just read-only access. You'll feed the unique slug to get the ID; then you can query standings with **`get_event_standings`** or map out every match in the bracket using **`get_event_sets`**. If you gotta find an event by location, run **`get_tournaments_by_country`** first. And if it's time to update records—whether that means submitting winners with **`report_set`** or setting up next-round seeding with **`update_phase_seeding`**—your agent handles those commands too.

## Tools

### get_event_sets
Retrieves all matches (sets) for an event, allowing monitoring of bracket progress and results.

### get_event_standings
Pulls the current rankings and top placements data for a specified tournament event ID.

### get_event_id
Fetches the unique Event ID number by providing a tournament URL slug.

### report_set
Updates the event record by reporting set winners; admin permissions required.

### get_tournaments_by_country
Filters and lists available tournaments based on their country code location.

### update_phase_seeding
Adjusts and saves new seeding data for a tournament's current phase structure.

## Prompt Examples

**Prompt:** 
```
Find the event ID for the slug 'tournament/genesis-9-1/event/ultimate-singles'.
```

**Response:** 
```
I've found the event ID. For the Genesis 9 Ultimate Singles event, the ID is 783210. You can use this ID to fetch standings or match sets.
```

**Prompt:** 
```
Show me the top standings for event ID 783210.
```

**Response:** 
```
Fetching standings... Here are the top placements: 1st: MkLeo, 2nd: Sparg0, 3rd: Tweek. Would you like to see more results or specific match details?
```

**Prompt:** 
```
List the latest tournaments happening in the US.
```

**Response:** 
```
I've found several active tournaments in the US, including 'Super Smash Con' and 'The Big House'. Which one would you like to explore further?
```

## Capabilities

### Discover Event IDs
Retrieves the unique Start.gg ID number using a specific slug from a tournament URL.

### Find Tournaments by Country
Lists active or upcoming tournaments in a specified geographic region using country codes.

### Pull Standings Data
Fetches the current rankings and top placements for any specific event ID.

### Map Match Sets
Queries all sets (matches) within an event's bracket to monitor progress and results.

### Report Match Results
Updates the system by reporting set winners, which requires admin credentials.

### Adjust Tournament Seeding
Manually updates phase seeding for a tournament's bracket structure.

## Use Cases

### A Data Analyst needs standings for 10 different events.
Instead of visiting ten separate URLs and copy-pasting IDs, the analyst asks their agent to run `get_event_id` on all slugs first. Then, it loops through those IDs, calling `get_event_standings` for every single one. The resulting data dump is clean JSON, ready for a spreadsheet.

### A Tournament Ops Manager needs to report results quickly.
The final match finished and the winners need recording. Instead of logging into the admin dashboard and clicking through three screens, the manager instructs their agent: 'Report set winners for Event ID 123.' The tool runs `report_set` immediately.

### A League Coordinator is scouting new regional events.
The league needs to find all active fighting game tournaments in Germany. They ask the agent, which uses `get_tournaments_by_country` with the code 'DE'. The agent returns a list of specific local tournament names and IDs.

### A League Coordinator must rebuild a bracket structure.
The playoff format changed mid-event. Instead of manually updating every single pairing, the coordinator tells their agent to use `update_phase_seeding` on Event ID 456 and provides the new seeding array. The system updates it instantly.

## Benefits

- Stop searching for IDs. Use `get_event_id` to pull a unique Event ID from any tournament slug in seconds, which is the first step for all other data pulls.
- Avoid manual standings checks. Running `get_event_standings` gives you real-time top placements instantly, perfect for live reporting or pre-match analysis.
- Handle complex bracket tracking with `get_event_sets`. You get a list of every match in the set, skipping through multiple pages on the website.
- Coordinate operations without admin dashboards. Use `report_set` to submit winner data and `update_phase_seeding` when structural changes happen—all via your AI client.
- Scope out new talent pools using `get_tournaments_by_country`. You filter regional scenes just by providing a country code.

## How It Works

The bottom line is: your agent talks directly to Start.gg's backend API, bypassing the need to navigate any web interface.

1. Subscribe to the server and enter your Start.gg Personal Access Token.
2. Your AI client sends a request (e.g., 'Get standings for slug X').
3. The MCP Server executes the necessary tool (`get_event_standings`) and returns structured, ready-to-use data.

## Frequently Asked Questions

**How do I get an Event ID using the Start.gg MCP Server?**
You use `get_event_id`. Just give the tool a slug (like 'tournament/xyz-123'). It returns the unique numeric ID you need for every other function, like standings.

**Can I use get_event_standings to check who won?**
The `get_event_standings` tool provides top placements and rankings. To confirm a winner or report the result, you need the `report_set` tool (requires admin permissions).

**What is the difference between get_event_sets and get_event_standings?**
`get_event_sets` gives you a list of all matches in the bracket. `get_event_standings` only focuses on who placed where (the ranking) for the event.

**Do I need admin rights to use Start.gg MCP Server?**
Only when you run operational tools like `report_set` or `update_phase_seeding`. Reading data (standings, IDs) does not require elevated permissions.

**How do I find tournaments in a specific country using Start.gg MCP Server?**
Use the `get_tournaments_by_country` tool and pass the two-letter ISO code for the country you want to search.

**What permissions are required to successfully run the `report_set` tool?**
You must have administrative access within Start.gg for this function to work. This tool writes data directly into a tournament's official records, so only users with full admin rights can execute it.

**How do I get event standings and sets using the ID retrieved by `get_event_id`?**
You pass the unique Event ID to both tools. First, use `get_event_id` with a slug to find the target ID. Then, plug that ID into either `get_event_standings` or `get_event_sets` for all subsequent data calls.

**What do I need to set up before calling any function, like `get_tournaments_by_country`?**
You must provide your Start.gg Personal Access Token when connecting the server. This token authenticates your agent and gives it permission to interact with your event data.

**How do I find the Event ID for a specific tournament?**
Use the `get_event_id` tool by providing the slug from the tournament URL (e.g., 'tournament/genesis-9-1/event/ultimate-singles'). The agent will return the unique numeric ID needed for other tools.

**Can I report match results if I am a tournament administrator?**
Yes! If your token has admin permissions, you can use the `report_set` tool with the Set ID and Winner ID to update the bracket results directly.

**How can I see which tournaments are happening in my country?**
Use the `get_tournaments_by_country` tool with your country code (e.g., 'US' or 'BR'). You can also specify how many results you want to see per page.