# Boxerbook (remote · mcp.boxerbook.com)

World professional boxing: schedule, results, boxer cards, rankings, forecasts. Free, no key.

- Trust score: 67/100 (medium)
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-10-24

## Components

- remote · `mcp.boxerbook.com`: 67/100 (this document), [markdown](https://verifymcp.io/servers/com-boxerbook-boxing/mcp.md), [page](https://verifymcp.io/servers/com-boxerbook-boxing/mcp)

## Channel facts

- Endpoint: `https://mcp.boxerbook.com/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `1.0.0`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-10-24.

- **Endpoint Security**: 63/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one.
  - HTTPS enforcement could not be verified: the plaintext port answered with HTTP 405, which proves neither a plaintext path nor enforcement.
  - HSTS check failed: the Strict-Transport-Security header is absent.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 84/100
  - 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 1752 tokens (~125/item across 14 items; 10 tools + 4 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 3/100
  - Stability observed for 1 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
  - Structured output schemas are declared (100% of tools); any adoption earns full credit.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 10 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 12 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 60/100
  - Spec-recency check failed: implements MCP spec 2025-06-18; the latest is 2026-07-28.

## Install

### How do I install the Boxerbook MCP server?

Boxerbook is a hosted endpoint at https://mcp.boxerbook.com/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add --transport http com-boxerbook-boxing 'https://mcp.boxerbook.com/mcp'
```

### Cursor

```json
{
  "mcpServers": {
    "com-boxerbook-boxing": {
      "url": "https://mcp.boxerbook.com/mcp"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "com-boxerbook-boxing": {
      "type": "http",
      "url": "https://mcp.boxerbook.com/mcp"
    }
  }
}
```

### Codex

```toml
[mcp_servers.com-boxerbook-boxing]
url = "https://mcp.boxerbook.com/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-boxerbook-boxing": {
      "type": "remote",
      "url": "https://mcp.boxerbook.com/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add com-boxerbook-boxing --url 'https://mcp.boxerbook.com/mcp' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  com-boxerbook-boxing:
    url: "https://mcp.boxerbook.com/mcp"
```

### Netclaw

```json
{
  "McpServers": {
    "com-boxerbook-boxing": {
      "Transport": "http",
      "Url": "https://mcp.boxerbook.com/mcp"
    }
  }
}
```

### Vellum

```bash
assistant mcp add com-boxerbook-boxing -t streamable-http -u 'https://mcp.boxerbook.com/mcp'
```

### Other

```json
{
  "mcpServers": {
    "com-boxerbook-boxing": {
      "type": "http",
      "url": "https://mcp.boxerbook.com/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-10-24 (score 67, 0)

- [functional improvement] Stability: unverified → 0.03
- [functional] Server version: 2a8c1fb6-1520-4cbb-b2cb-55de5834c3b8 → f8a1d965-27e8-43e7-9b27-3e5cd88a7571
- [cosmetic] “bout” reworded the description of “id”

### 2026-10-23 (score 67)

First indexed and scored.

## MCP tools (10)

### `boxing_schedule` (~188 tokens)

Boxing schedule

Upcoming professional boxing cards worldwide, grouped by card: date, start_utc (card start in UTC), venue, promoter, broadcasters, and each bout with both records going in, division, scheduled rounds, title, Boxerbook forecast and market consensus when known. Use this for "who is fighting tonight / this weekend", "what boxing is on". when=today also keeps last night's cards that started under 6 hours ago. Cite the url of each card or bout.

Input parameters:

- `country` (string): ISO 3166-1 alpha-2 country of the bout, e.g. GB, US, MX
- `division` (string): division code (hea, wel, w_fea) or name (heavyweight, women's featherweight)
- `when` (string): today (and cards still running from last night), tonight, weekend (Fri-Sun) or 30d

Output parameters:

- `as_of` (string)
- `attribution` (object)
- `country` (string|null)
- `division` (string|null)
- `events` (array)
- `from` (string)
- `partial` (boolean): true when part of the data could not be read this time; retry in a minute for the full answer
- `to` (string)
- `truncated` (boolean): true when the 400-bout cap of the underlying list may have dropped bouts of this window (narrow it with country or division)
- `url` (string)
- `when`

### `boxing_results` (~161 tokens)

Boxing results

Completed professional bouts of the last N days (N calendar days ending today: 1 = today, 2 = last night and today, up to 14), newest first: winner, method, round, time, both records going in and the sources of each result. Use this for "who won last night", "results this weekend". Cite the url of each bout.

Input parameters:

- `country` (string): ISO 3166-1 alpha-2 country of the bout, e.g. GB, US, MX
- `days` (integer): number of days ending today (default 2: last night and today)
- `division` (string): division code (hea, wel, w_fea) or name (heavyweight, women's featherweight)

Output parameters:

- `as_of` (string)
- `attribution` (object)
- `bouts` (array)
- `country` (string|null)
- `days` (integer)
- `division` (string|null)
- `from` (string)
- `partial` (boolean): true when part of the data could not be read this time; retry in a minute for the full answer
- `to` (string)
- `truncated` (boolean): true when the 400-bout cap of the underlying list may have dropped bouts of this window (narrow it with days, country or division)
- `url` (string)

### `boxer` (~123 tokens)

Boxer card

One boxer's card by name, slug or Boxerbook id: country, division, record (W-L-D, KOs), stance, height, reach, birth date, nickname, next fight, last result, Boxerbook rating and, when known, the record as betting favourite and underdog. A name goes through the site search and returns the best match (other_matches lists the next ones: check them when the name is common). Cite the url.

Input parameters:

- `query` (string, required): a boxer's name, slug (giorgio-visioli) or Boxerbook id

Output parameters:

- `as_of` (string)
- `attribution` (object)
- `birth_date` (string|null)
- `bouts_without_result` (integer|null): completed bouts whose result is not known yet (record_source bouts only); record is null when no result is known at all
- `country` (string|null)
- `division` (string|null)
- `height_cm` (number|null)
- `id` (integer)
- `last_result`
- `market_record` (object)
- `name` (string)
- `next_fight`
- `nickname` (string|null)
- `other_matches` (array): other boxers matching the name
- `partial` (boolean): true when part of the data could not be read this time; retry in a minute for the full answer
- `rating`
- `reach_cm` (number|null)
- `record`
- `record_source`
- `sex` (string|null)
- `slug` (string)
- `stance` (string|null)
- `url` (string)

### `next_fight` (~96 tokens)

Next fight of a boxer

A boxer's next scheduled bout (by name, slug or id): date, start_utc (card start in UTC), opponent, venue, broadcasters, Boxerbook forecast and market consensus when known; next_fight is null when none is on record (last_result is then the latest bout). Cite the url.

Input parameters:

- `query` (string, required): a boxer's name, slug (giorgio-visioli) or Boxerbook id

Output parameters:

- `as_of` (string): ISO UTC time of this answer
- `attribution` (object)
- `boxer` (object)
- `last_result`
- `next_fight`
- `partial` (boolean): true when part of the data could not be read this time; retry in a minute for the full answer
- `url` (string)

### `bout` (~96 tokens)

Bout

One bout in full by Boxerbook bout id: both boxers with records going in, status, result (winner, method, round, time), start_utc, venue, card, broadcasters, sources, Boxerbook forecast with its signals and the market consensus when known. Cite the url.

Input parameters:

- `id` (integer, required): Boxerbook bout id (from a schedule, results, search or a /bouts/<id>/<slug> url)

Output parameters:

- `a` (object)
- `as_of` (string)
- `attribution` (object)
- `b` (object)
- `broadcasts` (array)
- `city` (string|null)
- `confirmation` (string|null)
- `country` (string|null)
- `date` (string)
- `event`
- `exhibition` (boolean)
- `fight_week` (array): facts said in fight-week videos (press conference, weigh-in, face-off, open workout): only accepted ones, at most 24; no predictions or opinions
- `forecast` (object)
- `id` (integer)
- `market` (object)
- `method` (string|null)
- `partial` (boolean): true when part of the data could not be read this time; retry in a minute for the full answer
- `provisional` (boolean)
- `round` (integer|null)
- `scheduled_rounds` (integer|null)
- `signals` (object): signals of the latest forecast: a and b per side (age, age_precision, record, layoff_days, last5, ko_rate, home, travel_km, mu_delta_12m, div_shift, listed_first, short_notice_days, weight_lb, missed…
- `sources` (array)
- `start_utc` (string)
- `status` (string)
- `time` (string|null)
- `title_text` (string|null)
- `url` (string)
- `venue` (string|null)
- `weighin` (object): the official weigh-in, per side when known: a commission sheet before the press
- `winner`

### `where_to_watch` (~83 tokens)

Where to watch

The broadcasters (platform, region, link) of a bout or of a whole card, with the card start time in UTC. Give bout_id or event_id. An empty list means none is on record yet. Cite the url.

Input parameters:

- `bout_id` (integer): Boxerbook bout id
- `event_id` (integer): Boxerbook event (card) id

Output parameters:

- `as_of` (string): ISO UTC time of this answer
- `attribution` (object)
- `bouts` (array)
- `broadcasts` (array)
- `city` (string|null)
- `country` (string|null)
- `date` (string|null)
- `event_id` (integer|null)
- `id` (integer)
- `kind`
- `note` (string)
- `partial` (boolean): true when part of the data could not be read this time; retry in a minute for the full answer
- `start_utc` (string): ISO UTC start of the card, when known
- `status` (string|null)
- `title` (string)
- `url` (string)
- `venue` (string|null)

### `rankings` (~137 tokens)

Division rankings

The top 15 of a division: the Boxerbook rating (default) or the latest list of a publisher (WBC, WBA, IBF, WBO, The Ring, TBRB), with records. Division by code (hea, wel, w_fea) or name (heavyweight, women's flyweight). Cite the url.

Input parameters:

- `division` (string, required): division code (hea, wel, w_fea) or name (heavyweight, women's featherweight)
- `publisher` (string): boxerbook (the Boxerbook rating), wbc, wba, ibf, wbo, ring or tbrb

Output parameters:

- `as_of` (string)
- `attribution` (object)
- `division` (object)
- `items` (array)
- `list_date` (string|null)
- `partial` (boolean): true when part of the data could not be read this time; retry in a minute for the full answer
- `publisher`
- `url` (string)

### `search_boxers` (~76 tokens)

Search boxers

Find boxers by name (at most 20), best match first: id, slug, name, country, division, record. Use this when a name is ambiguous or its spelling unsure, then call boxer or next_fight with the id. Cite the url.

Input parameters:

- `q` (string, required): a name or part of it

Output parameters:

- `as_of` (string)
- `attribution` (object)
- `partial` (boolean): true when part of the data could not be read this time; retry in a minute for the full answer
- `query` (string)
- `results` (array)
- `url` (string)

### `search` (~122 tokens)

Search Boxerbook

Search the whole catalog with one query: boxers by name, bouts by two surnames ("Inoue vs Nakatani"), their cards, and divisions ("heavyweight rankings"); an id such as bout:123 is looked up directly. Each hit has an id for fetch, a title and its boxerbook.com url; ChatGPT connectors and deep research, which call nothing but search and fetch, start here. No match returns an empty list. Cite the url.

Input parameters:

- `query` (string, required): what to look for: a boxer, two boxers, a division

Output parameters:

- `as_of` (string): ISO UTC time of this answer
- `attribution` (object)
- `partial` (boolean): true when part of the data could not be read this time; retry in a minute for the full answer
- `query` (string)
- `results` (array)
- `url` (string)

### `fetch` (~98 tokens)

Fetch a Boxerbook document

The full document for an id returned by search: a boxer card, a bout (records, result, broadcasters, forecast, market, sources), a card with its bouts, or a division's rankings, as Markdown text with metadata. Pass the id unchanged; an unknown id returns an error. Cite the url.

Input parameters:

- `id` (string, required): an id from search: boxer:<id>, bout:<id>, event:<id> or rankings:<DIV>

Output parameters:

- `as_of` (string): ISO UTC time of this answer
- `attribution` (object)
- `id` (string)
- `metadata` (object)
- `partial` (boolean): true when part of the data could not be read this time; retry in a minute for the full answer
- `text` (string): the document as Markdown
- `title` (string)
- `url` (string)

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/com-boxerbook-boxing/mcp#diagnostics

## Score history

- 2026-10-24: 67
- 2026-10-23: 67

## Common questions

### What is the Boxerbook MCP server?

Boxerbook is an MCP server listed in the public MCP registry as com.boxerbook/boxing. World professional boxing: schedule, results, boxer cards, rankings, forecasts. Free, no key. This page covers its hosted endpoint (https://mcp.boxerbook.com/mcp).

### Is the Boxerbook MCP server safe to use?

Boxerbook scores 67 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the Boxerbook MCP server expose?

Boxerbook exposes 10 tools: boxing_schedule, boxing_results, boxer, next_fight, bout, and 5 more. Their descriptions and schemas cost roughly 1,180 tokens of context every time the server is loaded.

### Does the Boxerbook MCP server require authentication?

No. We connected to Boxerbook without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

### Is the Boxerbook MCP server still maintained?

Boxerbook is still listed as active in the MCP registry. We last reached this channel on 24 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

## Links

- Remote endpoint: https://mcp.boxerbook.com/mcp
- Repository: https://github.com/mvtk1978/boxerbook-mcp
- Website: https://boxerbook.com/developers
- Changelog RSS feed: https://verifymcp.io/servers/com-boxerbook-boxing/mcp.xml
- Changelog JSON feed: https://verifymcp.io/servers/com-boxerbook-boxing/mcp.json
- HTML version of this page: https://verifymcp.io/servers/com-boxerbook-boxing/mcp
