Bus Nearby MCP

Fornece acesso à API de transporte israelense para geocodificação e direções de trânsito.

Documentação

Bus Nearby MCP (MCP de transporte israelense).

Um servidor Model Context Protocol (MCP) que fornece acesso à API de transporte israelense.
Este é o MCP não oficial da API Bus Nearby, Você pode verificar esta API aqui

Recursos

https://github.com/user-attachments/assets/147ee388-e9c0-4f97-82e7-71d4d6534de0

  • 🚍 Geocodificação: Converta consultas de localização em coordenadas geográficas
  • 🗺️ Rotas: Obtenha rotas de trânsito entre locais
  • 🌐 Multilíngue: Suporte para hebraico e inglês
  • 🔌 Protocolo MCP: Implementação padrão de servidor MCP
  • 📦 Suporte a Docker: Implantação fácil com Docker

Início Rápido com Docker + Cursor

Pré-requisitos

Instruções de Configuração

  1. Configure o servidor MCP:

    {
      "mcpServers": {
        "busnearby-docker": {
          "command": "docker",
          "args": ["run", "--rm", "-i", "shmuelc/busnearby-mcp:latest"]
        }
      }
    }
    

Conecte localmente com Docker

  1. Clone este repositório

  2. Navegue até a pasta do repositório

  3. Compile e configure o servidor MCP:

    docker build -t busnearby-mcp .
    
  4. Adicione isto ao mcp.json

    {
      "mcpServers": {
        "busnearby": {
          "command": "docker",
          "args": [
            "run",
            "--rm",
            "-i",
            "--name",
            "busnearby-mcp-cursor",
            "busnearby-mcp"
          ],
          "env": {}
        }
      }
    }
    

Conecte localmente sem Docker

Pré-requisitos

  • Node.js 18+ instalado
  • npm ou yarn
  • IDE Cursor

Instruções de Configuração

  1. Instale as dependências:

    npm install
    
  2. Compile o projeto:

    npm run build
    
  3. Teste o servidor MCP:

    npm start
    
  4. Adicione à sua configuração MCP do Cursor:

    {
      "mcpServers": {
        "busnearby": {
          "command": "node",
          "args": ["/Users/shmuel/Desktop/personal/busnearby-mcp/dist/main.js"],
          "env": {}
        }
      }
    }
    

    Importante: Substitua o caminho pelo caminho real do seu projeto.

  5. Reinicie o Cursor para carregar o novo servidor MCP

Ferramentas Disponíveis

geocode

Converta consultas de localização em coordenadas.

Parâmetros:

  • locale: "he" ou "en" (hebraico ou inglês)
  • query: String de localização (ex.: "תל אביב" ou "Tel Aviv")

Exemplo:

{
  "locale": "he",
  "query": "תל אביב"
}

directions

Obtenha rotas de trânsito entre locais.

Parâmetros:

  • fromPlace: Local de partida ("address::lat,lng")
  • toPlace: Destino ("address::lat,lng")
  • locale: "he" ou "en" (padrão: "he")
  • arriveBy: Otimizar para horário de chegada (padrão: false)
  • wheelchair: Acessível para cadeira de rodas (padrão: false)
  • mode: Modos de transporte (padrão: "WALK,TRANSIT")
  • numItineraries: Número de rotas (padrão: 3)
  • date: Data da viagem (AAAA-MM-DD, opcional)
  • time: Hora da viagem (HH:MM, opcional)

Comandos Docker

# 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

Desenvolvimento

Desenvolvimento Local

npm install
npm run dev

Compilar e Testar

npm run build
npm start
npm run test:e2e

Solução de Problemas

Problemas com Docker

  • Certifique-se de que o Docker está em execução
  • Tente recompilar: docker build --no-cache -t busnearby-mcp .
  • Verifique os logs: docker logs busnearby-mcp

Problemas de Conexão com o Cursor

  • Reinicie o Cursor após alterações de configuração
  • Verifique se o caminho da configuração MCP está correto
  • Verifique se a imagem Docker existe: docker images | grep busnearby-mcp

Problemas com o Protocolo MCP

  • Teste o servidor diretamente: 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
  • Verifique o formato JSON-RPC nas respostas

Referência da API

Este servidor MCP interage com a API Bus Nearby para fornecer:

  • Geocodificação de localização em vários idiomas
  • Roteamento de trânsito multimodal
  • Informações de horários em tempo real
  • Recursos de acessibilidade

Todas as respostas seguem a formatação padrão do protocolo MCP com tratamento adequado de erros.

Contribuindo

Sinta-se à vontade para:

  • 🐛 Relatar bugs ou problemas
  • 💡 Sugerir novos recursos ou melhorias
  • 📖 Melhorar a documentação
  • 🔧 Enviar pull requests

Começando:

  1. Faça um fork do repositório
  2. Crie um branch de recurso
  3. Faça suas alterações
  4. Teste minuciosamente
  5. Envie um pull request

Todas as contribuições são bem-vindas e apreciadas!