Pulsetic MCP Server
resmiServer Pulsetic MCP menghubungkan pemantauan Pulsetic dengan agen AI dan alat yang kompatibel dengan MCP, memungkinkan akses langsung ke data uptime, hasil pemantauan cron, alur kerja manajemen insiden, dan informasi halaman status melalui Model Context Protocol (MCP). Ini memungkinkan tim untuk secara aman mengekspos data pemantauan operasional dalam format terstruktur, sehingga memudahkan pembangunan otomatisasi berbasis AI, asisten pemantauan, dan alur kerja operasional cerdas tanpa middleware khusus.
Apa yang bisa Anda lakukan dengan Pulsetic MCP?
- Periksa status dan waktu aktif monitor — Minta semua monitor dengan
list_monitorsatau dapatkan statistik detail untuk monitor tertentu melaluiget_monitor_stats. - Selidiki kejadian downtime — Ambil kejadian online/offline dengan
get_monitor_eventsatau total detik downtime menggunakanget_monitor_downtime. - Buat dan kelola monitor — Tambahkan monitor HTTP, TCP, atau ICMP baru dengan
create_monitor, perbarui pengaturan melaluiupdate_monitor, atau jeda/lanjutkan pemeriksaan. - Tangani insiden di halaman status — Gunakan
create_incident,update_incident, danresolve_incidentuntuk mengelola siklus hidup insiden dan memposting pembaruan status. - Jadwalkan jendela pemeliharaan — Buat periode pemeliharaan mendatang dengan
create_maintenanceatau hapus menggunakandelete_maintenance.
Dokumentasi
Pulsetic MCP Server
Hubungkan asisten AI ke platform pemantauan Pulsetic Anda menggunakan Model Context Protocol (MCP).
Apa itu MCP?
Model Context Protocol adalah standar terbuka yang memungkinkan asisten AI berinteraksi dengan alat dan layanan eksternal. Dengan server MCP Pulsetic, Anda dapat meminta asisten AI untuk memeriksa status monitor, membuat insiden, menjadwalkan pemeliharaan, dan banyak lagi — semuanya melalui percakapan alami.
Klien yang didukung:
- Claude Desktop — Aplikasi desktop Anthropic
- Claude Code — CLI Anthropic untuk pengembang
- ChatGPT — Asisten AI OpenAI (melalui OAuth)
- Cursor — Editor kode bertenaga AI
- Windsurf — IDE bertenaga AI
- Klien apa pun yang mengimplementasikan spesifikasi MCP
Prasyarat
- Akun Pulsetic pada paket dengan akses API (Business atau Enterprise).
- Kunci API Pulsetic — buat dari Pengaturan → API di dasbor Anda.
- Klien AI yang kompatibel dengan MCP.
Penyiapan
Claude Desktop
Claude Desktop menggunakan server MCP berbasis stdio. Gunakan mcp-remote untuk menjembatani endpoint HTTP jarak jauh. Buka Pengaturan → Pengembang → Edit Konfigurasi dan tambahkan:
{
"mcpServers": {
"pulsetic": {
"command": "npx",
"args": [
"-y", "mcp-remote",
"https://api.pulsetic.com/mcp",
"--header", "Authorization: Bearer YOUR_API_KEY"
]
}
}
}
Ganti YOUR_API_KEY dengan kunci API Anda yang sebenarnya. Mulai ulang Claude Desktop untuk menerapkan.
Claude Code
Tambahkan server ke file .mcp.json proyek Anda:
{
"mcpServers": {
"pulsetic": {
"type": "streamableHttp",
"url": "https://api.pulsetic.com/mcp",
"headers": {
"Authorization": "YOUR_API_KEY"
}
}
}
}
Cursor
Buka Pengaturan → Server MCP → Tambah Server dan konfigurasikan:
- Tipe: streamableHttp
- URL:
https://api.pulsetic.com/mcp - Header:
Authorization: YOUR_API_KEY
ChatGPT
ChatGPT memiliki dukungan MCP asli melalui Mode Pengembang. Ini menggunakan OAuth untuk mengautentikasi dengan Pulsetic.
Langkah 1. Aktifkan Mode Pengembang di ChatGPT: buka Aplikasi yang diaktifkan → Pengaturan lanjutan → Mode pengembang dan aktifkan. Ini tersedia untuk pengguna ChatGPT Pro, Plus, Team, Business, Enterprise, dan Edu.
Langkah 2. Buat aplikasi baru: buka Aplikasi yang diaktifkan → Buat aplikasi.
Langkah 3. Isi detail aplikasi:
| Kolom | Nilai |
|---|---|
| Nama | Pulsetic MCP (atau nama apa pun yang Anda suka) |
| Deskripsi | Uptime monitoring (opsional) |
| URL Server MCP | https://api.pulsetic.com/mcp |
| Autentikasi | OAuth |
Langkah 4. Endpoint OAuth akan ditemukan secara otomatis dari server. Anda dapat memverifikasinya di bawah Pengaturan lanjutan:
| Kolom | Nilai |
|---|---|
| URL Auth | https://api.pulsetic.com/mcp/oauth/authorize |
| URL Token | https://api.pulsetic.com/mcp/oauth/token |
| URL Registrasi | https://api.pulsetic.com/mcp/oauth/register |
Langkah 5. Centang "Saya mengerti dan ingin melanjutkan" dan klik Buat.
Langkah 6. Selesaikan alur login OAuth. Anda akan diarahkan ke halaman otorisasi Pulsetic tempat Anda memasukkan email akun dan token API Anda.
Email harus cocok dengan token API Anda. Di halaman otorisasi, email yang Anda masukkan harus cocok dengan pemilik token API yang Anda berikan.
Jaga kerahasiaan kunci API Anda. Kunci API Anda memiliki akses penuh ke akun Pulsetic Anda. Jangan pernah memasukkannya ke kontrol versi atau membagikannya secara publik.
Alat yang Tersedia
Server MCP menyediakan 17 alat yang dikelompokkan ke dalam empat kategori.
Monitor
| Alat | Deskripsi |
|---|---|
list_monitors | Daftar semua monitor dengan status, uptime, dan waktu respons. |
get_monitor | Dapatkan info detail tentang monitor tertentu. |
get_monitor_stats | Persentase uptime, downtime, dan waktu respons selama 1h/7h/30h/90h. |
get_monitor_events | Peristiwa online/offline dalam rentang tanggal. |
get_monitor_downtime | Total downtime dalam detik untuk periode tertentu. |
create_monitor | Buat monitor HTTP, TCP, atau ICMP baru. |
update_monitor | Perbarui nama, URL, frekuensi, atau pengaturan monitor. |
delete_monitor | Hapus monitor secara permanen. |
pause_monitor | Jeda pemantauan (hentikan pemeriksaan). |
resume_monitor | Lanjutkan monitor yang dijeda. |
Halaman Status
| Alat | Deskripsi |
|---|---|
list_status_pages | Daftar semua halaman status dengan judul, slug, dan domain. |
Insiden
| Alat | Deskripsi |
|---|---|
list_incidents | Daftar insiden untuk halaman status. |
create_incident | Buat insiden baru dengan pembaruan status awal. |
update_incident | Kirim pembaruan status ke insiden yang ada. |
resolve_incident | Tandai insiden sebagai terselesaikan. |
Pemeliharaan
| Alat | Deskripsi |
|---|---|
create_maintenance | Jadwalkan jendela pemeliharaan di halaman status. |
delete_maintenance | Hapus jendela pemeliharaan yang dijadwalkan. |
Contoh Penggunaan
Setelah dikonfigurasi, Anda dapat berinteraksi dengan Pulsetic melalui bahasa alami.
Periksa monitor Anda
"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."
Kelola monitor
"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."
Tangani insiden
"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.'"
Jadwalkan pemeliharaan
"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."
Pengujian dengan cURL
Anda dapat menguji endpoint MCP langsung dengan cURL untuk memverifikasi bahwa kunci API Anda berfungsi.
Inisialisasi
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"}
}
}'
Daftar alat
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"}'
Panggil alat
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": {}
}
}'
Referensi Alat
list_monitors
Mengembalikan semua monitor untuk akun Anda.
Tidak ada parameter.
get_monitor
Mengembalikan detail lengkap untuk satu monitor, termasuk info sertifikat SSL.
| Parameter | Tipe | Wajib | Deskripsi |
|---|---|---|---|
monitor_id | integer | Ya | ID monitor. |
get_monitor_stats
Mengembalikan persentase uptime, downtime, jumlah insiden, dan waktu respons rata-rata selama periode 1 hari, 7 hari, 30 hari, dan 90 hari.
| Parameter | Tipe | Wajib | Deskripsi |
|---|---|---|---|
monitor_id | integer | Ya | ID monitor. |
get_monitor_events
Mengembalikan peristiwa online/offline dalam rentang tanggal (maks 100, terbaru lebih dulu).
| Parameter | Tipe | Wajib | Deskripsi |
|---|---|---|---|
monitor_id | integer | Ya | ID monitor. |
from | string | Tidak | Tanggal mulai (YYYY-MM-DD). Default: 7 hari yang lalu. |
to | string | Tidak | Tanggal akhir (YYYY-MM-DD). Default: hari ini. |
get_monitor_downtime
Mengembalikan total downtime dalam detik dan jumlah insiden untuk suatu periode.
| Parameter | Tipe | Wajib | Deskripsi |
|---|---|---|---|
monitor_id | integer | Ya | ID monitor. |
days | integer | Tidak | Hari untuk melihat ke belakang. Default: 30. |
create_monitor
Membuat monitor uptime baru.
| Parameter | Tipe | Wajib | Deskripsi |
|---|---|---|---|
url | string | Ya | URL atau nama host yang akan dipantau. |
name | string | Tidak | Nama tampilan. |
request_type | string | Tidak | http, tcp, atau icmp. Default: http. |
uptime_check_frequency | integer | Tidak | Interval pemeriksaan dalam detik. Default: 60. |
request_method | string | Tidak | Metode HTTP. Default: GET. |
request_timeout | integer | Tidak | Timeout dalam detik. Default: 30. |
ssl_check | boolean | Tidak | Aktifkan pemantauan SSL. |
update_monitor
Memperbarui pengaturan monitor yang ada. Hanya sertakan kolom yang ingin Anda ubah.
| Parameter | Tipe | Wajib | Deskripsi |
|---|---|---|---|
monitor_id | integer | Ya | ID monitor. |
name | string | Tidak | Nama tampilan baru. |
url | string | Tidak | URL atau nama host baru. |
uptime_check_frequency | integer | Tidak | Interval pemeriksaan baru dalam detik. |
request_method | string | Tidak | Metode HTTP. |
request_timeout | integer | Tidak | Timeout dalam detik. |
ssl_check | boolean | Tidak | Aktifkan/nonaktifkan pemantauan SSL. |
delete_monitor
Menghapus monitor dan semua data terkait secara permanen.
| Parameter | Tipe | Wajib | Deskripsi |
|---|---|---|---|
monitor_id | integer | Ya | ID monitor. |
pause_monitor
Menjeda monitor. Monitor akan berhenti diperiksa hingga dilanjutkan.
| Parameter | Tipe | Wajib | Deskripsi |
|---|---|---|---|
monitor_id | integer | Ya | ID monitor. |
resume_monitor
Melanjutkan monitor yang dijeda.
| Parameter | Tipe | Wajib | Deskripsi |
|---|---|---|---|
monitor_id | integer | Ya | ID monitor. |
list_status_pages
Mengembalikan semua halaman status untuk akun Anda.
Tidak ada parameter.
list_incidents
Mengembalikan insiden untuk halaman status, termasuk pembaruan terbaru untuk masing-masing.
| Parameter | Tipe | Wajib | Deskripsi |
|---|---|---|---|
status_page_id | integer | Ya | ID halaman status. |
create_incident
Membuat insiden baru dengan pembaruan status awal yang muncul di halaman status.
| Parameter | Tipe | Wajib | Deskripsi |
|---|---|---|---|
status_page_id | integer | Ya | ID halaman status. |
title | string | Ya | Judul insiden. |
status | string | Ya | investigating, identified, monitoring, atau resolved. |
message | string | Ya | Pesan pembaruan awal. |
update_incident
Mengirim pembaruan status baru ke insiden yang ada.
| Parameter | Tipe | Wajib | Deskripsi |
|---|---|---|---|
incident_id | integer | Ya | ID insiden. |
status | string | Ya | investigating, identified, monitoring, atau resolved. |
message | string | Ya | Pesan pembaruan. |
title | string | Tidak | Perbarui judul insiden. |
resolve_incident
Menandai insiden sebagai terselesaikan dengan pesan resolusi.
| Parameter | Tipe | Wajib | Deskripsi |
|---|---|---|---|
incident_id | integer | Ya | ID insiden. |
message | string | Ya | Pesan resolusi. |
create_maintenance
Menjadwalkan jendela pemeliharaan di halaman status.
| Parameter | Tipe | Wajib | Deskripsi |
|---|---|---|---|
status_page_id | integer | Ya | ID halaman status. |
name | string | Ya | Judul pemeliharaan. |
description | string | Tidak | Deskripsi pemeliharaan. |
start | string | Ya | Waktu mulai dalam format ISO 8601. |
end | string | Ya | Waktu selesai dalam format ISO 8601. |
timezone | string | Tidak | Zona waktu (mis., UTC, America/New_York). Default: UTC. |
delete_maintenance
Menghapus jendela pemeliharaan yang dijadwalkan.
| Parameter | Tipe | Wajib | Deskripsi |
|---|---|---|---|
maintenance_id | integer | Ya | ID jendela pemeliharaan. |
Pemecahan Masalah
401 Tidak Diotorisasi
- Verifikasi bahwa kunci API Anda benar dan belum kedaluwarsa.
- Pastikan Anda mengirimkan kunci di header
Authorization(baik sebagai token mentah atau dengan awalanBearer). - Konfirmasikan bahwa akun Anda menggunakan paket dengan akses API yang diaktifkan.
Otorisasi OAuth gagal (ChatGPT)
- Di halaman otorisasi, email yang Anda masukkan harus cocok dengan pemilik token API.
- Pastikan Mode Pengembang diaktifkan di pengaturan ChatGPT Anda.
- Pastikan Anda memiliki paket ChatGPT yang mendukung Mode Pengembang (Pro, Plus, Team, Business, Enterprise, atau Edu).
"Monitor tidak ditemukan atau akses ditolak"
- ID monitor tidak ada atau milik akun yang berbeda.
- Gunakan
list_monitorsuntuk melihat ID monitor Anda yang tersedia.
Alat tidak muncul di klien AI Anda
- Mulai ulang klien AI setelah mengedit konfigurasi MCP.
- Periksa apakah URL tepat
https://api.pulsetic.com/mcp. - Uji endpoint dengan cURL untuk memverifikasi konektivitas.
Mendapatkan kesalahan protokol
- Pastikan permintaan menggunakan
Content-Type: application/json. - Kolom
jsonrpcharus tepat"2.0". - Sertakan kolom
id(integer atau string) untuk semua permintaan kecuali notifikasi.
Referensi API
Server MCP menerapkan spesifikasi MCP (2025-03-26) menggunakan transport HTTP Streamable melalui satu endpoint POST /mcp dengan JSON-RPC 2.0.