벵갈루루 BMTC MCP 서버
방갈로르 도시 교통 공사(BMTC) 버스 서비스를 위한 몰 커넥터 프로그램(MCP) 서버 구현.
건축학
BMTC MCP 서버는 모듈식 계층 구조를 기반으로 문제를 분리하고 유지 관리 편의성을 높입니다. 이 시스템은 방갈로르 도시 교통 공사(Bangalore Metropolitan Transport Corporation) 버스의 실시간 교통 데이터를 처리하고 표준화된 API를 통해 제공하도록 설계되었습니다.
핵심 구성 요소
API 계층 : 인증, 경로, 정류장, 버스 위치 및 ETA 정보를 위한 RESTful 엔드포인트
서비스 계층 : 비즈니스 로직, 데이터 변환 및 ETA 계산
데이터 액세스 계층 : Mongoose ODM을 통한 MongoDB 통합
캐싱 계층 : 성능 향상을 위한 Redis 기반 캐싱
외부 통합 계층 : BMTC API 통합
특징
실시간 버스 위치 추적
경로 정보 및 일정
정류장 세부 정보 및 ETA(예상 도착 시간)
벵갈루루에서 2,200개 이상의 버스 노선과 8,400개 이상의 버스 정류장 지원
인증 및 권한 부여
데이터 캐싱 및 최적화
근처 정류장 및 버스에 대한 지리공간 쿼리
필수 조건
Node.js(v14 이상)
npm 또는 yarn
몽고디비
Redis(캐싱용 선택 사항)
깃
설치 및 설정
방법 1: 표준 설치
저장소를 복제합니다
지엑스피1
종속성 설치
환경 변수 구성
구성에 맞게 .env
파일을 편집합니다.
모의 데이터로 데이터베이스 시드(선택 사항)
서버를 시작합니다
자동 재시작을 통한 개발의 경우:
방법 2: Docker Compose 사용
저장소를 복제합니다
환경 변수 구성(선택 사항)
docker-compose.yml
파일에서 환경 변수를 직접 수정하거나 .env
파일을 만들 수 있습니다.
컨테이너를 빌드하고 시작하세요
이렇게 하면 세 개의 컨테이너가 시작됩니다.
bmtc-mcp-api
: Node.js API 서버bmtc-mcp-mongo
: MongoDB 데이터베이스bmtc-mcp-redis
: Redis 캐시 서버
모의 데이터로 데이터베이스 시드(선택 사항)
로그 보기
컨테이너를 멈추세요
볼륨도 제거하려면:
API 사용
서버가 실행되면 다음 위치에서 API에 액세스할 수 있습니다.
API 문서는 여기에서 확인하세요.
예제 API 엔드포인트
API 키
JWT 비밀
JWT 비밀번호는 인증 토큰 서명에 사용됩니다. 안전한 난수 문자열을 생성하세요.
.env
파일에 다음을 추가하세요.
BMTC API 키
개발을 위해 실제 BMTC API 키 없이 모의 데이터를 사용할 수 있습니다.
생산의 경우, 공식 API 액세스를 요청하려면 BMTC에 직접 문의해야 합니다.
개발
테스트
테스트를 실행하세요:
적용 범위를 사용하여 테스트 실행:
린팅
코드 스타일 확인:
코드 스타일 문제 수정:
프로젝트 구조
기여하다
행동 강령과 풀 리퀘스트 제출 프로세스에 대한 자세한 내용은 CONTRIBUTING.md를 읽어보세요.
특허
이 프로젝트는 MIT 라이선스에 따라 라이선스가 부여되었습니다. 자세한 내용은 라이선스 파일을 참조하세요.
감사의 말
This server cannot be installed
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.
버스 추적, 일정, 노선, 서비스 업데이트를 포함한 방갈로르의 대중교통 정보에 실시간으로 접근하여 승객 경험을 개선합니다.
Related MCP Servers
- AsecurityFlicenseAqualityEnables Large Language Models to access real-time data on Vilnius public transport stops and routes through the Model Context Protocol.Last updated -21
- AsecurityFlicenseAqualityFacilitates real-time access to Singapore's Land Transport Authority (LTA) transportation data, offering insights into bus arrivals, train services, traffic conditions, and more through integration with the LTA DataMall API.Last updated -73
- -securityAlicense-qualityProvides access to Deutsche Bahn train timetables, station information, and schedule changes through Model Context Protocol tools and resources.Last updated -7MIT License
- AsecurityFlicenseAqualityProvides access to Berlin's public transport data through the VBB API, enabling users to search stops, get departures, and plan journeys across Berlin-Brandenburg.Last updated -35