Skip to main content
MCP server CX Codex

Paw Pulse — Claude Code MCP server: monitor your self-hosted LLM

Watches a home box running Ollama, llama.cpp or vLLM and fires an alert when it stops answering or slows down. Nothing has to be exposed to the internet.

Install into Claude Code · Platform CLI: remote server All methods and platforms ↓
claude mcp add --transport http pawpulse https://pulse.dougalpaw.com/mcp
Open on GitHub

What Paw Pulse does

A small client script, pawpulse.sh, sits on the machine that hosts your LLM server and pushes a heartbeat out every few minutes. Once the signals stop for longer than the grace period you set, the monitor flips to down and a webhook goes out. The server itself never takes an inbound connection, so there is no port to open.

On Ollama it also catches the quiet problems. Set slow_tps_threshold and you hear about generation crawling; set min_gpu_pct and you hear when a model has dropped from GPU to CPU. That second check reads size_vram from /api/ps, so jq has to be present on the box. No LLM on the host? LLM_KIND=none sends a plain heartbeat, and the same alerts can watch a NAS or a cron job.

The MCP endpoint is remote and speaks Streamable HTTP. It keeps no sessions: one JSON-RPC message per POST, one JSON reply. Tools are create_monitor, setup_instructions, get_status, list_heartbeats, update_monitor and delete_monitor. Connecting needs no auth, but changing a monitor means passing its manage_token as an argument. Alerts reach Discord, Slack, Microsoft Teams, Telegram and Google Chat natively; any other https URL gets generic JSON.

What it helps with

  • find out a home Ollama box died without exposing it publicly
  • get a Discord alert when token generation slows to a crawl
  • catch a model falling back from GPU to CPU
  • watch a NAS or cron job with the same heartbeat setup
  • share a public status page and badge for a monitor

Example prompts for the agent

  • Create a monitor for my home Ollama server and show me the setup instructions
  • List the recent heartbeats for my monitor and tell me its current state
  • Update the slow_tps_threshold on my monitor, here is the manage_token

How to install Paw Pulse

Platform CLI: remote server

claude mcp add --transport http pawpulse https://pulse.dougalpaw.com/mcp

Step by step, with commands for each platform: How to add an MCP server to Claude Code, Codex, Cursor, VS Code, Gemini CLI and more

Questions about Paw Pulse

How do I install Paw Pulse in Claude Code?

Run claude mcp add --transport http pawpulse https://pulse.dougalpaw.com/mcp. The server then shows up in Claude's MCP server list.

What does Paw Pulse do?

It takes heartbeats from a script on your machine and marks the monitor down when they stop arriving. Each state change triggers a webhook.

Do I need an API key or an account?

No. The MCP server accepts connections without auth, and there are no accounts or IP logs. Editing a monitor requires the manage_token issued at creation.

Similar MCP servers

All MCP servers for DevOps and infrastructure →

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor