Travel MCP Server
Um servidor completo de planejamento de viagens para busca de voos, reserva de hospedagem, câmbio de moedas e previsão do tempo.
Documentação
Travel MCP Server
Um servidor Model Context Protocol (MCP) para planejamento de viagens abrangente, fornecendo busca de voos, reserva de acomodações, câmbio de moedas, previsão do tempo e cálculo de orçamento de viagem.
Recursos
- 🛫 Busca de Voos: Encontre e compare voos com várias opções
- 🏨 Busca de Acomodações: Pesquise hotéis, aluguéis de temporada e outras acomodações
- 💱 Câmbio de Moedas: Obtenha taxas de câmbio em tempo real para o orçamento da viagem
- 🌤️ Previsão do Tempo: Verifique as condições climáticas para as datas da sua viagem
- 💰 Calculadora de Orçamento de Viagem: Calcule e planeje seus gastos de viagem
Instalação
- Clone o repositório:
git clone <repository-url>
cd travel-mcp-server
- Instale as dependências:
npm install
- Configure as variáveis de ambiente:
- Copie
.env.examplepara.env - Preencha suas chaves de API (veja Configuração de Chaves de API)
- Copie
Configuração de Chaves de API
Você precisará obter chaves de API dos seguintes serviços:
- API de Voos: Amadeus, Skyscanner ou provedor de dados de voos similar
- API de Acomodações: Booking.com, Airbnb ou serviço de acomodações similar
- API de Câmbio de Moedas: Fixer.io, ExchangeRate-API ou serviço similar
- API de Previsão do Tempo: OpenWeatherMap, WeatherAPI ou serviço de previsão do tempo similar
- Google Places API: Para recomendações de atrações e restaurantes
Atualize seu arquivo .env com essas chaves:
FLIGHT_API_KEY=your_flight_api_key
BOOKING_API_KEY=your_booking_api_key
EXCHANGE_API_KEY=your_exchange_api_key
WEATHER_API_KEY=your_weather_api_key
GOOGLE_PLACES_API_KEY=your_google_places_api_key
Uso
Desenvolvimento
Execute o servidor em modo de desenvolvimento com recarregamento automático:
npm run dev
Produção
Compile e inicie o servidor:
npm run build
npm start
Modo de Observação
Execute com reinício automático em alterações de arquivos:
npm run watch
Ferramentas Disponíveis
O servidor MCP fornece as seguintes ferramentas:
1. Buscar Voos (search_flights)
Busque voos entre destinos com opções personalizáveis.
Parâmetros:
origin: Aeroporto/cidade de partidadestination: Aeroporto/cidade de chegadadepartureDate: Data de partidareturnDate: Data de retorno (opcional para viagem de ida)passengers: Número de passageirosclass: Classe do voo (econômica, executiva, primeira)
2. Buscar Acomodações (search_accommodation)
Encontre hotéis, aluguéis de temporada e outras opções de acomodação.
Parâmetros:
destination: Cidade ou localcheckIn: Data de check-incheckOut: Data de check-outguests: Número de hóspedesrooms: Número de quartostype: Tipo de acomodação (hotel, apartamento, etc.)
3. Obter Taxa de Câmbio (get_exchange_rate)
Obtenha taxas de câmbio atuais entre moedas.
Parâmetros:
from: Código da moeda de origem (ex.: USD)to: Código da moeda de destino (ex.: EUR)amount: Valor para conversão (opcional)
4. Obter Previsão do Tempo (get_weather_forecast)
Verifique as condições climáticas para o seu destino de viagem.
Parâmetros:
location: Cidade ou localdate: Data para a previsãodays: Número de dias para a previsão (opcional)
5. Calcular Orçamento de Viagem (calculate_trip_budget)
Calcule os custos estimados da viagem, incluindo voos, acomodação e despesas diárias.
Parâmetros:
destination: Destino da viagemduration: Duração da viagem em diastravelers: Número de viajantescategory: Categoria de orçamento (econômico, intermediário, luxo)
Estrutura do Projeto
travel-mcp-server/
├── src/
│ ├── index.ts # Main server entry point
│ └── services/
│ ├── FlightService.ts # Flight search functionality
│ ├── AccommodationService.ts # Accommodation search
│ ├── CurrencyService.ts # Currency exchange
│ └── WeatherService.ts # Weather forecasting
├── dist/ # Compiled TypeScript output
├── package.json # Project dependencies and scripts
├── tsconfig.json # TypeScript configuration
├── .env # Environment variables (not in repo)
├── .gitignore # Git ignore rules
└── README.md # This file
Integração com Clientes MCP
Este servidor pode ser usado com qualquer cliente compatível com MCP, como:
- Claude Desktop
- Outros assistentes de IA que suportam MCP
- Aplicações de cliente MCP personalizadas
Adicione o servidor à configuração do seu cliente MCP:
{
"mcpServers": {
"travel-planner": {
"command": "npx",
"args": ["travel-mcp-server"]
}
}
}
Guia de Desenvolvimento
Pilha Tecnológica
- TypeScript: Desenvolvimento JavaScript com segurança de tipos
- Node.js: Ambiente de execução
- MCP SDK: Implementação do Model Context Protocol
- Axios: Cliente HTTP para requisições de API
- Zod: Validação de esquema
- dotenv: Gerenciamento de variáveis de ambiente
Adicionando Novos Serviços
- Crie uma nova classe de serviço em
src/services/ - Implemente os métodos necessários
- Registre o serviço em
src/index.ts - Adicione ferramentas e manipuladores correspondentes
Executando Testes
npm test
Contribuindo
- Faça um fork do repositório
- Crie um branch de recurso:
git checkout -b feature-name - Faça suas alterações
- Execute os testes:
npm test - Faça commit das suas alterações:
git commit -m 'Add feature' - Envie para o branch:
git push origin feature-name - Envie um pull request
Licença
Este projeto está licenciado sob a Licença ISC - consulte o arquivo LICENSE para obter detalhes.
Suporte
Se você encontrar problemas ou tiver dúvidas:
- Verifique a seção Issues
- Crie um novo issue com informações detalhadas
- Forneça logs e etapas de reprodução
Roteiro
- Adicionar mais integrações de serviços de viagem
- Implementar cache para respostas de API
- Adicionar planejamento de itinerário de viagem
- Suporte para coordenação de viagens em grupo
- Integração com serviços de calendário
- Aplicativo complementar para celular
Nota: Lembre-se de manter suas chaves de API seguras e nunca as envie para o controle de versão. Sempre use variáveis de ambiente para configurações sensíveis.