Bus Nearby MCP
Provides access to the Israeli transport API for geocoding and transit directions.
Bus Nearby MCP (Israeli transport MCP).
A Model Context Protocol (MCP) server that provides access to the Israeli transport api.
This is the Unofficial MCP of Bus Nearby API, You can check this API here
Features
https://github.com/user-attachments/assets/147ee388-e9c0-4f97-82e7-71d4d6534de0
- π Geocoding: Convert location queries to geographical coordinates
- πΊοΈ Directions: Get transit directions between locations
- π Multi-language: Support for Hebrew and English
- π MCP Protocol: Standard MCP server implementation
- π¦ Docker Support: Easy deployment with Docker
Quick Start with Docker + Cursor
Prerequisites
- Cursor IDE (or any other MCP client)
- Docker Engine
Setup Instructions
-
Setup the MCP server:
{ "mcpServers": { "busnearby-docker": { "command": "docker", "args": ["run", "--rm", "-i", "shmuelc/busnearby-mcp:latest"] } } }
Connect locally with Docker
-
Clone this repo
-
Navigate to repo foler
-
Build and setup the MCP server:
docker build -t busnearby-mcp . -
Add this to mcp.json
{ "mcpServers": { "busnearby": { "command": "docker", "args": [ "run", "--rm", "-i", "--name", "busnearby-mcp-cursor", "busnearby-mcp" ], "env": {} } } }
Connect locally without Docker
Prerequisites
- Node.js 18+ installed
- npm or yarn
- Cursor IDE
Setup Instructions
-
Install dependencies:
npm install -
Build the project:
npm run build -
Test the MCP server:
npm start -
Add to your Cursor MCP configuration:
{ "mcpServers": { "busnearby": { "command": "node", "args": ["/Users/shmuel/Desktop/personal/busnearby-mcp/dist/main.js"], "env": {} } } }Important: Replace the path with your actual project path.
-
Restart Cursor to load the new MCP server
Available Tools
geocode
Convert location queries to coordinates.
Parameters:
locale: "he" or "en" (Hebrew or English)query: Location string (e.g., "ΧͺΧ ΧΧΧΧ" or "Tel Aviv")
Example:
{
"locale": "he",
"query": "ΧͺΧ ΧΧΧΧ"
}
directions
Get transit directions between locations.
Parameters:
fromPlace: Starting location ("address::lat,lng")toPlace: Destination ("address::lat,lng")locale: "he" or "en" (default: "he")arriveBy: Optimize for arrival time (default: false)wheelchair: Wheelchair accessible (default: false)mode: Transport modes (default: "WALK,TRANSIT")numItineraries: Number of routes (default: 3)date: Trip date (YYYY-MM-DD, optional)time: Trip time (HH:MM, optional)
Docker Commands
# Build the image
docker build -t busnearby-mcp .
# Run with docker-compose
docker-compose up -d
# Run interactively for testing
docker run --rm -i busnearby-mcp
# Test MCP protocol
echo '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{"tools":{}},"clientInfo":{"name":"test","version":"1.0.0"}}}' | docker run --rm -i busnearby-mcp
Development
Local Development
npm install
npm run dev
Build and Test
npm run build
npm start
npm run test:e2e
Troubleshooting
Docker Issues
- Ensure Docker is running
- Try rebuilding:
docker build --no-cache -t busnearby-mcp . - Check logs:
docker logs busnearby-mcp
Cursor Connection Issues
- Restart Cursor after configuration changes
- Check MCP configuration path is correct
- Verify Docker image exists:
docker images | grep busnearby-mcp
MCP Protocol Issues
- Test server directly:
echo '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{"tools":{}},"clientInfo":{"name":"test","version":"1.0.0"}}}' | docker run --rm -i busnearby-mcp - Check for JSON-RPC format in responses
API Reference
This MCP server interfaces with the Bus Nearby API to provide:
- Location geocoding in multiple languages
- Multi-modal transit routing
- Real-time schedule information
- Accessibility features
All responses follow standard MCP protocol formatting with proper error handling.
Contributing
Feel free to:
- π Report bugs or issues
- π‘ Suggest new features or improvements
- π Improve documentation
- π§ Submit pull requests
Getting Started:
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
All contributions are welcome and appreciated!
Related Servers
Package Registry Search
Search and get up-to-date information about NPM, Cargo, PyPi, and NuGet packages.
Eventbrite
Interact with the Eventbrite API to search for events, get event details, and retrieve venue information.
WebSearch-MCP
Self-hosted Websearch API
Mamont Search
A search engine server that provides tools for search queries and cache retrieval.
Whois MCP
Performs WHOIS lookups to retrieve domain registration details, including owner, registrar, and expiration dates.
Obsidian Omnisearch
Search your Obsidian vault using the Omnisearch plugin via a REST API.
NPI Registry
Search the National Provider Identifier (NPI) registry for healthcare providers and organizations in the United States.
Serper Search and Scrape
Web search and webpage scraping using the Serper API.
Open Custom Search API
Perform web searches using Google's Custom Search API.
Wizzy TMDB
A wrapper for TMDB