FighterAPI
UFC fights since 2000, plus PFL and Bellator: results, round stats, fighters and odds. REST and MCP.
사용해야 할까요
품질 및 안전성
발견 사항 (2)
- LOWget_event에서
- LOWget_fighter_fights에서
도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.
컨텍스트 비용
이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.
설치
원클릭 설치
`claude_desktop_config.json` 파일에 다음을 추가하세요:
{
"mcpServers": {
"fighterapi": {
"url": "https://mcp.fighterapi.com/mcp"
}
}
}원격 엔드포인트
https://mcp.fighterapi.com/mcpstreamable-http할 수 있는 일
도구 목록
도구 (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.
입력 스키마
{
"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#"
}출력 스키마
{
"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.
입력 스키마
{
"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#"
}출력 스키마
{
"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.
입력 스키마
{
"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#"
}출력 스키마
{
"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.
입력 스키마
{
"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#"
}출력 스키마
{
"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.
입력 스키마
{
"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#"
}출력 스키마
{
"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.
입력 스키마
{
"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#"
}출력 스키마
{
"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.
입력 스키마
{
"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#"
}출력 스키마
{
"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.
입력 스키마
{
"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#"
}출력 스키마
{
"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.
입력 스키마
{
"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#"
}출력 스키마
{
"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).
입력 스키마
{
"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#"
}출력 스키마
{
"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.
입력 스키마
{
"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#"
}출력 스키마
{
"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
}커뮤니티
증거