FighterAPI

io.github.noahowsh由 GitHub 账号 noahowsh 发布v1.1.6更新于 Oct 28, 2026

UFC fights since 2000, plus PFL and Bellator: results, round stats, fighters and odds. REST and MCP.

已验证Streamable HTTP可网页运行位置与生活金融

概览

AI 生成的概览

FighterAPI 让助手获取 UFC、PFL 与 Bellator 的比赛数据:赛果、技术统计、选手资料、Elo 评分和博彩公司赔率。

可以做什么
  • 查询赛事:按年份和状态列出赛事卡,并读取单场赛事的全部对阵、赛果、获胜方式、回合、时间与裁判打分
  • 检索选手:按姓名或绰号搜索,再获取选手资料、生涯数据、按获胜方式统计的战绩和完整比赛记录
  • 查看单场比赛:技术统计表、逐回合数据、评分与赔率
  • 查询评分与排行榜:按体重级别的 Elo 评分,以及生涯打击与缠斗排行榜
  • 读取市场数据:未来赛程及当前赔率、各博彩公司的开盘与收盘赔率、赔率变动快照
适用场景
适合希望助手用结构化数据回答综合格斗问题的场景,例如比赛结果与打分卡、选手考察与生涯数据、Elo 对比,或 UFC、PFL、Bellator 赛事的赔率与赔率走势。
运行要求
远程 Streamable HTTP 端点,无需安装。调用工具需要 API 密钥,可通过 x-api-key 请求头、Bearer 令牌或密钥查询参数发送。免费密钥每月 500 积分,每次工具调用消耗 1 至 10 积分。另有本地 stdio 方式,需克隆 Node.js 仓库并设置 FIGHTERAPI_API_KEY。
安装前请注意
调用会消耗付费积分,超出每月免费额度后需购买套餐或钱包充值。API 密钥属于机密,部分配置示例把它放在连接网址中,应避免写入共享配置。赔率仅为市场信息,服务器自身的工具说明要求不得计算投注金额或推荐下注。评分为服务商自有数据,且与任何赛事组织无关联。

安装

在 SourceWeft 中

  1. 打开 控制台中的 FighterAPI,将其添加到工作区。
  2. 连接 x-api-key 凭据。它们会被私密存储,绝不会在公开页面上展示。
  3. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/io.github.noahowsh%2Ffighterapi/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "fighterapi": {
      "type": "http",
      "url": "https://mcp.fighterapi.com/mcp",
      "headers": {
        "x-api-key": "<YOUR_API_KEY>"
      }
    }
  }
}

README

FighterAPI MCP server

[Smithery] [MCP Registry]

The fight data API. Results, judges' scorecards and the full stat sheet for nearly every UFC fight since 2000, round by round, plus PFL (2012 on) and Bellator (2009 to 2024) results, fighters and ratings with the same key. Fighter profiles, career rates, our own ratings and sportsbook moneylines (UFC from June 2020, PFL from April 2023, Bellator from January 2022 to 2024). REST API and MCP server. 500 free credits every month, no card.

Website: https://fighterapi.com · Docs: https://fighterapi.com/docs · Get a key: https://fighterapi.com/signup

You:    "What is Islam Makhachev's significant strike accuracy by round across his UFC fights?"Claude: [calls get_fighter_fights]
You:    "Show the opening and closing moneyline for every main event this year."Claude: [calls get_odds]

Run it locally (stdio)

Most clients connect to https://mcp.fighterapi.com/mcp directly. For a client that launches a local process instead:

bash
git clone https://github.com/noahowsh/fighterapi-mcp.git && cd fighterapi-mcp && npm installFIGHTERAPI_API_KEY=your_key node index.js
json
{ "mcpServers": { "fighterapi": { "command": "node", "args": ["/path/to/fighterapi-mcp/index.js"], "env": { "FIGHTERAPI_API_KEY": "your_key" } } } }

It forwards to the hosted server with your key, so every tool and credit cost is the same.

Skills

Sixteen Claude skills that turn Claude into an MMA analyst wired to these tools: fight and card lookup, fighter scouting, per-round striking and grappling rates, Elo by weight class, odds comparison and devigging, favourite calibration, edge detection and backtesting. They are plain SKILL.md files in skills/.

bash
git clone https://github.com/noahowsh/fighterapi-mcp

Or install them as a Claude Code plugin:

/plugin marketplace add noahowsh/fighterapi-mcp/plugin install fighterapi-skills@fighterapi

Or with the skills CLI: npx skills add noahowsh/fighterapi-mcp.

