moviecom-mcp
by Santosl2
README.md
# moviecom-mcp
Servidor MCP (Model Context Protocol) para consultar programação de filmes e disponibilidade de assentos da Moviecom.
## Objetivo do projeto
Este projeto expõe ferramentas MCP para:
- Buscar a programação de filmes em cartaz.
- Consultar assentos disponíveis de uma sessão específica.
- Listar filmes e enriquecer cada sessão com dados de disponibilidade.
Com isso, clientes MCP (como assistentes e integrações) conseguem consumir esses dados de forma estruturada via `stdio`.
## Pré-requisitos
- Node.js 18+ (recomendado 20+).
- npm.
## Instalação
1. Clone o repositório:
```bash
git clone git@github.com:Santosl2/moviecom-mcp.git
cd moviecom-mcp
```
2. Instale as dependências:
```bash
npm install
```
## Como usar
### 1) Executar o servidor MCP
Este projeto roda como servidor MCP em `stdio`.
```bash
node src/server.js
```
Observação: no estado atual do projeto, prefira o comando acima (o script `npm start` aponta para `server.js` na raiz).
### 2) Ferramentas disponíveis
O servidor registra as seguintes tools:
1. `moviecom_programming`
- Retorna a programação de filmes.
- Input:
```json
{
"date": "2026-07-30"
}
```
2. `moviecom_available_seats`
- Retorna assentos disponíveis de uma sessão.
- Input:
```json
{
"sessionId": "11f18ab7ae7ca66580e69ae9bbbc5a12"
}
```
3. `moviecom_movies`
- Retorna filmes e tenta anexar disponibilidade de assentos em cada sessão.
- Input:
```json
{
"date": "2026-07-30"
}
```
### 3) Exemplo de saída (resumido)
```json
[
{
"title": "A Odisseia",
"classification": "14",
"duration": "172 minutos · Ação, Fantasia",
"image": "https://...jpg",
"programations": [
{
"type": "DUB",
"room": "Sala 1",
"hour": "18:00",
"url": "https://moviecom.com.br/vendasessao/?idprog=...",
"chairs": {
"total": 152,
"available": 19,
"occupied": 130,
"blocked": 3,
"seats": [
{
"id": "A17",
"name": "A17",
"row": 1,
"column": 17,
"sector": null,
"kind": null
}
]
}
}
]
}
]
```
## Estrutura do projeto
```text
src/
functions.js # parsing e coleta de dados
server.js # servidor MCP e registro das tools
moviecom.json # exemplo de payload/resultado
```
## Tecnologias
- `@modelcontextprotocol/server`
- `cheerio`
- `zod`
## Observações
- As consultas dependem dos endpoints externos da Moviecom/VeloxTickets.
- Se a estrutura HTML/endpoint mudar, o parser pode precisar de ajustes.
This server cannot be deployed
Maintenance
ActivitySlowing
ResponsivenessNo issues