Skip to main content
Glama
mirodn

mcp-server-public-transport

mcp-server-public-transport

유럽 전역의 실시간 대중교통 데이터를 제공하는 MCP 서버입니다.

소개

mcp-server-public-transport는 유럽 전역의 대중교통 데이터에 접근할 수 있는 Model Context Protocol (MCP) 호환 로컬 서버입니다. 현재 영국, 스위스, 노르웨이, 벨기에, 베를린/브란덴부르크의 API를 통합하여 기차 연결편, 실시간 출발 정보, 버스 위치 등을 조회할 수 있습니다.

Related MCP server: Berlin Transport MCP Server

기능 구현 상태

지원 국가

국가

API 기본 URL

상태

영국

https://transportapi.com

스위스

https://transport.opendata.ch

벨기에

https://api.irail.be

노르웨이

https://api.entur.io

베를린/브란덴부르크

https://v6.vbb.transport.rest

국가별 기능

기능

API 경로

상태

영국

실시간 출발 정보

/uk/train/station_timetables/{station_code}.json

스위스

연결편 검색

/connections

역 조회

/locations

출발 안내판

/stationboard

주변 역

/locations?x={lon}&y={lat}

벨기에

실시간 출발 정보

/departures

역 조회

/stations

주변 역

/stations/nearby

노르웨이

장소 검색

/geocoder/v1/autocomplete

실시간 출발 정보

GraphQL: stopPlace(id) { estimatedCalls(...) }

여행 계획

GraphQL: trip(from, to, dateTime, numTripPatterns, ...)

가장 가까운 정류장

GraphQL: nearest(latitude, longitude, maximumDistance, ...)

베를린/브란덴부르크

위치 검색

/locations

실시간 출발 정보

/stops/:id/departures

실시간 도착 정보

/stops/:id/arrivals

여정 계획

/journeys

주변 역

/locations/nearby

설정

환경 변수

다음 환경 변수를 설정하세요:

UK_TRANSPORT_APP_ID=your_uk_app_id
UK_TRANSPORT_API_KEY=your_uk_api_key

Claude Desktop에서 사용하기

claude_desktop_config.json`에 추가하세요:

{
  "mcpServers": {
    "mcp-server-public-transport": {
      "command": "uv",
      "args": [
        "--directory",
        "/ABSOLUTE/PATH/TO/mcp-server-public-transport",
        "run",
        "server.py"
      ],
      "env": {
        "UK_TRANSPORT_APP_ID": "your-uk-app-id",
        "UK_TRANSPORT_API_KEY": "your-uk-api-key"
      }
    }
  }
}

/ABSOLUTE/PATH/TO/PARENT/FOLDER/mcp-server-public-transport를 저장소를 복제한 실제 경로로 바꾸세요.

참고: 명령 필드에 uv 실행 파일의 전체 경로를 입력해야 할 수도 있습니다. MacOS/Linux에서는 which uv, Windows에서는 where uv를 실행하여 확인할 수 있습니다.

개발

개발 환경 설정

  1. 저장소 복제

git clone https://github.com/mirodn/mcp-server-public-transport.git
cd mcp-server-public-transport
  1. 의존성 설치

uv sync
  1. 환경 변수 설정

cp .env.example .env
  1. 서버 실행

uv run server.py

테스트 실행

이 프로젝트는 테스트를 위해 pytest를 사용하며 다음 명령을 사용할 수 있습니다:

# Run all tests
make test

코드 품질

# Run linting
make lint

# Run code formatting
make format

지속적 통합 (CI)

이 프로젝트에는 다음을 자동으로 수행하는 GitHub Actions 워크플로우(.github/workflows/test.yml)가 포함되어 있습니다:

  • Python 3.10, 3.11, 3.12에서 테스트 실행

  • ruff를 사용한 린팅 검사 실행

  • main 브랜치에 대한 모든 푸시 및 풀 리퀘스트 시 실행

CI 파이프라인은 변경 사항이 병합되기 전에 지원되는 모든 Python 버전에서 코드 품질과 호환성을 보장합니다.

기여

기여를 환영합니다! 자유롭게 풀 리퀘스트를 제출해 주세요.

패키지는 pyproject.toml에서 project.version이 업데이트되면 PyPI에 자동으로 배포됩니다. 버전 관리는 semver를 따르세요.

라이선스

MIT 라이선스

Latest Blog Posts

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/mirodn/mcp-server-public-transport'

If you have feedback or need assistance with the MCP directory API, please join our Discord server