ProPresenter 7 MCP Server
Servidor MCP ProPresenter 7
Documentação
propresenter-mcp
Um servidor abrangente do Model Context Protocol (MCP) que fornece controle completo sobre apresentações do ProPresenter por meio da API do ProPresenter. Este servidor implementa a especificação completa da API do ProPresenter com 231 endpoints organizados em 27 grupos de API e expostos por meio de classes de cliente modulares.
Registro Oficial do MCP
Pré-requisitos
- Node.js 18 ou superior
- ProPresenter 7 com API habilitada
- ProPresenter em execução e acessível na sua rede
Instalação
-
Clone este repositório ou baixe o código-fonte
-
Instale as dependências:
npm install
- Compile o projeto:
npm run build
Configuração
O servidor se conecta ao ProPresenter usando variáveis de ambiente:
PROPRESENTER_URL- A URL da sua instância do ProPresenter (padrão:http://localhost:50000)PROPRESENTER_PASSWORD- A senha da API (se configurada no ProPresenter)
Configuração do ProPresenter
- Abra as preferências do ProPresenter
- Vá para a aba Rede
- Habilite "Rede" e anote o número da porta (padrão: 50000)
- Opcionalmente, defina uma senha para acesso à API
Uso
Com o Claude Desktop
Adicione isto ao seu arquivo de configuração do Claude Desktop:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"propresenter": {
"command": "node",
"args": ["/absolute/path/to/propresenter-mcp/build/index.js"],
"env": {
"PROPRESENTER_URL": "http://localhost:50000",
"PROPRESENTER_PASSWORD": "your-password-if-needed"
}
}
}
}
Substitua /absolute/path/to/propresenter-mcp pelo caminho real deste projeto.
Com o VS Code
Este servidor pode ser depurado diretamente no VS Code usando a configuração MCP incluída.
- Abra este projeto no VS Code
- O servidor é configurado automaticamente para depuração via
.vscode/mcp.json - Use a extensão MCP para testar e depurar o servidor
Exemplos de Comandos
Uma vez conectado, você pode pedir ao Claude para controlar o ProPresenter:
Status e Informações:
- "Qual versão do ProPresenter está em execução?"
- "Mostre-me o status de todas as telas"
- "Qual é o status das telas de audiência?"
- "Obtenha as informações do slide atual"
Apresentações:
- "Qual apresentação está ativa no momento?"
- "Dispare a apresentação com UUID [uuid]"
- "Vá para o próximo slide"
- "Vá para o slide número 5"
- "Reproduza a linha do tempo da apresentação"
- "Mostre-me o gráfico de acordes"
- "Obtenha uma miniatura do slide 3"
Anúncios:
- "Qual anúncio está ativo no momento?"
- "Dispare a próxima deixa de anúncio"
- "Mostre-me o status da linha do tempo de anúncios"
- "Vá para a deixa de anúncio 2"
Áudio e Mídia:
- "Liste todas as playlists de áudio"
- "Mostre-me o conteúdo da playlist de áudio [id]"
- "Reproduza a próxima música na playlist ativa"
- "Dispare a playlist de áudio em foco"
- "Liste todas as playlists de mídia"
- "Dispare o item de mídia [id] na playlist [playlist_id]"
Playlists:
- "Liste todas as playlists de apresentação"
- "Mostre-me a playlist ativa"
- "Foque a próxima playlist"
- "Dispare o primeiro item na playlist em foco"
- "Crie uma nova playlist chamada 'Culto de Domingo'"
Captura:
- "Qual é o status atual da captura?"
- "Inicie a gravação"
- "Pare a captura"
- "Mostre-me as codificações de captura disponíveis para RTMP"
Limpeza:
- "Limpe a camada de anúncios"
- "Mostre-me todos os grupos de limpeza"
- "Dispare o grupo de limpeza [id]"
- "Crie um novo grupo de limpeza"
Biblioteca:
- "Liste todas as minhas bibliotecas"
- "Mostre as apresentações na biblioteca [id]"
- "Dispare a apresentação [id] da biblioteca [library_id]"
Looks:
- "Mostre-me todos os looks configurados"
- "Qual look está ativo no momento?"
- "Alterne para o look [id]"
- "Crie um novo look"
Macros:
- "Liste todas as macros"
- "Dispare a macro [id]"
- "Mostre-me todas as coleções de macros"
- "Crie uma nova macro"
Adereços:
- "Liste todos os adereços"
- "Dispare o adereço [id]"
- "Limpe o adereço [id]"
- "Pause a limpeza automática do adereço [id]"
- "Liste todas as coleções de adereços"
Palco:
- "Mostre-me a mensagem de palco atual"
- "Exiba a mensagem de palco [message]"
- "Oculte a mensagem de palco"
- "Liste todos os layouts de palco"
- "Defina o layout de palco [layout_id] para a tela [screen_id]"
Mensagens:
- "Mostre-me todas as mensagens"
- "Exiba a mensagem [id]"
- "Oculte a mensagem [id]"
- "Crie uma nova mensagem"
Temporizadores:
- "Liste todos os temporizadores"
- "Inicie o temporizador [id]"
- "Pare o temporizador [id]"
- "Redefina o temporizador do sermão"
- "Crie um temporizador de contagem regressiva"
- "Obtenha a hora atual do sistema"
Temas:
- "Liste todos os temas"
- "Mostre-me os detalhes do tema [id]"
- "Obtenha o slide do tema [slide_id] do tema [theme_id]"
Transporte:
- "Reproduza a camada de apresentação"
- "Pause a camada de áudio"
- "Avance 30 segundos na camada de anúncios"
- "Vá para o final da apresentação"
- "Obtenha o tempo de reprodução atual"
Máscaras:
- "Liste todas as máscaras"
- "Mostre-me os detalhes da máscara [id]"
Gatilhos:
- "Dispare a próxima deixa"
- "Dispare o item de mídia anterior"
Desenvolvimento
Compilação
npm run build
Modo de Observação
npm run watch
Referência da API
Este servidor implementa a API completa do ProPresenter documentada em https://openapi.propresenter.com/
Cobertura da API
- Total de Endpoints: 231 endpoints REST API
- Grupos de API: 27 grupos funcionais
- Módulos de Cliente: 18 classes TypeScript de cliente
- Definições de Ferramentas: 18 módulos de ferramentas MCP
- Módulos de Manipuladores: 18 módulos de manipuladores de solicitações
- Métodos HTTP: Suporte completo para operações GET, POST, PUT, DELETE
- Arquitetura: Implementação completa em três camadas (clientes → ferramentas → manipuladores)
Consulte api/api.md para documentação completa da API com todos os 231 endpoints organizados por grupo.
Solução de Problemas
Problemas de Conexão:
- Verifique se o ProPresenter está em execução e a API está habilitada
- Confirme se a URL e a porta estão corretas
- Garanta que nenhum firewall esteja bloqueando a conexão
- Verifique a senha se a autenticação estiver habilitada
Servidor Não Iniciando:
- Certifique-se de ter compilado o projeto com
npm run build - Verifique se o Node.js 18+ está instalado
- Confirme se todas as dependências estão instaladas com
npm install