Pulseby VisionStack
Documentation

Pulse docs

Everything you need to install the agent, read alerts and connect Claude.

1. Install the agent

Create an account, choose Add server, and run the command it shows on your server. It needs root (to read Docker and systemd status), python3 and systemd — standard on Ubuntu, Debian, Rocky, Alma and Fedora.

curl -fsSL https://visionstack.space/install.sh | sudo sh -s -- <SERVER_TOKEN>

The installer places the agent at /usr/local/bin/pulse-agent, writes /etc/pulse/config (readable by root only) and starts a systemd timer that runs it every minute at low CPU and I/O priority. You can read the installer and the agent before running them.

2. What the agent collects

DataSourceHow often
CPU usage, load, cores/proc/stat, /proc/loadavgevery minute
Memory and swap/proc/meminfoevery minute
Disk usage per filesystemdfevery minute
Top 8 processes (name, CPU %, memory %)ps — names only, never argumentsevery minute
Containers (name, status, image)docker ps -aevery minute
Failed systemd unitssystemctl --failedevery minute
Error-log lines, last 15 minutes (max 25)journalctl -p err, redacted on the serverevery minute
Docker disk usagedocker system dfevery 15 minutes
TLS certificate expiryhostnames in /etc/pulse/domainshourly

Redaction removes values after words like password, token, secret, key and cookie, bearer tokens, long random strings and email addresses before anything leaves your server.

Certificate checks

On install, /etc/pulse/domains is filled with the hostnames your nginx config serves. Edit it freely — one hostname per line, up to 40.

3. Alerts

AlertOpens when
Diskany filesystem reaches 90% (critical at 95%)
Memory95% or more of memory is in use
Containera container that was running stops, or one is restarting
Servicea systemd unit is in the failed state
Certificatea certificate expires in under 14 days (critical under 3)
Offlineno report for 5 minutes

Each alert sends one email when it opens and one when it resolves. When an alert opens, Pulse asks Claude for a diagnosis (at most once every 30 minutes per server). You can also run a diagnosis any time from the server page.

4. Connect Claude (MCP)

Create an API key in Settings. Pulse's MCP server is read-only and offers four tools: list_servers, get_server_health, get_alerts and get_latest_diagnosis.

Claude Code

claude mcp add --transport http pulse https://visionstack.space/mcp --header "Authorization: Bearer <PULSE_API_KEY>"

Claude Desktop and other MCP clients

Use the remote server URL https://visionstack.space/mcp with the header Authorization: Bearer <PULSE_API_KEY>.

5. Uninstall

sudo systemctl disable --now pulse-agent.timer sudo rm -rf /etc/pulse /var/lib/pulse /usr/local/bin/pulse-agent /etc/systemd/system/pulse-agent.* sudo systemctl daemon-reload

Then delete the server in the dashboard to remove its stored data.

Help

Email hello@visionstack.space. A person reads every message.