FighterAPI
UFC fights since 2000, plus PFL and Bellator: results, round stats, fighters and odds. REST and MCP.
Sollte ich dies verwenden
Qualität und Sicherheit
Befunde (2)
- LOWin get_event
- LOWin get_fighter_fights
Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.
Kontextkosten
Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.
Installieren
Installation mit einem Klick
Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:
{
"mcpServers": {
"fighterapi": {
"url": "https://mcp.fighterapi.com/mcp"
}
}
}Remote-Endpunkte
https://mcp.fighterapi.com/mcpstreamable-httpWas es kann
Tool-Inventar
Tools (11)
🟢list_events(season, status, limit, offset, league)
Use to find cards. Lists events newest first with the venue, status, number of fights and main event. Filter by season (year) and status (scheduled or final). Costs 1 credit.
Eingabe-Schema
{
"type": "object",
"properties": {
"season": {
"description": "Year, e.g. 2025.",
"type": [
"string",
"number"
]
},
"status": {
"description": "Only upcoming or only completed cards.",
"type": "string",
"enum": [
"scheduled",
"final"
]
},
"limit": {
"description": "Max events (default 50).",
"type": "integer",
"minimum": 1,
"maximum": 200
},
"offset": {
"description": "Page offset; use next_offset.",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"league": {
"description": "League. Defaults to mma. One of: mma, pfl, bellator.",
"type": "string",
"enum": [
"mma",
"pfl",
"bellator"
]
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"events": {
"type": "array",
"items": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
},
"count": {
"type": "number"
},
"next_offset": {
"type": [
"number",
"null"
]
}
},
"required": [
"events",
"count"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢get_event(event_id, league)
Use for one card: every fight in order with the result, method, round and time, judges' scores and referee. Costs 2 credits.
Eingabe-Schema
{
"type": "object",
"properties": {
"event_id": {
"type": "string",
"description": "Event id from list_events or get_schedule."
},
"league": {
"description": "League. Defaults to mma. One of: mma, pfl, bellator.",
"type": "string",
"enum": [
"mma",
"pfl",
"bellator"
]
}
},
"required": [
"event_id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"event": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"bouts": {
"type": "array",
"items": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
},
"count": {
"type": "number"
}
},
"required": [
"event",
"bouts",
"count"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢get_schedule(days, league)
Use for upcoming fights: every scheduled bout in the next N days (default 30) with the current moneyline from any book that has posted one. Costs 2 credits.
Eingabe-Schema
{
"type": "object",
"properties": {
"days": {
"description": "Days ahead (default 30, max 180).",
"type": "integer",
"minimum": 1,
"maximum": 180
},
"league": {
"description": "League. Defaults to mma. One of: mma, pfl, bellator.",
"type": "string",
"enum": [
"mma",
"pfl",
"bellator"
]
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"days": {
"type": "number"
},
"bouts": {
"type": "array",
"items": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
},
"count": {
"type": "number"
}
},
"required": [
"days",
"bouts",
"count"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢get_fight(bout_id, league)
Use for everything about one fight: the result, both fighters' full stat sheets (strikes by target and position, takedowns, control time, guard passes, reversals, submission attempts; UFC only, null elsewhere and where the source has no sheet), round-by-round lines (UFC only), each fighter's rating before and after, and the opening and closing moneyline from each book that posted one (2024 on). Costs 5 credits.
Eingabe-Schema
{
"type": "object",
"properties": {
"bout_id": {
"type": "string",
"description": "Fight id (bout_id) from get_event or get_fighter_fights."
},
"league": {
"description": "League. Defaults to mma. One of: mma, pfl, bellator.",
"type": "string",
"enum": [
"mma",
"pfl",
"bellator"
]
}
},
"required": [
"bout_id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"bout": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"fighters": {
"type": "array",
"items": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
},
"rounds": {
"anyOf": [
{
"type": "array",
"items": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
},
{
"type": "null"
}
]
},
"rounds_note": {
"type": "string"
},
"odds": {
"type": "array",
"items": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
}
},
"required": [
"bout",
"fighters",
"rounds",
"odds"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢search_fighters(query, weight_class, limit, league)
Use to find a fighter's id by name or nickname (accents optional). Returns weight class, country, pro record, number of fights in the promotion (bouts; ufc_bouts for the UFC only) and last fight date. Costs 1 credit.
Eingabe-Schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 2,
"description": "Name or nickname, e.g. Topuria or 'El Matador'."
},
"weight_class": {
"description": "e.g. Lightweight, Women's Strawweight.",
"type": "string"
},
"limit": {
"description": "Max results (default 20).",
"type": "integer",
"minimum": 1,
"maximum": 100
},
"league": {
"description": "League. Defaults to mma. One of: mma, pfl, bellator.",
"type": "string",
"enum": [
"mma",
"pfl",
"bellator"
]
}
},
"required": [
"query"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"fighters": {
"type": "array",
"items": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
},
"count": {
"type": "number"
}
},
"required": [
"fighters",
"count"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢get_fighter(fighter_id, league)
Use for one fighter's profile: date of birth, height, reach, stance, gym, record in the promotion by method (record; ufc_record is the same for the UFC and null for other promotions), career rates per 15 minutes from the stat sheets (significant strikes landed and absorbed, accuracy, defense, takedowns, submission attempts, control share; UFC only), current and peak rating, and the last five fights. Costs 5 credits.
Eingabe-Schema
{
"type": "object",
"properties": {
"fighter_id": {
"type": "string",
"description": "Fighter id from search_fighters."
},
"league": {
"description": "League. Defaults to mma. One of: mma, pfl, bellator.",
"type": "string",
"enum": [
"mma",
"pfl",
"bellator"
]
}
},
"required": [
"fighter_id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"fighter": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"record": {
"anyOf": [
{
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
{
"type": "null"
}
]
},
"ufc_record": {
"anyOf": [
{
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
{
"type": "null"
}
]
},
"career_rates": {
"anyOf": [
{
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
{
"type": "null"
}
]
},
"rating": {
"anyOf": [
{
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
{
"type": "null"
}
]
},
"recent_fights": {
"type": "array",
"items": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
}
},
"required": [
"fighter",
"record",
"ufc_record",
"career_rates",
"rating",
"recent_fights"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢get_fighter_fights(fighter_id, limit, offset, league)
Use for a fighter's full history in the promotion: every fight with the opponent, result, method, round, time, strikes landed and absorbed and takedowns (UFC only), rating before and after, and the median closing moneyline across sportsbooks. Costs 5 credits.
Eingabe-Schema
{
"type": "object",
"properties": {
"fighter_id": {
"type": "string",
"description": "Fighter id from search_fighters."
},
"limit": {
"description": "Max fights (default 50).",
"type": "integer",
"minimum": 1,
"maximum": 200
},
"offset": {
"description": "Page offset; use next_offset.",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"league": {
"description": "League. Defaults to mma. One of: mma, pfl, bellator.",
"type": "string",
"enum": [
"mma",
"pfl",
"bellator"
]
}
},
"required": [
"fighter_id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"fighter_id": {
"type": "string"
},
"fights": {
"type": "array",
"items": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
},
"count": {
"type": "number"
},
"next_offset": {
"type": [
"number",
"null"
]
}
},
"required": [
"fighter_id",
"fights",
"count"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢get_leaders(stat, weight_class, since, min_fights, limit)
Use for career leaderboards computed from every fight's stat sheet: sig_landed_per_15 (significant strikes landed per 15 min), sig_absorbed_per_15 (significant strikes absorbed per 15 min), sig_accuracy (significant strike accuracy), sig_defense (significant strike defense), td_per_15 (takedowns landed per 15 min), td_accuracy (takedown accuracy), td_defense (takedown defense), knockdowns (knockdowns), sub_attempts_per_15 (submission attempts per 15 min), control_share (share of fight time in control), finish_rate (wins by KO/TKO or submission, as a share of wins). Filter by weight class, a starting year, and a minimum number of fights (default 5). Costs 5 credits.
Eingabe-Schema
{
"type": "object",
"properties": {
"stat": {
"type": "string",
"enum": [
"sig_landed_per_15",
"sig_absorbed_per_15",
"sig_accuracy",
"sig_defense",
"td_per_15",
"td_accuracy",
"td_defense",
"knockdowns",
"sub_attempts_per_15",
"control_share",
"finish_rate"
],
"description": "Which leaderboard."
},
"weight_class": {
"description": "Only fights in this weight class, e.g. Lightweight.",
"type": "string"
},
"since": {
"description": "Only fights from this year on, e.g. 2020.",
"type": [
"string",
"number"
]
},
"min_fights": {
"description": "Minimum fights to qualify (default 5).",
"type": "integer",
"minimum": 1,
"maximum": 50
},
"limit": {
"description": "Max fighters (default 20).",
"type": "integer",
"minimum": 1,
"maximum": 100
}
},
"required": [
"stat"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"stat": {
"type": "string"
},
"label": {
"type": "string"
},
"min_fights": {
"type": "number"
},
"leaders": {
"type": "array",
"items": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
},
"count": {
"type": "number"
}
},
"required": [
"stat",
"label",
"min_fights",
"leaders",
"count"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢get_ratings(weight_class, active_since, limit, league)
Use for our fighter ratings: an Elo built from the promotion's own results (the UFC since 2000), highest first, for fighters active since a given year (default last year). Filter by weight class. Costs 2 credits.
Eingabe-Schema
{
"type": "object",
"properties": {
"weight_class": {
"description": "e.g. Welterweight.",
"type": "string"
},
"active_since": {
"description": "Only fighters whose last fight was in this year or later.",
"type": [
"string",
"number"
]
},
"limit": {
"description": "Max fighters (default 25).",
"type": "integer",
"minimum": 1,
"maximum": 200
},
"league": {
"description": "League. Defaults to mma. One of: mma, pfl, bellator.",
"type": "string",
"enum": [
"mma",
"pfl",
"bellator"
]
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"active_since": {
"type": "number"
},
"ratings": {
"type": "array",
"items": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
},
"count": {
"type": "number"
},
"method": {
"type": "string"
}
},
"required": [
"active_since",
"ratings",
"count",
"method"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢get_odds(bout_id, event_id, league)
Use for betting lines: each posted sportsbook's opening, closing and current moneyline for both fighters, with implied probabilities and the total-rounds line. Opening and closing lines start with the UFC cards of June 2020; a median of 5 to 7 books per fight (ESPN's own feed is one book per fight since mid-2024). Pass bout_id for one fight (5 credits) or event_id for a whole card (10 credits).
Eingabe-Schema
{
"type": "object",
"properties": {
"bout_id": {
"description": "One fight.",
"type": "string"
},
"event_id": {
"description": "A whole card.",
"type": "string"
},
"league": {
"description": "League. Defaults to mma. One of: mma, pfl, bellator.",
"type": "string",
"enum": [
"mma",
"pfl",
"bellator"
]
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"bouts": {
"type": "array",
"items": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
},
"count": {
"type": "number"
},
"note": {
"type": "string"
},
"estimate_only": {
"type": "boolean"
},
"tool": {
"type": "string"
},
"credits": {
"type": "number"
}
},
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢get_line_movement(bout_id, provider, league)
Use to see how a fight's line moved before the bell: our snapshots of each posted moneyline, from first capture to fight day (ESPN's once a day from October 2026, The Odds API's every hour in the two days before). Costs 10 credits.
Eingabe-Schema
{
"type": "object",
"properties": {
"bout_id": {
"type": "string",
"description": "Fight id."
},
"provider": {
"description": "One sportsbook, e.g. DraftKings.",
"type": "string"
},
"league": {
"description": "League. Defaults to mma. One of: mma, pfl, bellator.",
"type": "string",
"enum": [
"mma",
"pfl",
"bellator"
]
}
},
"required": [
"bout_id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Ausgabe-Schema
{
"type": "object",
"properties": {
"bout": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"movement": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "array",
"items": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
}
},
"snapshots": {
"type": "number"
},
"note": {
"type": "string"
}
},
"required": [
"bout",
"movement",
"snapshots"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}Community
Nachweis