Prototype · Preview: every server in the official registry, synced every 30 minutes. Reviews and accounts come in a later step.
PopNx MCPMCP servers for people who use AI · explained in plain words

UFCalendar Fight API — MMA MCP server

by UFCalendarversion 1.7.0i★ –iRuns in the cloud
Registry namecom.ufcalendar/fight-api

Install

Overview

Description from the maker (original English)

MMA MCP: UFC, PFL, BKFC, RIZIN, OKTAGON results, stats, rankings, scorecards. Free plan, no card.

PopNx MCP’s three pillars

These three are never merged into one score: opinions, measurements and popularity are different things.

What you can do with it

We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.

  • Connection: Runs in the cloud
  • Transport: Streamable HTTP
  • Category: Other
  • You need to fill in: Authorization

Install

Pick the AI app you use, then copy the settings.

Before you install

Values marked secret are keys to your account. Never share them or paste them into a chat.

You need

Which app do you use?

Pick your app above. We remember it, so next time the button says “Install in …”.

This address needs a key in a request header, which the add-connector menu cannot set. Use Claude Code, Cursor or VS Code instead.

Run this in your terminal

claude mcp add --transport http fight-api https://api.ufcalendar.com/mcp --header 'Authorization: your-value'

Fill in the empty values before running it.

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "fight-api": {
      "url": "https://api.ufcalendar.com/mcp",
      "headers": {
        "Authorization": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "fight-api": {
      "type": "http",
      "url": "https://api.ufcalendar.com/mcp",
      "headers": {
        "Authorization": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

This address needs a key in a request header, which the add-connector menu cannot set. Use Claude Code, Cursor or VS Code instead.

Your choice stays on this device in a cookie; no account needed.

Values you fill in

  • Authorization secret HTTP header
    Bearer from https://www.ufcalendar.com/account/api (free plan, 1,000 requests/month, no card) — or leave empty to sign in with OAuth

These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.

What it can do

Tool names and descriptions exactly as the server reported them on Nov 6, 2026. The maker wrote them, not us; we show them as plain text.

  • get_plans

    List the UFCalendar Fight API plans, their monthly request quotas and per-minute limits, including the free plan (1,000 requests a month, no card). Answers "what does this cost" without a credential.

  • list_orgs

    List the promotions the UFCalendar Fight API covers, with per-org capability flags (stats, rounds, rankings, broadcasts, predictions, scorecards, odds). Odds are the UFCalendar consensus line: information only, not betting advice.

  • how_to_connect

    Explain how to authenticate against the UFCalendar Fight API from this MCP server: an API key bearer token, or signing in with a UFCalendar account. Returns the URLs to do it.

  • get_org

    Fetch one promotion by slug (ufc, pfl, oktagon, bkfc or rizin): name, short name, country, website and its capability flags (stats, rounds, rankings, broadcasts, predictions, scorecards, odds; odds are information only, not betting advice). list_orgs returns the same rows for eve

  • get_division

    One weight class in one promotion: the current rankings board when the promotion publishes one, upcoming bouts booked at that weight, the most recent results and the active roster by recency. The division-page answer in one call.

  • list_events

    List fight cards by promotion, status and date range. A bare call returns the upcoming schedule, soonest first; pass order=desc for the archive, newest first. Filter to title cards or PPVs with is_title_card / is_ppv, and pass include=headline for each card's main event (and its

  • get_next_event

    The single next upcoming card for one promotion, or across all of them: the soonest event that has not finished. For UFC, developmental sub-series cards (Dana White's Contender Series, Road to UFC) are skipped while a numbered card or Fight Night is booked; pass skip_series=false

  • get_event_card

    Fetch one event by slug or id with its complete bout order, both corners, venue, broadcast listings and results when the card has been fought. Pass include=eta for per-bout estimated start times and include=odds for each bout's current UFCalendar consensus odds line (information

  • get_event_changes

    The audit trail for one card: bouts added or cancelled, opponents swapped, start times moved, fighter profiles merged — newest first.

  • list_changes

    The cross-event change feed, newest first: bouts added, cancelled or reinstated, opponents swapped, start times or venues moved, fighter profiles merged — across every covered promotion or one of them, since a date (default the last 90 days). The same audit trail webhooks deliver

  • how_to_watch

    Who airs one event, country by country: the promotion's rights deals merged with the event's own confirmed broadcast listings, with provider, kind (tv, stream, ppv…), link and a worldwide row. Pass a two-letter country code to get that market plus worldwide. Series-aware, so a Co

  • get_event_storylines

    The talking points of one card, computed from the record: title fights and title eliminators, the closest bout by UFCalendar's model, rematches and trilogy deciders, who is on a streak, who is debuting or returning from a long layoff, the ranked fighters and champions on the card

  • get_pickem_splits

    How the UFCalendar community is picking each bout on one card: picks for each corner, the total and the percentage, in card order. Crowd sentiment from our own pick'em game, not a market and not a forecast.

  • get_event_odds

    The UFCalendar consensus odds line for every bout on one card, in card order: the current line, the opening line, the closing line once a bout is settled, and how far the market moved since opening, each with how many sportsbooks backed it, plus every bout's prop markets (method

  • get_fight_odds

    The UFCalendar consensus odds line for one bout: the current line, the opening line, the closing line once the bout is settled, and the movement since opening in implied-probability points, each point with its American and decimal price, implied and margin-removed probability and

  • get_odds_history

    Every UFCalendar consensus odds point recorded for one bout, oldest first: the line-movement series, with how many sportsbooks backed each point. A point is stored only when the line moves. Narrow with from/to dates; cursor paginated. Pro plans and up. Information only, not betti

  • get_fight

    Fetch one bout by id. Pass include=stats for per-fight totals, include=rounds for round-by-round statistics, include=scorecards for the official judges’ cards, include=odds for the current UFCalendar consensus odds line (the closing line once the bout is settled) (information onl

  • get_fight_stats

    Per-fight totals for both corners of one bout (strikes by target and position, takedowns, knockdowns, control and position time), each with UFCalendar fantasy points and their category breakdown, plus data-quality flags in meta.quality (rounds present, position data present, whet

  • find_fights

    THE tool for last/first/most-recent questions — search completed bouts across UFCalendar's launch promotions by title fight, finish method (ko, sub, dec, finish), division, fighter, winner, main-event only and date range, newest first by default. One call answers "the last title

  • search

    Typeahead search across fighters and events in one call. Use it to turn a name a user typed into a slug you can pass to the other tools.

  • search_fighters

    Search the fighter roster by name, nationality or promotion. Cursor paginated. Returns identity fields; use get_fighter for the full record.

  • get_fighter

    Fetch one fighter by slug or id: bio, record, career statistics and freely licensed portraits. Pass include=history for the full multi-promotion career timeline, include=stats, include=rankings or include=power_index, include=bonuses for the UFC bonus ledger, and include=credenti

  • compare_fighters

    Head-to-head in one call: both bios and career statistics, strike location and position mix, current win streaks, previous meetings, common opponents with each result, the booked bout between them if one exists, UFCalendar's model win probability for it and the Power Index rating

  • get_rankings

    The official rankings board for one promotion, point-in-time: pass a date to read the board as it stood that day. Rank 0 is the champion. Pass a division to narrow it. Each entry comes with movement against the previous snapshot (is_new for a debut), and meta names the previous a

  • get_champions

    Every current champion across the promotions the API covers, with the division and the snapshot date the board was published. Pass org (e.g. "ufc") and/or division (e.g. "lightweight") to narrow it.

  • get_power_index

    The UFCalendar Power Index board for one promotion — our own rating engine, refreshed hourly, with peak rating and fights rated. Pass view=movers for the biggest risers over a window, view=peaks for all-time peak ratings, division= to narrow.

  • get_matchmaker

    UFCalendar's matchmaker: the fights worth making in one promotion, scored for rank proximity, momentum, competitiveness and story (rematches, eliminators), per division or across the roster. Our own engine over rankings, Power Index and recent form — not a list of booked bouts. R

  • whos_next

    For one fighter: the most sensible next opponents by UFCalendar's matchmaker, with the model win probability for each pairing and the score behind it, plus the bout already booked if there is one. Runs without the website's style-clash (Fight DNA) factor, so scores can differ sli

  • get_leaderboard

    One statistical leaderboard for one promotion from UFCalendar's Record Book rollup — career, single-fight, single-round, division or event boards across 48 metrics (wins, finishes, significant strikes, takedowns, control time, finish rate and more), optionally narrowed to a divis

  • get_record_book

    The Record Book for one promotion in one call: the top rows of every leaderboard, grouped by category — the all-time and single-night records an agent quotes. Narrow by division, country, active fighters or one scope.

  • get_coverage

    What the database holds for each covered promotion, year by year: events, settled bouts and the share of them with per-fight stats, round-by-round stats, official commission scorecards and a UFCalendar consensus odds line (information only, not betting advice), plus when the late

  • get_year_stats

    One calendar year of a promotion (or all covered promotions) in numbers: events and title fights, finish methods and busiest divisions, the fastest finishes, the biggest upsets and Power Index climbers, the busiest fighters, host countries and the most-used judges.

  • get_predictions_upcoming

    UFCalendar model win probabilities for upcoming UFC bouts, published about three weeks out and repriced at least weekly. Corner-stamped, so a probability is never shown against the wrong pair. Pass event= to narrow to one card. Informational model output, not betting advice.

  • get_broadcast_rights

    Who airs one promotion in each country: provider, kind and link. Pass a country code to narrow it to that market plus the worldwide row.

  • list_judges

    The judge directory with career aggregates: cards turned in, rounds scored, 10-8s, split cards and lone dissents, plus the league-wide baseline rates in meta.league. Filter by name, promotion or a minimum number of fights.

  • get_judge

    One official's career aggregates by id: fights and rounds scored, rounds scored 10-8 or wider, three-judge cards that came back split, lone dissents, first and last date scored, and the promotions worked. Same shape as a list_judges row; use get_judge_scorecards for the cards the

  • get_judge_scorecards

    Every official card one judge has turned in, newest first: per-round points, card totals, decision type and point deductions. Each row flags lone dissents and split panels and shows the colleagues' totals. Commission records only.

  • list_referees

    The referee directory across the covered promotions, busiest first: bouts worked, promotions, first and last bout, finish rate, how their bouts ended (KO/TKO, submission, decision, other) and average fight time. Filter by name or promotion. The referee id is a slug of the name.

  • get_referee

    One referee's career aggregates by slug (e.g. herb-dean): bouts worked per promotion, first and last bout, finish rate, method breakdown and average fight time. Same shape as a list_referees row; use get_referee_fights for the bouts themselves.

  • get_referee_fights

    Every settled bout one referee worked in the covered promotions, newest first, with both corners, the result and the event. Cursor paginated.

  • list_split_decisions

    Completed bouts decided on split or majority cards, newest first, with every judge's official card and the dissenting judge named — commission records only, across covered promotions or one of them, in a date range. Facts as filed; UFCalendar adds no verdict of its own.

  • get_usage

    How many requests the calling account has used this month, the plan limit, the per-minute limit and when the counter resets — and, on an owner-granted trial, when the trial ends (trial_ends_at).

  • get_venue

    Fetch one venue by id: name, city, region, country, capacity, coordinates and IANA time zone.

  • search_venues

    Find arenas and venues that have hosted a covered promotion, by name, city or country. Returns id, name, city, region, country, time zone and capacity; pass the id to get_venue_events for what was fought there.

  • get_venue_events

    Every covered event held at one venue, newest first — upcoming cards on top, then the history. Same filters and row shape as list_events (status, from, to, order, cursor).

  • search_articles

    Search UFCalendar's own editorial archive — previews, recaps, investigations, fighter-pay and technique pieces — by keyword or tag, newest first, in any of the 13 site languages. Returns title, summary, tags, date and the canonical URL; pass the slug to get_article for the body.

  • get_article

    One UFCalendar article by slug: full body in Markdown (client widgets removed), title, summary, author, tags and publication date, in the requested language when a translation exists (English otherwise). Betting editorial is not served.

  • get_calendar_feed_url

    The three subscribable ICS calendar feed URL templates for one promotion — per event, per card section, or per bout at its estimated start — with a placeholder where the key goes. Returns URL templates only, never the caller's credential; the human pastes the finished URL into th

  • list_webhook_endpoints

    List the signed webhook endpoints registered on the calling account, with the event kinds each one subscribes to.

  • create_webhook_endpoint

    Register an https endpoint to receive signed webhooks (event announced, fight result, card changed, event completed, odds moved: the UFCalendar consensus odds line on an upcoming bout moved 5+ points or the favourite flipped; information only, not betting advice). The signing sec

  • rotate_webhook_secret

    Replace the signing secret of one webhook endpoint. The old secret stops verifying immediately, so update the receiver first. The new secret is returned once.

  • delete_webhook_endpoint

    Permanently remove one webhook endpoint from the calling account. Deliveries to it stop and its delivery history is dropped.

Basic checksi

We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026

  • ✓ Pass

    Maker matches the repo

    The registry name was verified against the domain ufcalendar.com (the registry checks domain ownership)

  • … Not checked yet

    Still maintained

    We have not read this repo from GitHub yet

  • … Not checked yet

    Has a licence

    We have not read this repo from GitHub yet

  • ✓ Pass

    Endpoint responds

    Responded in 370 ms (HTTP 200)

  • – Not applicable

    Sign-in with OAuth

    No sign-in needed

  • ✓ Pass

    No hidden instructions in tool descriptions

    Read 52 tool descriptions and found no hidden instructions to the AI

Compared with others in Otheri

  • More stars than 0% of the other 32623 servers in this category
  • Published to the registry more recently than 84% of the other 32623 servers in this category
  • Basic checks equal to or better than 100% of the other 32623 servers in this category

Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.

Common questions

Is UFCalendar Fight API — MMA MCP server safe?

It passed 3 of 3 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.

What keys or codes does it need?

You need to fill in: Authorization

Does it run on my computer or in the cloud?

It runs in the maker’s cloud. Connect over the internet with nothing to install, but what you send passes through the maker’s servers.

Is it still maintained?

The GitHub repo last changed –, and the latest version (1.7.0) reached the registry 6 days ago.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT in developer mode.

What can I use instead?

In the same category: Spec Driven Development, Remote Desktop Commander, Draugr

Alternatives

Servers in the same category from other makers, sorted by stars.

Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi

Spec Driven Development

by formulahendry

MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.

Runs on your computer★ 440MITUpdated 14 months ago
Install

Remote Desktop Commander

by desktop-commander

Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.

Runs in the cloud★ 211Updated 2 days ago
Install

Draugr

by draugr-dev

Security scanning for AI agents: SAST, SCA, secrets, IaC, DAST, ranked by real risk.

Runs on your computerUpdated today
Install

README from the maker

Open the README

Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.

UFCalendar Fight API — agent skill

An installable skill that teaches a coding agent how to reach the UFCalendar Fight API — the MMA Fight Data API behind our MCP server for UFC data and MMA MCP server: UFC, PFL, OKTAGON, BKFC and RIZIN events, full fight cards, results, per-round stats, fighter careers, judges' scorecards, UFC rankings history since 2013 and per-country broadcast rights — over REST, the two SDKs, or the MCP server at https://api.ufcalendar.com/mcp.

Install

npx skills add UFCalendar/fight-api-skill

Or copy it in by hand:

AgentWhere
Claude Code.claude/skills/ufcalendar-fight-api/ (project) or ~/.claude/skills/ufcalendar-fight-api/ (global)
Cursorpaste SKILL.md into a rule under .cursor/rules/, keep references/ beside it
Codexreference SKILL.md from AGENTS.md, keep references/ beside it

The skill is plain Markdown — SKILL.md plus four reference files. Nothing executes.

Contents

  • SKILL.md — access in 60 seconds, base URL and envelope, the endpoints that answer the common questions, the don'ts, and when to use MCP vs REST vs SDK.
  • references/endpoints.md — every endpoint and parameter. Generated from the OpenAPI document; do not edit by hand.
  • references/conventions.md — envelope, pagination, errors, rate headers, tier gates, webhook signature verification.
  • references/mcp-clients.md — copy-paste config for Claude Code, Cursor, Codex, Claude.ai and ChatGPT.
  • references/sdk.md — Python and TypeScript quickstarts.

Access

Every account gets the free plan (1,000 requests a month, no card, never expires); the key self-serves at https://www.ufcalendar.com/account/api?trial=1. Paid plans start at $19/month. GET https://api.ufcalendar.com/v1/plans answers with no credential at all, so an agent can evaluate the API before anyone signs in.

Odds are the UFCalendar consensus line only (no book identities; information only, not betting advice). Fighter images are Creative Commons and must be shown with their credit. Not affiliated with UFC, Zuffa, TKO or any promotion.

MIT licensed.

Ask PopNx