revpar-mcp

revpar-mcp

A Revenue Management MCP server for hotels and short-term rentals that provides market intelligence, event data, and dynamic pricing recommendations.

Category
Visit Server

README

RevPar MCP

Agente de Revenue Management para hotelaria e aluguel por temporada, com integração entre OpenAI, Model Context Protocol (MCP) e uma interface web em Next.js.

O sistema combina inteligência de mercado, eventos locais e regras determinísticas de precificação para produzir recomendações de ADR, ocupação, RevPAR e estadia mínima (LOS).

Status: MVP técnico pronto para demonstração e evolução. Os dados de mercado e eventos atualmente são mocks locais; não representam dados de produção.

Sumário

Visão geral

O RevPar MCP recebe uma pergunta em linguagem natural, como:

Qual a diária recomendada para um imóvel de 1 quarto no Centro de Chapecó em fevereiro?

O agente interpreta a solicitação e coordena as ferramentas MCP para:

  1. Consultar métricas de mercado por cidade, bairro, mês e tipologia.
  2. Identificar eventos locais e seu impacto na demanda.
  3. Calcular a tarifa dinâmica, o RevPAR estimado e a estadia mínima recomendada.
  4. Retornar uma resposta textual acompanhada de métricas estruturadas para o dashboard.

Principais recursos

  • Dashboard web responsivo para consulta e visualização de indicadores.
  • Agente conversacional usando a API Chat Completions da OpenAI.
  • Ferramentas MCP com schemas validados por Zod.
  • Precificação determinística com:
    • ponderação de ADR Airbnb e hotel;
    • multiplicador de demanda por evento;
    • estratégia de lead time;
    • ajuste por ocupação-alvo;
    • piso operacional de R$ 150 por noite;
    • cálculo de RevPAR;
    • recomendação de LOS.
  • Normalização de cidade e bairro, incluindo acentos e variações de caixa.
  • Recurso MCP estático com política de precificação.
  • Testes automatizados para as ferramentas MCP e o adaptador OpenAI.

Interface

Dashboard de Revenue Management

Dashboard desenvolvido para acompanhar ADR sugerida, RevPAR, ocupação, estadia mínima e comparação entre tarifas de mercado.

Dashboard do RevPar MCP

Interações com o agente

O agente interpreta perguntas em linguagem natural, consulta as ferramentas MCP e apresenta recomendações de precificação contextualizadas.

Interações com o RevPar Intel Agent

Arquitetura

Usuário
  │
  ▼
Next.js Dashboard (src/app/page.tsx)
  │  POST /api/chat
  ▼
RevParAgent (OpenAI Function Calling)
  │
  ▼
OpenAI Adapter
  │
  ▼
MCP Client ⇄ MCP Server em memória
                    ├── get_market_intelligence
                    ├── get_local_events
                    ├── calculate_dynamic_pricing_v2
                    └── revpar://policies/pricing

O servidor MCP é executado em memória pelo adaptador. Isso simplifica o MVP e elimina a necessidade de um processo MCP separado, mas permite substituir posteriormente o transporte por uma implementação persistente ou remota.

Stack

  • Next.js 16
  • React 19
  • TypeScript 5
  • OpenAI SDK
  • Model Context Protocol SDK
  • Zod
  • Tailwind CSS
  • Vitest

Ferramentas MCP

get_market_intelligence

Consulta métricas por localização, tipologia e mês.

Parâmetros principais:

  • city: cidade.
  • neighborhood: bairro ou região.
  • propertyType: studio, 1br, 2br ou luxury.
  • month: mês numérico de 01 a 12.

get_local_events

Busca eventos de alto impacto por cidade e mês, incluindo multiplicador de demanda e LOS recomendado.

calculate_dynamic_pricing_v2

Calcula a recomendação de preço com base em:

  • baseAirbnbAdr;
  • baseHotelAdr;
  • targetOccupancy;
  • eventDemandMultiplier;
  • eventMinStayDays;
  • leadTimeDays.

O retorno inclui suggestedAdr, estimatedRevPar e suggestedMinStayDays.

Testes

Os testes foram pensados para validar as partes mais importantes do domínio, sem depender de uma chamada real à API da OpenAI.

  • tests/tools.test.ts verifica as regras de negócio do motor de Revenue Management: diferenciação por tipologia e localização, identificação de eventos, impacto da demanda, estratégia de lead time, RevPAR e estadia mínima.
  • tests/adapter.test.ts verifica o contrato de integração entre o servidor MCP e o formato de ferramentas esperado pela OpenAI.

Essa separação torna os testes rápidos e previsíveis: a camada determinística de cálculo pode evoluir com segurança, enquanto a integração com o modelo permanece isolada.

A suíte é executada com Vitest:

npm test

Estrutura do projeto

src/
├── agent/
│   ├── openaiAdapter.ts   # Ponte MCP → ferramentas OpenAI
│   └── runner.ts          # Orquestração conversacional e métricas
├── app/
│   ├── api/chat/route.ts   # Endpoint HTTP do agente
│   ├── globals.css         # Estilos globais
│   ├── layout.tsx          # Layout raiz
│   └── page.tsx            # Dashboard
├── mcp/
│   ├── mockData.ts         # Dados locais de mercado e eventos
│   ├── server.ts           # Servidor MCP e resource de política
│   └── tools.ts            # Tools MCP e regras de pricing
tests/
├── adapter.test.ts         # Contrato MCP/OpenAI
└── tools.test.ts           # Regras das ferramentas de negócio

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured