Soccer MCP Server

by obinopaul
Verified

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Supports containerized deployment using Docker for easier setup and configuration of the soccer data server

  • Provides access to Premier League data including standings, fixtures, schedules, team information, and match statistics

  • Uses Pydantic for input validation of football data requests and responses

축구 MCP 서버

API-Football 서비스를 사용하여 축구 통계 및 라이브 경기 데이터를 위한 모델 컨텍스트 프로토콜(MCP)을 구현하는 Python 서버입니다.

개요

이 서버는 API-Football API를 통해 축구 데이터에 접근할 수 있는 포괄적인 도구 세트를 제공합니다. 애플리케이션과 축구 데이터 서비스를 연결하는 다리 역할을 하며, 전 세계 리그, 팀, 선수의 실시간 경기 정보와 과거 통계를 제공합니다.

특징

  • 리그 데이터(순위, 경기 일정)
  • 팀 정보 및 경기 일정
  • 플레이어 통계 및 프로필
  • 라이브 경기 데이터(이벤트, 통계, 타임라인)
  • 경기 분석(통계, 이벤트)

구성

이 서버에는 API-Football 서비스를 위한 RapidAPI의 API 키가 필요합니다.

  1. RapidAPI 에 계정을 만드세요
  2. API-Football API 구독하기
  3. 환경 변수를 설정합니다.지엑스피1

도구

리그 데이터

  • 이름으로 리그 ID 가져오기
    • 주어진 리그 이름에 대한 리그 ID를 검색합니다.
    • 예: get_league_id_by_name(league_name="Premier League")
  • 모든 리그 ID 가져오기
    • ID가 있는 모든 축구 리그 목록을 검색합니다.
    • 국가별로 필터링 가능
    • 예: get_all_leagues_id(country=["England", "Spain"])
  • 입상_순위
    • 여러 리그와 시즌의 리그 순위를 검색합니다.
    • 팀별로 필터링 가능
    • 예: get_standings(league_id=[39, 140], season=[2022, 2023])
  • 리그 정보 받기
    • 특정 축구 리그에 대한 정보 검색
    • 예: get_league_info(league_name="Champions League")
  • 리그 경기 일정을 얻으세요
    • 주어진 리그 및 시즌의 모든 경기 일정을 검색합니다.
    • 예: get_league_fixtures(league_id=39, season=2023)
  • 날짜별로 리그 일정을 받으세요
    • 지정된 날짜에 리그 일정을 검색합니다.
    • 예: get_league_schedule_by_date(league_name="Premier League", date=["2024-03-08", "2024-03-09"], season="2023")

플레이어 데이터

  • 플레이어_아이디를 가져오세요
    • 이름과 일치하는 플레이어의 플레이어 ID 및 정보를 검색합니다.
    • 예: get_player_id(player_name="Messi")
  • 플레이어 프로필 가져오기
    • 플레이어의 성으로 프로필 검색
    • 예: get_player_profile(player_name="Messi")
  • 플레이어 통계 가져오기
    • 시즌 및 리그 이름별로 자세한 플레이어 통계를 검색합니다.
    • 예: get_player_statistics(player_id=154, seasons=[2022, 2023], league_name="La Liga")
  • 플레이어 통계_2 가져오기
    • 시즌 및 리그 ID별로 자세한 플레이어 통계를 검색합니다.
    • 예: get_player_statistics_2(player_id=154, seasons=[2022, 2023], league_id=140)

팀 데이터

  • 팀 경기 일정을 얻으세요
    • 팀의 과거 또는 향후 경기를 반환합니다.
    • 예: get_team_fixtures(team_name="Manchester United", type="past", limit=3)
  • 날짜 범위별 팀 경기 일정 가져오기
    • 특정 날짜 범위 내 팀의 경기 일정 검색
    • 예: get_team_fixtures_by_date_range(team_name="Liverpool", from_date="2023-09-01", to_date="2023-09-30", season="2023")
  • 팀 정보 얻기
    • 특정 팀에 대한 기본 정보 검색
    • 예: get_team_info(team_name="Real Madrid")

경기/경기 일정 데이터

  • 경기 통계 가져오기
    • 특정 경기에 대한 자세한 통계를 검색합니다.
    • 예: get_fixture_statistics(fixture_id=867946)
  • get_fixture_events
    • 경기 일정(골, 카드, 교체 선수)에 대한 모든 경기 내 이벤트를 검색합니다.
    • 예: get_fixture_events(fixture_id=867946)
  • 여러 경기 통계 가져오기
    • 여러 경기의 통계를 한 번에 검색합니다.
    • 예: get_multiple_fixtures_stats(fixture_ids=[867946, 867947, 867948])

라이브 경기 데이터

  • 팀을 위한 라이브 매치를 받으세요
    • 팀이 현재 라이브로 플레이하고 있는지 확인합니다.
    • 예: get_live_match_for_team(team_name="Chelsea")
  • 팀을 위한 라이브 통계를 받으세요
    • 경기에서 팀의 실시간 경기 통계를 검색합니다.
    • 예: get_live_stats_for_team(team_name="Liverpool")
  • 라이브 매치 타임라인 받기
    • 팀의 라이브 경기에 대한 이벤트의 실시간 타임라인을 검색합니다.
    • 예: get_live_match_timeline(team_name="Manchester City")

용법

서버는 Fast MCP 프레임워크를 사용하여 구현되며 독립 실행형 서비스로 실행할 수 있습니다.

# Start the server python soccer_server.py # or mcp run soccer-server.py

구성

  • 서버는 보다 안정적인 작동을 위해 30초의 시간 초과로 실행됩니다.
  • 신호 처리기는 우아한 종료(Ctrl+C)를 위해 구현됩니다.

Claude Desktop과 함께 사용

옵션 1: Docker 사용(권장)

  1. 이 저장소를 복제하세요
git clone https://github.com/obinopaul/soccer-mcp-server.git cd soccer-mcp-server
  1. 종속성 설치
pip install -r requirements.txt
  1. Docker 이미지 빌드
docker build -t soccer_server .
  1. Docker 컨테이너를 실행합니다(API 키가 환경 변수로 전달되었는지 확인하세요)
docker run -d -p 5000:5000 -e RAPID_API_KEY_FOOTBALL=your_api_key_here --name soccer_server soccer_server
  1. claude_desktop_config.json 에 다음을 추가하세요:
{ "mcpServers": { "soccer_server": { "command": "docker", "args": [ "exec", "-i", "soccer_server", "python", "soccer_server.py" ], "env": { "RAPID_API_KEY_FOOTBALL": "your_api_key_here" } } } }

옵션 2: 직접 Python 실행

  1. 이 저장소를 복제하세요
git clone https://github.com/obinopaul/soccer-mcp-server.git cd soccer-mcp-server
  1. 종속성 설치
pip install -r requirements.txt
  1. API 키 환경 변수 설정
export RAPID_API_KEY_FOOTBALL=your_api_key_here
  1. 필요에 따라 Python 경로를 조정하여 claude_desktop_config.json 에 다음을 추가합니다.
{ "mcpServers": { "soccer_server": { "command": "/path/to/your/python", "args": [ "/path/to/soccer_server.py" ], "env": { "RAPID_API_KEY_FOOTBALL": "your_api_key_here" } } } }

선택한 구성을 추가한 후 Claude Desktop을 다시 시작하여 축구 서버를 로드하세요. 그러면 Claude와의 대화에서 모든 축구 데이터 도구를 사용할 수 있습니다.

기술적 세부 사항

서버는 다음을 기반으로 구축되었습니다.

  • API-RapidAPI를 통한 축구
  • API 인터페이스를 위한 MCP
  • 입력 검증을 위한 Pydantic
  • API 통신 요청

특허

이 MCP 서버는 MIT 라이선스에 따라 제공됩니다.

-
security - not tested
F
license - not found
-
quality - not tested

API-Football을 통해 포괄적인 축구 통계와 라이브 경기 데이터에 대한 프로그래밍 방식 액세스를 제공하여 애플리케이션에서 리그 순위, 팀 경기 일정, 선수 통계 및 실시간 경기 이벤트를 검색할 수 있습니다.

  1. Overview
    1. Features
      1. Configuration
        1. Tools
          1. League Data
          2. Player Data
          3. Team Data
          4. Match/Fixture Data
          5. Live Match Data
        2. Usage
          1. Configuration
          2. Usage with Claude Desktop
        3. Technical Details
          1. License
            ID: myroul4fk9