Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
제작자가 쓴 설명(영어 원문)
Live and Prematch sports odds, scores and statistics from SportAPI. Demo data without a key.
이 세 가지는 절대 하나의 점수로 합치지 않아요. 의견, 측정, 인기는 서로 다른 것이니까요.
이 서버는 아직 쉬운 말로 된 요약을 쓰지 못했어요. 아래는 레지스트리에서 읽어 온 사실이에요.
쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.
SPORTAPI_KEY, SPORTAPI_BASE_URL, SPORTAPI_LANGUAGE비밀로 표시된 값은 내 계정의 열쇠예요. 절대 다른 사람과 공유하거나 채팅에 붙여 넣지 마세요.
필요한 것
어떤 앱을 쓰세요?
위에서 앱을 고르세요. 기억해 두었다가 다음부터는 버튼에 “…에 설치”라고 표시해요.
Claude Desktop → Settings → Developer → Edit Config를 열고 claude_desktop_config.json에 이 내용을 붙여 넣으세요
{
"mcpServers": {
"sportapi": {
"command": "uvx",
"args": [
"sportapi-mcp"
],
"env": {
"SPORTAPI_KEY": "your-value",
"SPORTAPI_BASE_URL": "your-value",
"SPORTAPI_LANGUAGE": "your-value"
}
}
}
}터미널에서 이 명령어를 실행하세요
claude mcp add sportapi --env SPORTAPI_KEY=your-value --env SPORTAPI_BASE_URL=your-value --env SPORTAPI_LANGUAGE=your-value -- uvx sportapi-mcp실행하기 전에 빈 값을 채워 주세요.
프로젝트의 .cursor/mcp.json 또는 ~/.cursor/mcp.json에 붙여 넣으세요
{
"mcpServers": {
"sportapi": {
"command": "uvx",
"args": [
"sportapi-mcp"
],
"env": {
"SPORTAPI_KEY": "your-value",
"SPORTAPI_BASE_URL": "your-value",
"SPORTAPI_LANGUAGE": "your-value"
}
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
프로젝트의 .vscode/mcp.json에 붙여 넣으세요
{
"servers": {
"sportapi": {
"type": "stdio",
"command": "uvx",
"args": [
"sportapi-mcp"
],
"env": {
"SPORTAPI_KEY": "your-value",
"SPORTAPI_BASE_URL": "your-value",
"SPORTAPI_LANGUAGE": "your-value"
}
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
이 서버는 내 컴퓨터에서 실행되는데, ChatGPT는 인터넷에 있는 서버에만 연결할 수 있어요. 다른 앱을 고르세요.
선택한 앱은 이 기기의 쿠키에만 저장돼요. 계정은 필요 없어요.
SPORTAPI_BASE_URL envSPORTAPI_LANGUAGE env이 설정은 제작자의 레지스트리 정보로 만들었어요. README와 다르면 README를 따르세요.
내 컴퓨터에서 실행돼요. 설치하면 AI 앱에 도구 목록이 나타나요.
누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 7일 점검
레지스트리 이름이 GitHub 계정 SportApi-net 기준으로 확인되었고, 이 계정이 저장소를 소유하고 있어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
내 컴퓨터에서 실행되는 서버라 인터넷 엔드포인트가 없어요
내 컴퓨터에서 실행되며, 대신 로컬 설정을 사용해요
내 컴퓨터에서 실행돼요. 도구 목록은 인터넷 엔드포인트가 있는 서버에서만 읽을 수 있어요
레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.
해당하는 기본 점검 1개 중 1개를 통과했어요. 코드는 읽지 않았어요. 키나 토큰을 넣기 전에 서버가 어떤 권한을 요구하는지 확인하고, 꼭 필요한 권한만 있는 키를 쓰세요.
입력해야 할 값: SPORTAPI_KEY
내 컴퓨터에서 실행돼요. AI 앱이 필요할 때 실행하고, 데이터는 제작자의 서버를 거치지 않아요(서버 자체가 온라인 서비스를 호출하는 경우는 제외).
GitHub 저장소는 마지막으로 – 변경됐고, 최신 버전(0.1.0)은 31일 전 레지스트리에 올라왔어요.
Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. 내 컴퓨터에 Python (uv)도 있어야 해요.
같은 카테고리에는: Spec Driven Development, Remote Desktop Commander, 御府和田玉 在售作品查询
같은 카테고리에서 다른 제작자가 만든 서버예요. 스타 순으로 정렬했어요.
카드 보는 법:★ GitHub 스타i세 기둥: 리뷰 · 점검 · 사용 정도i업데이트 = 최신 버전을 레지스트리에 공개한 날i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Live in-stock Hetian jade from Yufu, Shanghai: prices, monthly price guide, book a viewing.
제작자의 저장소에서 쓰인 그대로 가져왔어요. PopNx MCP가 검토하거나 보증한 내용이 아니에요. HTML, 이미지, 스크립트는 제거했어요. 링크를 누르면 이 사이트를 벗어나요.
An MCP server that lets AI assistants (Claude Desktop, Claude Code, Cursor, VS Code, Windsurf and other MCP clients) look up Live and Prematch matches, scores, live statistics and betting odds from SportAPI. It runs on demo data out of the box, without an API key.
claude mcp add sportapi -- uvx sportapi-mcp
Then ask: *"Which football matches are live right now, and who is favoured?"*
This MCP server is free and MIT-licensed. The SportAPI data service behind it is a commercial
product: live data needs a personal API key (how to get one). Without a key,
every tool answers with the example responses from the SportAPI documentation, and every result
says so.
"W1 1.525 | X 5.08 | W2 6.15"). A detailed match can carry 200+ markets, so get_match returns 15 by default and accepts a markets filter (["1X2", "Total"])."source": "demo") so that an assistant never presents a snapshot as live data.game_id from the wrong line type come back as short explanations the assistant can act on.Example conversations in demo mode (answers abridged). The assistant picks the tools itself.
"What's happening in live football right now?" → list_live_matches(sport_id=1)
*Demo data from the SportAPI documentation, not live.* 39 football matches are in play.
Garuda Darwin 0:1 Darwin Olympic (76', NPL Northern Territory): Darwin Olympic are near-certain
winners at 1.064. Ikonnect FA U19 0:1 Obosa U19 (33'): Obosa favoured at 1.40, the draw at 4.65.
Caucaia U20 — Floresta EC U20 is goalless at 2', with Floresta slight favourites at 2.112.
"Arsenal against Coventry: how are the goal lines priced?" → get_match(game_id=746146992, line_type="live", markets=["Total"])
Arsenal lead 3:0 at 56' (xG 1.45 vs 0.03, shots on target 4:0). Total goals: Over 3.5 at 1.23,
Over 4.5 at 2.09 / Under 4.5 at 1.81, Over 5.5 at 4.41. The market expects a fourth goal but
leans against a fifth.
"When does Manchester City play next, and what are the odds?" → search_matches(text="Manchester"), then get_match(game_id=730321837, line_type="prematch", markets=["1X2", "Total"])
Manchester City — Bournemouth, Premier League, 23 Aug 2026 13:00 UTC. 1X2: City 1.525,
draw 5.08, Bournemouth 6.15. Over 2.5 goals 1.39, under 2.5 2.72.
"What are the biggest games this weekend?" → top_matches(line_type="prematch", include_odds=True)
"Is my SportAPI key OK, and how many requests did I make this week?" → account_status() (live mode)
With a key, the same questions work for every sport in your subscription, with current data.
The server is a Python package (Python 3.10+). The easiest way to run it is with uv: uvx downloads and runs it in an isolated environment, with no install step.
uvx sportapi-mcp # starts the stdio server; MCP clients launch it for you
Or install it with pip and use the sportapi-mcp command instead of uvx sportapi-mcp:
pip install sportapi-mcp
The env blocks below are optional: leave them out to start in demo mode.
One-click install: download sportapi-mcp.mcpb from the latest release and open it — Claude Desktop installs the extension and asks for the optional key and base URL (leave them empty for demo data). The bundle sources are in mcpb/.
Or edit claude_desktop_config.json (Settings → Developer → Edit Config):
{
"mcpServers": { "sportapi": { "command": "uvx", "args": ["sportapi-mcp"], "env": { "SPORTAPI_KEY": "YOUR_API_KEY", "SPORTAPI_BASE_URL": "https://YOUR_API_DOMAIN" } } } }
Restart Claude Desktop; the SportAPI tools appear in the tools menu.
# demo mode
claude mcp add sportapi -- uvx sportapi-mcp
claude mcp add sportapi --scope user \ -e SPORTAPI_KEY=YOUR_API_KEY -e SPORTAPI_BASE_URL=https://YOUR_API_DOMAIN \ -- uvx sportapi-mcp
Add to ~/.cursor/mcp.json (all projects) or .cursor/mcp.json (one project):
{
"mcpServers": { "sportapi": { "command": "uvx", "args": ["sportapi-mcp"], "env": { "SPORTAPI_KEY": "YOUR_API_KEY", "SPORTAPI_BASE_URL": "https://YOUR_API_DOMAIN" } } } }
Add to .vscode/mcp.json. VS Code asks for the key once and stores it securely:
{
"inputs": [ { "type": "promptString", "id": "sportapi-key", "description": "SportAPI key", "password": true } ], "servers": { "sportapi": { "type": "stdio", "command": "uvx", "args": ["sportapi-mcp"], "env": { "SPORTAPI_KEY": "${input:sportapi-key}", "SPORTAPI_BASE_URL": "https://YOUR_API_DOMAIN" } } } }
Any MCP client that can start a stdio server works: the command is uvx, the argument is sportapi-mcp, and the environment variables are listed below. For Windsurf, put the mcpServers block shown for Cursor into ~/.codeium/windsurf/mcp_config.json.
sportapi-mcp --transport streamable-http --port 8000 # http://127.0.0.1:8000/mcp
docker build -t sportapi-mcp . docker run -i --rm -e SPORTAPI_KEY -e SPORTAPI_BASE_URL sportapi-mcp # stdio docker run --rm -p 8000:8000 sportapi-mcp --transport streamable-http --host 0.0.0.0
The HTTP transport has no authentication of its own: keep it on localhost or behind your own gateway, because anyone who can reach it uses your key.
| Variable | Required | Description |
|---|---|---|
SPORTAPI_KEY | for live data | Your API key. The server sends it only in the Package HTTP header, never in URLs or tool output. |
SPORTAPI_BASE_URL | for live data | Your personal API base URL, issued together with the key (https://YOUR_API_DOMAIN). |
SPORTAPI_LANGUAGE | no | Response language code, default en. It must be enabled for your key; see languages. Demo data is English only. |
Set both SPORTAPI_KEY and SPORTAPI_BASE_URL for live data, or neither for demo mode. sportapi-mcp --demo forces demo mode even when a key is configured.
A key is bound to the server IP addresses or sites approved for it (authentication and access). An MCP server usually runs on your own computer, so make sure that address is allowed for the key; account_status shows the IP address SportAPI sees.
| Tool | What it answers | SportAPI method |
|---|---|---|
list_sports | Which sports have Live / Prematch matches now, with counts | sports |
get_menu | Sport → country → tournament tree with IDs and counts | menu |
list_countries | Countries with matches in one sport | countries |
list_tournaments | Tournaments of one sport and country | tournaments |
list_live_matches | Live matches of a sport or tournament: score, period, minute, main odds. Without a sport: live sports plus top live matches | events |
list_prematch_matches | Upcoming matches: the "Top 50", a tournament, the full line, or the calendar (next 2/4/6/12 hours, today … 5 days ahead) | events, calendar |
get_match | One match: score, live statistics, every market and its odds, sub-events (halves, corners, cards…) | event |
search_matches | Find matches by team or participant name, Live and Prematch | search |
top_matches | Up to 10 most popular matches (all sports, or one sport for Prematch) | topmatches, toplist |
top_championships | Up to 12 popular championships with match counts | topchampionships |
account_status | Demo or live; with a key: expiry, sports, languages, access mode, requests over 7 days | account |
Prompts: live_betting_overview(sport) and compare_match_markets(match, markets).
How the output maps to the API data (decimal odds, blocked selections, market IDs, sub-events, live statistics) is described in the odds, match and live statistics data models. get_match(include_pointers=true) adds each selection's oc_pointer, the code used by bet placement systems such as the SportAPI Coupon API.
Demo mode serves the full English example responses from the SportAPI documentation (snapshots from August–October 2026):
list_sports, get_menu, top_matches: Live and Prematch;list_countries, list_live_matches, list_prematch_matches: football (sport_id앞부분만 보여 드려요. 나머지는 저장소에서 읽어 보세요