nba-mcp
Provides tools for accessing NBA live data and statistics, including live scoreboards, box scores, play-by-play, player and team information, schedules, standings, and league-wide stats from NBA.com.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@nba-mcpget today's live scores"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
nba-mcp
Node.js / TypeScript MCP server for NBA live data and stats from NBA.com.
This server exposes a focused set of read-only Model Context Protocol tools over stdio. It uses NBA.com's public website endpoints:
Live data:
https://cdn.nba.com/static/json/liveData/...Stats data:
https://stats.nba.com/stats/{endpoint}
NBA.com does not treat these as a formally supported public developer API, so endpoints, required parameters, headers, rate limits, and network access can change without notice.
Install
npm install -g nba-mcpRelated MCP server: NHL Scores MCP Server
Run
Use the published npm package directly from MCP clients:
{
"mcpServers": {
"nba": {
"command": "npx",
"args": ["-y", "nba-mcp"]
}
}
}Or run the installed binary:
nba-mcpFor local development from a checkout:
npm install
npm run build
npm startLocal MCP clients can also use the built stdio entrypoint:
{
"mcpServers": {
"nba": {
"command": "node",
"args": ["/absolute/path/to/nba-mcp/dist/index.js"]
}
}
}During development:
npm run devTools
nba_stats_endpoint- advanced raw caller for documentedstats.nba.comendpointsnba_search_teams- local static NBA team lookupnba_live_scoreboard- today's live scoreboardnba_live_boxscore- live box score bygameIdnba_live_play_by_play- live play-by-play bygameIdnba_live_odds- today's live odds when availablenba_schedule_by_date- schedule and scores for a datenba_search_players- player search viaplayerindexnba_player_info- player bio and headline statsnba_player_career_stats- player career and season totalsnba_player_game_log- player game log for a seasonnba_team_game_log- team game log for a seasonnba_league_standings- standings by seasonnba_league_player_stats- league-wide player dashboard statsnba_league_team_stats- league-wide team dashboard stats
Environment
NBA_STATS_BASE_URL=https://stats.nba.com/stats
NBA_LIVE_BASE_URL=https://cdn.nba.com/static/json/liveData
NBA_STATS_TIMEOUT_MS=30000
NBA_LIVE_TIMEOUT_MS=10000
NBA_MAX_RETRIES=2
NBA_STATS_RATE_LIMIT_MS=650
NBA_USER_AGENT="Mozilla/5.0 ..."NBA_STATS_BASE_URL and NBA_LIVE_BASE_URL are intentionally configurable so deployments can route through a trusted internal proxy when NBA.com blocks direct server-side requests.
Network Notes
stats.nba.com and sometimes cdn.nba.com can reject requests from cloud, datacenter, VPN, or non-browser TLS fingerprints. In those cases tools return an MCP error with the URL, status code, and response body preview. Run from a residential network or proxy through a service that can reach NBA.com.
Development
npm run typecheck
npm run buildPublish
The package is configured for public npm publishing.
npm login --registry https://registry.npmjs.org
npm publish --dry-run --registry https://registry.npmjs.org
npm publish --registry https://registry.npmjs.orgprepublishOnly runs typecheck and prepack builds dist/.
Smoke test the MCP protocol layer:
node --input-type=module -e "import { Client } from '@modelcontextprotocol/sdk/client/index.js'; import { StdioClientTransport } from '@modelcontextprotocol/sdk/client/stdio.js'; const client = new Client({ name: 'smoke-test', version: '0.0.0' }); const transport = new StdioClientTransport({ command: 'node', args: ['dist/index.js'] }); await client.connect(transport); console.log((await client.listTools()).tools.map(t => t.name)); await client.close();"Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityCmaintenanceAn MCP Server implementation that integrates the Balldontlie API, to provide information about players, teams and games for the NBA, NFL and MLB.Last updated410425MIT
- Flicense-qualityDmaintenanceAn MCP Server that provides access to NHL (National Hockey League) scores and statistics via the SportsData.io NHL v3 Scores API.Last updated
- Flicense-qualityDmaintenanceMCP server providing tools to query live scores, schedules, standings, and game stats from the SportRadar API for multiple sports including NFL, NBA, NHL, NCAAMB, soccer, and tennis.Last updated
- AlicenseAqualityDmaintenanceAn MCP server that provides access to ESPN Fantasy Basketball APIs, enabling Claude and other MCP clients to fetch league teams, rosters, free agents, matchups, NBA schedules, and live draft assistant tools.Last updated141MIT
Related MCP Connectors
ESPN MCP — keyless multi-sport live scores, teams, and news via ESPN's public site API.
The hockey data API. Stats, odds, and everything between. REST API and MCP server.
MLB Stats API MCP — official MLB statistics (keyless).
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/ufo2243/nba-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server