Koskamo

442ball MCP

A read-only Model Context Protocol connector that allows AI assistants to look up 442ball's club Power Ratings, league strength, historical ratings, and team runs. It provides data calculated weekly from match results, linking back to official 442ball pages for every entity mentioned.

Endpoint and access

No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.

442ball MCP logo, by 442ballVendor evidenceStreamable HTTPNo sign-inEndpoint checked 2026-11-01Operated by 442ball
MCP endpoint (Streamable HTTP)
https://mcp.442ball.com/mcp
Vendor documentation

What you can do with it

  • Find clubs and leagues by name with their 442ball pages
  • Retrieve a club's latest weekly Power Rating and attack/defence indices
  • Compare two clubs side by side using their ratings
  • Check a league's latest strength and number of clubs

Source and maintenance

Vendor evidenceRegistry 1.0.0

Protocol and capabilities

Server
442ball 0.1.0
MCP protocol
2025-06-18
Tools
12 advertised
Resources
Not advertised
Resource templates
Not advertised
Prompts
Not advertised
Server-advertised capabilities
{
  "tools": {
    "listChanged": true
  }
}

Server-provided instructions

Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.

442ball is a football publication at 442ball.com. These tools return 442ball's own club Power Ratings and league strength, and every answer links to the 442ball page of each club and league it names.

Tools

12 advertised

resolve — Find a club or league on 442ball
Advertised by the server during the last successful anonymous check.
Advertised read-only

Finds clubs and leagues by name and returns up to five, each with its 442ball slug and page URL. Use it first when you have a name, then pass the slug to the other tools. The query is 2 to 60 characters; accents and case are ignored.

