Koskamo

PropLab MCP

A Model Context Protocol server providing NBA and WNBA player-prop analytics, including daily boards, public track records, defensive metrics, usage leaders, and player research tools.

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.

PropLab MCP logo, by KhavelCommunity listingStreamable HTTPNo sign-inEndpoint checked 2026-11-01Published by Khavel
MCP endpoint (Streamable HTTP)
https://nbaproplab.com/mcp
Vendor documentation

What you can do with it

  • Retrieve the daily player-prop board for the next slate
  • Check the model's public track record by tier and stat
  • Analyze defense vs position metrics for teams
  • Search for players and view recent game logs and injury status

Source and maintenance

Community listingRegistry 1.0.0-remote
Maintenance checked

Protocol and capabilities

Server
proplab 1.0.0
MCP protocol
2025-06-18
Tools
10 advertised
Resources
Not advertised
Resource templates
Not advertised
Prompts
Not advertised
Server-advertised capabilities
{
  "tools": {},
  "logging": {}
}

Tools

10 advertised

daily_board — Daily player-prop board
Advertised by the server during the last successful anonymous check.
Advertised read-only

The published NBA or WNBA player-prop board for the next slate (player, stat, line, direction, tier, model score) and how the last settled board did (hits, misses, voids). Informational analysis, not betting advice.

daily_board input schema
{
  "type": "object",
  "properties": {
    "league": {
      "type": "string",
      "default": "nba",
      "description": "League: \"nba\" or \"wnba\"."
    }
  }
}
daily_board annotations
{
  "title": "Daily player-prop board",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
track_record — Public track record
Advertised by the server during the last successful anonymous check.
Advertised read-only

Settled record of the model's picks with optional filters. Reading it: the overall*/total* fields count every pick the engine evaluated, including Weak ratings that are never published; the published record is the PREMIUM tier (premiumHitRate, goodPicks) and STANDARD (marginalPicks). Dates before 2026-04-03 are a backtest; use from=2026-04-03 for live picks only.

track_record input schema
{
  "type": "object",
  "properties": {
    "to": {
      "type": [
        "string",
        "null"
      ],
      "default": null,
      "description": "Optional end date, yyyy-MM-dd."
    },
    "from": {
      "type": [
        "string",
        "null"
      ],
      "default": null,
      "description": "Optional start date, yyyy-MM-dd."
    },
    "tier": {
      "type": [
        "string",
        "null"
      ],
      "default": null,
      "description": "Optional tier: \"Premium\" or \"Standard\"."
    },
    "league": {
      "type": [
        "string",
        "null"
      ],
      "default": null,
      "description": "Optional league: \"nba\" or \"wnba\"."
    }
  }
}
track_record annotations
{
  "title": "Public track record",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
defense_vs_position — Defense vs position
Advertised by the server during the last successful anonymous check.
Advertised read-only

How many points, rebounds and assists each team allows to guards, forwards and centers relative to the league average, with defensive rating, opponent pace and ranks.

defense_vs_position input schema
{
  "type": "object",
  "properties": {
    "league": {
      "type": "string",
      "default": "nba",
      "description": "League: \"nba\" or \"wnba\"."
    }
  }
}
defense_vs_position annotations
{
  "title": "Defense vs position",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
usage_leaders — Usage rate leaders
Advertised by the server during the last successful anonymous check.
Advertised read-only

Players ranked by usage rate this season, with last-10-games usage, minutes and points.

usage_leaders input schema
{
  "type": "object",
  "properties": {
    "league": {
      "type": "string",
      "default": "nba",
      "description": "League: \"nba\" or \"wnba\"."
    }
  }
}
usage_leaders annotations
{
  "title": "Usage rate leaders",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
referee_assignments_today — NBA referee assignments today
Advertised by the server during the last successful anonymous check.
Advertised read-only

Officiating crew of each NBA game today (published by the league the morning of game day) with each referee's fouls per game.

referee_assignments_today input schema
{
  "type": "object",
  "properties": {}
}
referee_assignments_today annotations
{
  "title": "NBA referee assignments today",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
referees — NBA referees
Advertised by the server during the last successful anonymous check.
Advertised read-only

All NBA referees this season with games worked, fouls per game and fouls above the league average.

referees input schema
{
  "type": "object",
  "properties": {}
}
referees annotations
{
  "title": "NBA referees",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
nba_today — NBA today
Advertised by the server during the last successful anonymous check.
Advertised read-only

Today's NBA games with tip-off times, yesterday's final scores and the current standings by conference.

nba_today input schema
{
  "type": "object",
  "properties": {}
}
nba_today annotations
{
  "title": "NBA today",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
games — Games by date
Advertised by the server during the last successful anonymous check.
Advertised read-only

NBA and WNBA games on a date (defaults to today, US Eastern).

games input schema
{
  "type": "object",
  "properties": {
    "date": {
      "type": [
        "string",
        "null"
      ],
      "default": null,
      "description": "Optional date, yyyy-MM-dd."
    }
  }
}
games annotations
{
  "title": "Games by date",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
search_players — Search players
Advertised by the server during the last successful anonymous check.
Advertised read-only

Find NBA and WNBA players by name; returns their ids for player_research.

search_players input schema
{
  "type": "object",
  "required": [
    "query"
  ],
  "properties": {
    "query": {
      "type": "string",
      "description": "Player name or part of it (2-50 characters)."
    }
  }
}
search_players annotations
{
  "title": "Search players",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "destructiveHint": false
}
player_research — Player research
Advertised by the server during the last successful anonymous check.
Advertised read-only

A player's recent game logs, today's prop lines across books with hit rates, injury status, next game context and the model's picks on that player.

player_research input schema
{
  "type": "object",
  "required": [
    "playerId"
  ],
  "properties": {
    "playerId": {
      "type": "integer",
      "description": "Player id from search_players."
    }
  }
}
player_research annotations
{
  "title": "Player research",
  "readOnlyHint": true,
  "openWorldHint": false,
  "idempotentHint": true,
  "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
1067 ms
95th percentile latency
1067 ms

Maintenance history

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

  • · probe · passed · 1067 ms · metadata changed · 10 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 proplab-mcp https://nbaproplab.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 proplab-mcp --url https://nbaproplab.com/mcp

Cursor

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

Cline

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

VS Code

Merge this server into .vscode/mcp.json. Use MCP: List Servers to start proplab-mcp and inspect its tools.
VS Code configuration
{
  "servers": {
    "proplab-mcp": {
      "type": "http",
      "url": "https://nbaproplab.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 proplab-mcp https://nbaproplab.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": {
    "proplab-mcp": {
      "url": "https://nbaproplab.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": {
    "proplab-mcp": {
      "serverUrl": "https://nbaproplab.com/mcp"
    }
  }
}

Let your agent find its tools

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