Mapbox

Um servidor MCP para interagir com a API do Mapbox, fornecendo acesso a mapas, navegação e outros serviços baseados em localização.

Documentação

Mapbox MCP Server

Servidor MCP para a API Mapbox.

Funcionalidades

Ferramentas de Navegação

  1. mapbox_directions

    • Obtenha direções entre coordenadas
    • Entradas:
      • coordinates ({latitude: number, longitude: number}[])
      • profile (opcional): "driving-traffic", "driving", "walking", "cycling"
    • Retorna: detalhes da rota com etapas, distância e duração
  2. mapbox_directions_by_places

    • Obtenha direções entre lugares usando seus nomes
    • Entradas:
      • places (string[]): Array de nomes de lugares
      • profile (opcional): "driving-traffic", "driving", "walking", "cycling"
      • language (opcional): Código de idioma de duas letras (ex.: "zh", "en")
    • Retorna:
      • Resultados de geocodificação para cada lugar
      • Detalhes da rota com etapas, distância e duração
      • Quaisquer erros que ocorreram durante o processamento
  3. mapbox_matrix

    • Calcule matrizes de tempo de viagem e distância entre coordenadas
    • Entradas:
      • coordinates ({latitude: number, longitude: number}[])
      • profile (opcional): "driving", "walking", "cycling"
      • annotations (opcional): "duration", "distance", "duration,distance"
      • sources (opcional): Índices das coordenadas de origem
      • destinations (opcional): Índices das coordenadas de destino
    • Retorna: Matriz de durações e/ou distâncias entre pontos
  4. mapbox_matrix_by_places

    • Calcule matrizes de tempo de viagem e distância entre lugares usando seus nomes
    • Entradas:
      • places (string[]): Array de nomes de lugares (2-25 lugares)
      • profile (opcional): "driving", "walking", "cycling"
      • annotations (opcional): "duration", "distance", "duration,distance"
      • language (opcional): Código de idioma de duas letras
      • sources (opcional): Índices dos lugares de origem
      • destinations (opcional): Índices dos lugares de destino
    • Retorna:
      • Resultados de geocodificação para cada lugar
      • Matriz de durações e/ou distâncias
      • Quaisquer erros que ocorreram durante o processamento

Ferramentas de Busca

  1. mapbox_geocoding
    • Pesquise lugares e converta endereços em coordenadas
    • Entradas:
      • searchText (string): O lugar ou endereço a ser pesquisado
      • limit (opcional): Número máximo de resultados (1-10)
      • types (opcional): Filtrar por tipos de lugar (país, região, lugar, etc.)
      • language (opcional): Código de idioma de duas letras
      • fuzzyMatch (opcional): Ativar/desativar correspondência difusa
    • Retorna: Informações detalhadas de localização, incluindo coordenadas e propriedades

Integração com Claude Desktop

Adicione esta configuração ao seu arquivo de configuração do Claude Desktop (normalmente localizado em ~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "mapbox-mcp-server": {
      "command": "node",
      "args": ["/absolute/path/to/mapbox-mcp-server/build/index.js"],
      "env": {
        "MAPBOX_ACCESS_TOKEN": "your-api-key"
      }
    }
  }
}

Configuração

Pré-requisitos

  • Node.js 16 ou superior
  • TypeScript 4.5 ou superior
  • Uma chave de API Mapbox válida

Chave de API

Obtenha uma chave de API Mapbox seguindo as instruções aqui.

Defina sua chave de API como uma variável de ambiente:

export MAPBOX_ACCESS_TOKEN=your_api_key_here

Limites de Taxa

  • Directions API: 300 requisições por minuto
  • Matrix API:
    • 60 requisições por minuto para driving/walking/cycling
    • 30 requisições por minuto para driving-traffic
  • Geocoding API: 600 requisições por minuto

Implantação

Estrutura

No mapbox-mcp-server, usamos a seguinte estrutura para gerenciar os handlers do servidor:

  • src/server/handlers/base.ts: Classe base para todos os handlers
  • src/server/registry.ts: Registro para todos os handlers
  • src/server/main.ts: Ponto de entrada principal do servidor

Cada módulo de funcionalidade segue esta estrutura:

src/
├── types/          # Type definitions
├── schemas/        # Zod schemas for validation
├── tools/
│   ├── definitions/  # Tool definitions
│   └── handlers/     # Tool implementations
└── server/
    └── handlers/     # Handler classes

Diagrama de Classes: mapbox-mcp-server-class-diagram


Diagrama de Processos: mapbox-mcp-server-process-diagram

Tratamento de Erros

Todas as ferramentas implementam tratamento abrangente de erros:

  • Erros de validação de entrada
  • Falhas de requisição à API
  • Erros de limite de taxa
  • Erros específicos do serviço (ex.: nenhuma rota encontrada, coordenadas inválidas)

Licença

Este servidor MCP é licenciado sob a Licença MIT. Isso significa que você é livre para usar, modificar e distribuir o software, sujeito aos termos e condições da Licença MIT. Para mais detalhes, consulte o arquivo LICENSE no repositório do projeto.