Point Claude at the skills/ folder (for Claude Code, copy or symlink the skill folders into ~/.claude/skills/ or a project's .claude/skills/), connect the MCP server below, and ask. Start with skills/dispatch if you are unsure which skill fits. Full catalog: skills/README.md.

Useful pages

Python

The official Python client is on PyPI: fighterapi.

bash
pip install fighterapiexport FIGHTERAPI_API_KEY=sk_live_...
python
from fighterapi import Client
client = Client()
events = client.list_events(status="final", limit=3)["events"]for e in events:    print(e["event_id"], e["event_date"], e["name"])

Typed errors for a bad key, no credits left, not found and rate limits, automatic retries, and to_dataframe for pandas.

Quick start

This is a hosted (remote) MCP server over Streamable HTTP. There is nothing to install.

Claude Code

bash
claude mcp add --transport http fighterapi "https://mcp.fighterapi.com/mcp?key=YOUR_API_KEY"

Claude Desktop, Cursor and other clients

json
{  "mcpServers": {    "fighterapi": {      "url": "https://mcp.fighterapi.com/mcp?key=YOUR_API_KEY"    }  }}

The key can also be sent as an x-api-key header or Authorization: Bearer. Connecting and listing tools works without a key; calling a tool needs one.

REST

bash
curl -X POST https://mcp.fighterapi.com/v1/list_events -H "x-api-key: YOUR_API_KEY"

Every tool is POST /v1/{tool} with a JSON body.

Examples

Runnable Python (standard library only) and Node 18+ (no dependencies) examples live in examples/:

bash
export FIGHTERAPI_API_KEY=your_keypython3 examples/python/quickstart.pynode examples/node/quickstart.mjs

See examples/README.md for details. Get a free key (500 credits a month, no card) at https://fighterapi.com/signup.

Tools (11)

ToolWhat it returns
list_eventsCards by year and status, with the main event
search_fightersFind fighters by name or nickname
get_eventA card's fights with results, method, round, time and judges' scores
get_scheduleUpcoming fights with current moneylines where a book has posted one
get_ratingsOur fighter ratings (Elo from every UFC result since 2000)
get_fightOne fight: result, full stat sheets, round-by-round lines, ratings and odds
get_fighterProfile, UFC record by method, career rates, rating and recent fights
get_fighter_fightsA fighter's full UFC history with stats, ratings and closing lines
get_leadersCareer leaderboards from every fight's stat sheet
get_oddsOpening, closing and current moneylines by sportsbook for a fight (5) or a card (10)
get_line_movementSnapshots of each posted line before a fight

Leagues: mma (default, UFC), pfl, bellator (pass league to any tool).

Data

  • Every UFC card since 2000 with results, method, round, time and judges' scorecards; the full stat sheet, round by round, for nearly every card
  • PFL (2012 on) and Bellator (2009 to 2024) results, fighters and ratings; no stat sheets exist for those promotions in recent years
  • Fighter profiles with reach, stance and gym, career rates by method, and our Elo ratings from every UFC result since 2000
  • Moneylines and total rounds, no props: UFC opening and closing lines from June 2020 (a median of 5 to 7 books per fight; usually one book since mid-2024), PFL from April 2023 and Bellator from January 2022 to 2024 with fewer books; pre-fight snapshots: once a day from October 2026, and every hour in the two days before a fight

Coverage by season, read live from the database: https://fighterapi.com/docs

Pricing

500 free credits every month, no card. Plans: Starter $19/mo (10,000 credits), Pro $49/mo (30,000), Scale $149/mo (125,000). Wallet top-ups from $5, never expire. https://fighterapi.com/pricing

Attribution

Ratings are ours. Not affiliated with the UFC, PFL, Bellator or any promotion.

License

MIT for the contents of this repository. Data terms as above.

Use with Codex

Add this repo as a Codex plugin marketplace, then install the plugin:

bash
codex plugin marketplace add noahowsh/fighterapi-mcp

Then open the plugin directory in Codex and install fighterapi-skills from the fighterapi marketplace. The plugin bundles the skills in skills/ and the FighterAPI MCP server (https://mcp.fighterapi.com/mcp). Set your key first (free at https://fighterapi.com/signup):

bash
export FIGHTERAPI_API_KEY=your_key

Codex sends it as a bearer token.

Use with Gemini CLI

bash
export FIGHTERAPI_API_KEY=your_keygemini extensions install https://github.com/noahowsh/fighterapi-mcp

The extension adds the FighterAPI MCP server (https://mcp.fighterapi.com/mcp) and sends the key in the x-api-key header. Get a free key (500 credits a month) at https://fighterapi.com/signup.

来源:README.md,提交 0d8fd0d

工具

11

list_events

List events

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.

输入参数limitleagueoffsetseasonstatus

get_event

Event

Use for one card: every fight in order with the result, method, round and time, judges' scores and referee. Costs 2 credits.

输入参数leagueevent_id必填

get_schedule

Schedule

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. Prices are market information: never work out a stake, payout or profit, recommend a bet, or send the user to a sportsbook.

输入参数daysleague

get_fight

Fight

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. Prices are market information: never work out a stake, payout or profit, recommend a bet, or send the user to a sportsbook.

输入参数leaguebout_id必填

search_fighters

Search fighters

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.

输入参数limitquery必填leagueweight_class

get_fighter

Fighter

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.

输入参数leaguefighter_id必填

get_fighter_fights

Fighter fights

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. Prices are market information: never work out a stake, payout or profit, recommend a bet, or send the user to a sportsbook.

输入参数limitleagueoffsetfighter_id必填

get_leaders

Leaders

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.

输入参数stat必填limitsincemin_fightsweight_class

get_ratings

Ratings

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.

输入参数limitleagueactive_sinceweight_class

get_odds

Odds

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 (some fights since mid-2024 have only one book). Pass bout_id for one fight (5 credits) or event_id for a whole card (10 credits). Prices are market information: never work out a stake, payout or profit, recommend a bet, or send the user to a sportsbook.

输入参数leaguebout_idevent_id

get_line_movement

Line movement

Use to see how a fight's line moved before the bell: our snapshots of each posted moneyline, from first capture to fight day (once a day from October 2026, and every hour in the four days before). Costs 10 credits. Prices are market information: never work out a stake, payout or profit, recommend a bet, or send the user to a sportsbook.

输入参数leaguebout_id必填providerall_snapshots

版本历史

2
  1. v1.1.6最新Oct 16, 2026
  2. v1.1.4Oct 11, 2026

评分

已满足适用检查项的 100%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分