resolve input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "query"
  ],
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 60,
      "minLength": 2
    }
  }
}
resolve annotations
{
  "title": "Find a club or league on 442ball",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
club_rating — A club's 442ball Power Rating
Advertised by the server during the last successful anonymous check.
Advertised read-only

Returns one club's latest weekly 442ball Power Rating: the rating, its band, its rank by rating in its league, its attack and defence indices and its long-run rating, with the club and league page URLs. Takes the club slug from resolve.

club_rating input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "club"
  ],
  "properties": {
    "club": {
      "type": "string",
      "pattern": "^[a-z0-9][a-z0-9-]{0,99}$"
    }
  }
}
club_rating annotations
{
  "title": "A club's 442ball Power Rating",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
compare_clubs — Two clubs side by side
Advertised by the server during the last successful anonymous check.
Advertised read-only

Returns two clubs' latest 442ball Power Ratings side by side. The difference between the ratings is given only when both clubs are rated on the same scale; otherwise the answer says why it is withheld. Takes two club slugs from resolve.

compare_clubs input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "club_a",
    "club_b"
  ],
  "properties": {
    "club_a": {
      "type": "string",
      "pattern": "^[a-z0-9][a-z0-9-]{0,99}$"
    },
    "club_b": {
      "type": "string",
      "pattern": "^[a-z0-9][a-z0-9-]{0,99}$"
    }
  }
}
compare_clubs annotations
{
  "title": "Two clubs side by side",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
league_strength — A league's 442ball strength
Advertised by the server during the last successful anonymous check.
Advertised read-only

Returns one league's latest weekly 442ball league strength and how many clubs it counts, with the league page URL. Takes the league slug from resolve.

league_strength input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "league"
  ],
  "properties": {
    "league": {
      "type": "string",
      "pattern": "^[a-z0-9][a-z0-9-]{0,99}$"
    }
  }
}
league_strength annotations
{
  "title": "A league's 442ball strength",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
rankings — A league's clubs by rating
Advertised by the server during the last successful anonymous check.
Advertised read-only

Returns the top clubs of one league by 442ball Power Rating at the latest weekly snapshot, 1 to 20 of them (default 10), each with its page URL. Takes the league slug from resolve. There is no list across leagues.

rankings input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "league"
  ],
  "properties": {
    "n": {
      "type": "integer",
      "default": 10,
      "maximum": 20,
      "minimum": 1
    },
    "league": {
      "type": "string",
      "pattern": "^[a-z0-9][a-z0-9-]{0,99}$"
    }
  }
}
rankings annotations
{
  "title": "A league's clubs by rating",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
rating_history — A club's rating month by month
Advertised by the server during the last successful anonymous check.
Advertised read-only

Returns one club's 442ball Power Rating month by month (the last weekly value of each month) for the latest 1 to 60 months (default 24), with the club page URL. Takes the club slug from resolve.

rating_history input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "club"
  ],
  "properties": {
    "club": {
      "type": "string",
      "pattern": "^[a-z0-9][a-z0-9-]{0,99}$"
    },
    "months": {
      "type": "integer",
      "default": 24,
      "maximum": 60,
      "minimum": 1
    }
  }
}
rating_history annotations
{
  "title": "A club's rating month by month",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
method — How the 442ball ratings are made
Advertised by the server during the last successful anonymous check.
Advertised read-only

Explains in words how 442ball calculates its club Power Ratings and league strength, what the band means, and which method version is in use.

method input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "properties": {}
}
method annotations
{
  "title": "How the 442ball ratings are made",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
club_runs — A club's runs
Advertised by the server during the last successful anonymous check.
Advertised read-only

Returns one club's current and longest runs from the results 442ball holds: unbeaten, winning, winless and clean sheets, overall, at home and away, with the longest this season and since 2010. Run lengths only. Takes the club slug from resolve.

club_runs input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "club"
  ],
  "properties": {
    "club": {
      "type": "string",
      "pattern": "^[a-z0-9][a-z0-9-]{0,99}$"
    }
  }
}
club_runs annotations
{
  "title": "A club's runs",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
league_runs — A league's longest current runs
Advertised by the server during the last successful anonymous check.
Advertised read-only

Returns the clubs of one league with the longest current run of one kind (unbeaten, winning, winless or clean_sheets), 1 to 10 of them (default 5), each with its page URL. Takes the league slug from resolve.

league_runs input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "league",
    "kind"
  ],
  "properties": {
    "n": {
      "type": "integer",
      "default": 5,
      "maximum": 10,
      "minimum": 1
    },
    "kind": {
      "enum": [
        "unbeaten",
        "winning",
        "winless",
        "clean_sheets"
      ],
      "type": "string"
    },
    "league": {
      "type": "string",
      "pattern": "^[a-z0-9][a-z0-9-]{0,99}$"
    }
  }
}
league_runs annotations
{
  "title": "A league's longest current runs",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
movers — The week's biggest rating movers
Advertised by the server during the last successful anonymous check.
Advertised read-only

Returns the clubs whose 442ball Power Rating rose (up) or fell (down) most between the latest two weekly snapshots, in one league (its slug) or one comparison group, 1 to 10 of them (default 5). The change is the rating difference only.

movers input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "required": [
    "scope",
    "direction"
  ],
  "properties": {
    "n": {
      "type": "integer",
      "default": 5,
      "maximum": 10,
      "minimum": 1
    },
    "scope": {
      "type": "string",
      "maxLength": 100,
      "minLength": 2
    },
    "direction": {
      "enum": [
        "up",
        "down"
      ],
      "type": "string"
    }
  }
}
movers annotations
{
  "title": "The week's biggest rating movers",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
league_index — A league's 442 League Index
Advertised by the server during the last successful anonymous check.
Advertised read-only

Returns the 442 League Index of one league (its slug from resolve), or of the top 1 to 20 European leagues (default 10): 0.6 x the mean 442ball Power Rating of the league's top 6 clubs (top 4 in a league of 12 or fewer) + 0.4 x the mean of all its clubs, in rating points, with both parts and the league page URL. A European league carries its rank among European leagues; a league elsewhere carries no rank yet.

league_index input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "properties": {
    "n": {
      "type": "integer",
      "default": 10,
      "maximum": 20,
      "minimum": 1
    },
    "league": {
      "type": "string",
      "pattern": "^[a-z0-9][a-z0-9-]{0,99}$"
    }
  }
}
league_index annotations
{
  "title": "A league's 442 League Index",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
greatest_sides — The greatest club-seasons within a league
Advertised by the server during the last successful anonymous check.
Advertised read-only

Returns club-seasons ranked within one league since 2010/11 (or the league's first season in 442ball's record) on league results, with each side's score, its rank in the league, its longest unbeaten run and the club page URL. One league (its slug from resolve), 1 to 20 of them (default 10); or one club's best seasons (its club slug), 1 to 10, each with its league and its rank there. Finished seasons only; sides are never compared across leagues.

greatest_sides input schema
{
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "properties": {
    "n": {
      "type": "integer",
      "default": 10,
      "maximum": 20,
      "minimum": 1
    },
    "club": {
      "type": "string",
      "pattern": "^[a-z0-9][a-z0-9-]{0,99}$"
    },
    "scope": {
      "type": "string",
      "pattern": "^[a-z0-9][a-z0-9-]{0,99}$"
    }
  }
}
greatest_sides annotations
{
  "title": "The greatest club-seasons within a league",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}

Prompts

Not advertised

No prompt definitions available.

Resources

Not advertised

No resource definitions available.

30-day availability

Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.

Successful checks
1 of 1 (100%)
Average latency
985 ms
95th percentile latency
985 ms

Maintenance history

Public check and source-refresh events. Editorial and ownership records remain private.

  • · probe · passed · 985 ms · metadata changed · 12 tool(s)

Connect from your client

Each snippet registers the same endpoint; pick the client you use.

This server is operated by the named third party. Listing and endpoint checks are not an endorsement or a security audit. Review the operator's permissions, terms, and data handling before connecting. How listings are checked and corrected.

Claude Code

Run this once in a terminal. It registers the remote server. Use --scope project to write .mcp.json for the repo.
Claude Code configuration
claude mcp add --transport http 442ball-mcp https://mcp.442ball.com/mcp

Codex

Run this once. Codex stores MCP servers in ~/.codex/config.toml (or .codex/config.toml in a trusted project).
Codex configuration
codex mcp add 442ball-mcp --url https://mcp.442ball.com/mcp

Cursor

Merge this server into .cursor/mcp.json in your project, then enable 442ball-mcp in your MCP settings.
Cursor configuration
{
  "mcpServers": {
    "442ball-mcp": {
      "url": "https://mcp.442ball.com/mcp"
    }
  }
}

Cline

Merge this into cline_mcp_settings.json (Cline → MCP Servers → Configure).
Cline configuration
{
  "mcpServers": {
    "442ball-mcp": {
      "type": "streamableHttp",
      "url": "https://mcp.442ball.com/mcp",
      "disabled": false
    }
  }
}

VS Code

Merge this server into .vscode/mcp.json. Use MCP: List Servers to start 442ball-mcp and inspect its tools.
VS Code configuration
{
  "servers": {
    "442ball-mcp": {
      "type": "http",
      "url": "https://mcp.442ball.com/mcp"
    }
  }
}

Gemini CLI

Run this once. It writes .gemini/settings.json in the current project; pass --scope user for ~/.gemini/settings.json.
Gemini CLI configuration
gemini mcp add --transport http 442ball-mcp https://mcp.442ball.com/mcp

Claude Desktop

Merge this into claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\), then restart Claude Desktop.
Claude Desktop configuration
{
  "mcpServers": {
    "442ball-mcp": {
      "url": "https://mcp.442ball.com/mcp"
    }
  }
}

Windsurf

Merge this into ~/.codeium/windsurf/mcp_config.json, then refresh MCP in Cascade. Windsurf remote servers use serverUrl, not url.
Windsurf configuration
{
  "mcpServers": {
    "442ball-mcp": {
      "serverUrl": "https://mcp.442ball.com/mcp"
    }
  }
}

Let your agent find its tools

Find servers like 442ball MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.

Do you run 442ball MCP?

Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.

Claim this listing