Pulsetic MCP Server
oficialO servidor Pulsetic MCP conecta o monitoramento do Pulsetic a agentes de IA e ferramentas compatíveis com MCP, permitindo acesso direto a dados de uptime, resultados de monitoramento cron, fluxos de gerenciamento de incidentes e informações de página de status por meio do Model Context Protocol (MCP). Ele permite que equipes exponham dados de monitoramento operacional de forma segura e estruturada, facilitando a criação de automação orientada por IA, assistentes de monitoramento e fluxos de trabalho operacionais inteligentes sem a necessidade de middleware personalizado.
O que você pode fazer com Pulsetic MCP?
- Verificar status e tempo de atividade do monitor — Solicite todos os monitores com
list_monitorsou obtenha estatísticas detalhadas de um monitor específico viaget_monitor_stats. - Investigar eventos de inatividade — Recupere eventos online/offline com
get_monitor_eventsou o total de segundos de inatividade usandoget_monitor_downtime. - Criar e gerenciar monitores — Adicione novos monitores HTTP, TCP ou ICMP com
create_monitor, atualize configurações viaupdate_monitor, ou pause/retome verificações. - Gerenciar incidentes em páginas de status — Use
create_incident,update_incidenteresolve_incidentpara gerenciar o ciclo de vida de incidentes e publicar atualizações de status. - Agendar janelas de manutenção — Crie períodos de manutenção futuros com
create_maintenanceou remova-os usandodelete_maintenance.
Documentação
Servidor MCP Pulsetic
Conecte assistentes de IA à sua plataforma de monitoramento Pulsetic usando o Model Context Protocol (MCP).
O que é MCP?
O Model Context Protocol é um padrão aberto que permite que assistentes de IA interajam com ferramentas e serviços externos. Com o servidor MCP da Pulsetic, você pode pedir ao seu assistente de IA para verificar o status de monitores, criar incidentes, agendar manutenções e muito mais — tudo através de conversa natural.
Clientes suportados:
- Claude Desktop — aplicativo desktop da Anthropic
- Claude Code — CLI da Anthropic para desenvolvedores
- ChatGPT — assistente de IA da OpenAI (via OAuth)
- Cursor — editor de código com IA
- Windsurf — IDE com IA
- Qualquer cliente que implemente a especificação MCP
Pré-requisitos
- Uma conta Pulsetic em um plano com acesso à API (Business ou Enterprise).
- Uma chave de API da Pulsetic — gere uma em Configurações → API no seu painel.
- Um cliente de IA compatível com MCP.
Configuração
Claude Desktop
O Claude Desktop usa servidores MCP baseados em stdio. Use mcp-remote para fazer a ponte com o endpoint HTTP remoto. Abra Configurações → Desenvolvedor → Editar Config e adicione:
{
"mcpServers": {
"pulsetic": {
"command": "npx",
"args": [
"-y", "mcp-remote",
"https://api.pulsetic.com/mcp",
"--header", "Authorization: Bearer YOUR_API_KEY"
]
}
}
}
Substitua YOUR_API_KEY pela sua chave de API real. Reinicie o Claude Desktop para aplicar.
Claude Code
Adicione o servidor ao arquivo .mcp.json do seu projeto:
{
"mcpServers": {
"pulsetic": {
"type": "streamableHttp",
"url": "https://api.pulsetic.com/mcp",
"headers": {
"Authorization": "YOUR_API_KEY"
}
}
}
}
Cursor
Abra Configurações → Servidores MCP → Adicionar Servidor e configure:
- Tipo: streamableHttp
- URL:
https://api.pulsetic.com/mcp - Cabeçalhos:
Authorization: YOUR_API_KEY
ChatGPT
O ChatGPT tem suporte nativo a MCP através do Modo Desenvolvedor. Ele usa OAuth para autenticar com a Pulsetic.
Passo 1. Ative o Modo Desenvolvedor no ChatGPT: vá para Aplicativos habilitados → Configurações avançadas → Modo desenvolvedor e ative-o. Isso está disponível para usuários do ChatGPT Pro, Plus, Team, Business, Enterprise e Edu.
Passo 2. Crie um novo aplicativo: vá para Aplicativos habilitados → Criar aplicativo.
Passo 3. Preencha os detalhes do aplicativo:
| Campo | Valor |
|---|---|
| Nome | Pulsetic MCP (ou qualquer nome de sua preferência) |
| Descrição | Uptime monitoring (opcional) |
| URL do Servidor MCP | https://api.pulsetic.com/mcp |
| Autenticação | OAuth |
Passo 4. Os endpoints OAuth serão descobertos automaticamente a partir do servidor. Você pode verificá-los em Configurações avançadas:
| Campo | Valor |
|---|---|
| URL de Autenticação | https://api.pulsetic.com/mcp/oauth/authorize |
| URL do Token | https://api.pulsetic.com/mcp/oauth/token |
| URL de Registro | https://api.pulsetic.com/mcp/oauth/register |
Passo 5. Marque "Eu entendo e quero continuar" e clique em Criar.
Passo 6. Complete o fluxo de login OAuth. Você será redirecionado para uma página de autorização da Pulsetic, onde deverá inserir o e-mail da sua conta e o token da API.
O e-mail deve corresponder ao seu token de API. Na página de autorização, o e-mail que você inserir deve corresponder ao proprietário do token de API fornecido.
Mantenha sua chave de API privada. Sua chave de API tem acesso total à sua conta Pulsetic. Nunca a inclua em controle de versão ou a compartilhe publicamente.
Ferramentas Disponíveis
O servidor MCP expõe 17 ferramentas organizadas em quatro categorias.
Monitores
| Ferramenta | Descrição |
|---|---|
list_monitors | Lista todos os monitores com status, uptime e tempo de resposta. |
get_monitor | Obtém informações detalhadas sobre um monitor específico. |
get_monitor_stats | % de uptime, downtime e tempos de resposta em períodos de 1d/7d/30d/90d. |
get_monitor_events | Eventos online/offline dentro de um intervalo de datas. |
get_monitor_downtime | Tempo total de inatividade em segundos para um determinado período. |
create_monitor | Cria um novo monitor HTTP, TCP ou ICMP. |
update_monitor | Atualiza o nome, URL, frequência ou configurações de um monitor. |
delete_monitor | Exclui permanentemente um monitor. |
pause_monitor | Pausa o monitoramento (interrompe as verificações). |
resume_monitor | Retoma um monitor pausado. |
Páginas de Status
| Ferramenta | Descrição |
|---|---|
list_status_pages | Lista todas as páginas de status com título, slug e domínio. |
Incidentes
| Ferramenta | Descrição |
|---|---|
list_incidents | Lista incidentes de uma página de status. |
create_incident | Cria um novo incidente com uma atualização de status inicial. |
update_incident | Publica uma atualização de status em um incidente existente. |
resolve_incident | Marca um incidente como resolvido. |
Manutenção
| Ferramenta | Descrição |
|---|---|
create_maintenance | Agenda uma janela de manutenção em uma página de status. |
delete_maintenance | Exclui uma janela de manutenção agendada. |
Exemplos de Uso
Uma vez configurado, você pode interagir com a Pulsetic através de linguagem natural.
Verificar seus monitores
"Show me all my monitors and their current status."
"What's the uptime for my production API monitor over the last 30 days?"
"Are any of my monitors currently down?"
"Show me the downtime events for monitor 42 in the past week."
Gerenciar monitores
"Create a new monitor for https://api.example.com that checks every 30 seconds."
"Pause the staging monitor while we do the migration."
"Resume all paused monitors."
"Change the check frequency of monitor 15 to 60 seconds."
"Delete the old marketing-site monitor."
Lidar com incidentes
"Create an incident on our main status page: 'Elevated API latency'
with status investigating and message 'We're looking into slow response times.'"
"Update the API latency incident to identified: 'Root cause is a database
connection pool issue. Working on a fix.'"
"Resolve incident 8 with message 'Connection pool limits increased.
Response times back to normal.'"
Agendar manutenção
"Schedule a maintenance window on status page 1 called 'Database upgrade'
starting 2025-03-20 at 2am UTC and ending at 4am UTC."
"Delete the maintenance window we scheduled for next week."
Testando com cURL
Você pode testar o endpoint MCP diretamente com cURL para verificar se sua chave de API funciona.
Inicializar
curl -X POST https://api.pulsetic.com/mcp \
-H "Authorization: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "initialize",
"params": {
"protocolVersion": "2025-03-26",
"capabilities": {},
"clientInfo": {"name": "curl", "version": "1.0"}
}
}'
Listar ferramentas
curl -X POST https://api.pulsetic.com/mcp \
-H "Authorization: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/list"}'
Chamar uma ferramenta
curl -X POST https://api.pulsetic.com/mcp \
-H "Authorization: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 3,
"method": "tools/call",
"params": {
"name": "list_monitors",
"arguments": {}
}
}'
Referência de Ferramentas
list_monitors
Retorna todos os monitores da sua conta.
Sem parâmetros.
get_monitor
Retorna detalhes completos de um único monitor, incluindo informações do certificado SSL.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
monitor_id | integer | Sim | O ID do monitor. |
get_monitor_stats
Retorna % de uptime, downtime, contagem de incidentes e tempo médio de resposta em períodos de 1 dia, 7 dias, 30 dias e 90 dias.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
monitor_id | integer | Sim | O ID do monitor. |
get_monitor_events
Retorna eventos online/offline em um intervalo de datas (máx. 100, mais recentes primeiro).
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
monitor_id | integer | Sim | O ID do monitor. |
from | string | Não | Data de início (AAAA-MM-DD). Padrão: 7 dias atrás. |
to | string | Não | Data de término (AAAA-MM-DD). Padrão: hoje. |
get_monitor_downtime
Retorna o tempo total de inatividade em segundos e a contagem de incidentes para um período.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
monitor_id | integer | Sim | O ID do monitor. |
days | integer | Não | Dias a serem considerados. Padrão: 30. |
create_monitor
Cria um novo monitor de uptime.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
url | string | Sim | URL ou hostname a ser monitorado. |
name | string | Não | Nome de exibição. |
request_type | string | Não | http, tcp ou icmp. Padrão: http. |
uptime_check_frequency | integer | Não | Intervalo de verificação em segundos. Padrão: 60. |
request_method | string | Não | Método HTTP. Padrão: GET. |
request_timeout | integer | Não | Tempo limite em segundos. Padrão: 30. |
ssl_check | boolean | Não | Habilitar monitoramento SSL. |
update_monitor
Atualiza as configurações de um monitor existente. Inclua apenas os campos que deseja alterar.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
monitor_id | integer | Sim | O ID do monitor. |
name | string | Não | Novo nome de exibição. |
url | string | Não | Nova URL ou hostname. |
uptime_check_frequency | integer | Não | Novo intervalo de verificação em segundos. |
request_method | string | Não | Método HTTP. |
request_timeout | integer | Não | Tempo limite em segundos. |
ssl_check | boolean | Não | Habilitar/desabilitar monitoramento SSL. |
delete_monitor
Exclui permanentemente um monitor e todos os dados associados.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
monitor_id | integer | Sim | O ID do monitor. |
pause_monitor
Pausa um monitor. Ele deixará de ser verificado até ser retomado.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
monitor_id | integer | Sim | O ID do monitor. |
resume_monitor
Retoma um monitor pausado.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
monitor_id | integer | Sim | O ID do monitor. |
list_status_pages
Retorna todas as páginas de status da sua conta.
Sem parâmetros.
list_incidents
Retorna incidentes de uma página de status, incluindo a última atualização de cada um.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
status_page_id | integer | Sim | O ID da página de status. |
create_incident
Cria um novo incidente com uma atualização de status inicial que aparece na página de status.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
status_page_id | integer | Sim | O ID da página de status. |
title | string | Sim | Título do incidente. |
status | string | Sim | investigating, identified, monitoring ou resolved. |
message | string | Sim | Mensagem de atualização inicial. |
update_incident
Publica uma nova atualização de status em um incidente existente.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
incident_id | integer | Sim | O ID do incidente. |
status | string | Sim | investigating, identified, monitoring ou resolved. |
message | string | Sim | Mensagem de atualização. |
title | string | Não | Atualizar o título do incidente. |
resolve_incident
Marca um incidente como resolvido com uma mensagem de resolução.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
incident_id | integer | Sim | O ID do incidente. |
message | string | Sim | Mensagem de resolução. |
create_maintenance
Agenda uma janela de manutenção em uma página de status.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
status_page_id | integer | Sim | O ID da página de status. |
name | string | Sim | Título da manutenção. |
description | string | Não | Descrição da manutenção. |
start | string | Sim | Hora de início no formato ISO 8601. |
end | string | Sim | Hora de término no formato ISO 8601. |
timezone | string | Não | Fuso horário (ex., UTC, America/New_York). Padrão: UTC. |
delete_maintenance
Exclui uma janela de manutenção agendada.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
maintenance_id | integer | Sim | O ID da janela de manutenção. |
Solução de Problemas
401 Não Autorizado
- Verifique se sua chave de API está correta e não expirou.
- Certifique-se de que está passando a chave no cabeçalho
Authorization(seja como um token bruto ou com o prefixoBearer). - Confirme que sua conta está em um plano com acesso à API habilitado.
Falha na autorização OAuth (ChatGPT)
- Na página de autorização, o e-mail que você inserir deve corresponder ao proprietário do token da API.
- Certifique-se de que o Modo Desenvolvedor está habilitado nas configurações do ChatGPT.
- Garanta que você possui um plano do ChatGPT que suporta o Modo Desenvolvedor (Pro, Plus, Team, Business, Enterprise ou Edu).
"Monitor não encontrado ou acesso negado"
- O ID do monitor não existe ou pertence a uma conta diferente.
- Use
list_monitorspara ver os IDs de monitor disponíveis.
Ferramentas não aparecem no seu cliente de IA
- Reinicie o cliente de IA após editar a configuração MCP.
- Verifique se a URL está exatamente como
https://api.pulsetic.com/mcp. - Teste o endpoint com cURL para verificar a conectividade.
Obtendo erros de protocolo
- Certifique-se de que as requisições usam
Content-Type: application/json. - O campo
jsonrpcdeve ser exatamente"2.0". - Inclua um campo
id(inteiro ou string) para todas as requisições, exceto notificações.
Referência da API
O servidor MCP implementa a especificação MCP (2025-03-26) usando transporte HTTP Streamable em um único endpoint POST /mcp com JSON-RPC 2.0.