Oda Monitor
v1.0.0Monitors websites, APIs, and cron jobs (watchdogs) using Watch.dog. Use it when the user asks to "check the status of my monitors", "check uptime", "review w...
Security Scan
OpenClaw
Suspicious
medium confidencePurpose & Capability
The name, description, tools exposed (list/create/pause/resume/delete monitors and watchdogs), and required binary (node) align with a Watch.dog monitoring integration. Dependencies and code contents (MCP server proxying tools to a remote PHP MCP endpoint) are consistent with the skill's stated purpose.
Instruction Scope
The SKILL.md and embedded system prompt instruct the assistant to automatically create or overwrite a .env file in the skill root with the user's WATCHDOG_API_KEY and WATCHDOG_API_URL, and then to immediately execute list_monitors as a silent test. Those are explicit instructions for file writes and automatic network activity triggered by the model's onboarding flow — this grants the skill the authority to persist secrets and to perform network calls without an additional explicit user confirmation beyond providing credentials.
Install Mechanism
No remote download/install mechanism is specified (instruction-only with included source). Dependencies are standard npm packages from the registry; there is no extract-from-arbitrary-URL install step. Risk from installation artifacts is therefore standard for installing an npm-based skill (run npm install).
Credentials
The skill requires the Watch.dog API key and API URL to operate, which is proportional to its function. However, it directs storing those credentials in plaintext in a .env file inside the skill folder and reads them from process.env. Storing secrets on disk in the skill directory may be undesirable for many users and increases the risk surface if the environment or workspace is shared.
Persistence & Privilege
always:false (no forced global presence) and the skill does not request other skills' config. Still, the skill's instructions explicitly instruct automatic creation/overwrite of .env and automatic (silent) invocation of a network tool upon credential changes — actions that persist credentials and trigger network calls without an additional explicit confirmation step.
What to consider before installing
Before installing or enabling this skill: (1) Review the index.js source yourself (or have someone you trust do so) — the skill will read and can be instructed to write a .env file in its folder that contains your API key. (2) Be aware the onboarding flow instructs automatic creation/overwrite of that .env file and an immediate, silent call to list_monitors using your key — network activity will occur as soon as you provide credentials. (3) If you proceed, prefer using a dedicated, limited-scope API key and run the skill in an isolated environment or container. (4) If you do not want secrets persisted on disk, refuse automatic .env creation: provide credentials via environment variables to your runtime instead and verify the skill does not write files. (5) Consider rotating the key after testing, and verify the default WATCHDOG_API_URL is the legitimate service you expect (https://api.watch.dog/...).Like a lobster shell, security has layers — review code before you run it.
Runtime requirements
🐕 Clawdis
Binsnode
latest
Watch.dog Uptime – OpenClaw Skill
What does this skill do?
Connects your AI agent with the Watch.dog platform to:
- 🔭 Actively monitor websites, APIs, IPs, and ports (HTTP, Keyword, Ping)
- 🫀 Watch scheduled tasks (cron jobs, backups, scripts) through Passive Watchdogs (Heartbeats)
- 📊 Check the status of your infrastructure in real-time
- Monitor statuses are interpreted as follows:
null: Pending0: Down (Offline)1: Up (Online)2: New (New/Created)
- Monitor statuses are interpreted as follows:
- 🗑️ Manage resources (Pause, Resume, Delete)
- 🌐 Public Status Pages (Tracker Pages)
When to activate this skill
Use it when the user:
- Wants to create a monitor for a URL, website, API, or server
- Asks about the status, historical uptime, or availability of their services
- Needs to configure a watchdog for a scheduled task or cron job
- Asks for a summary of their monitored infrastructure
- Wants to pause, resume, or delete monitors or watchdogs from their account
- Requests to configure their public status page (Tracker Page)
Required Configuration
Create a .env file in this folder with:
WATCHDOG_API_KEY="sk_live_your_key_here"
WATCHDOG_API_URL="api_url_here" | "https://api.watch.dog/api/mcp_server.php"
If you don't have an API Key, create one in your dashboard at watch.dog.
Clarification about Intervals
- When creating monitors (
create_monitor) or watchdogs (create_watchdog), if the user specifies a time (e.g. "every 5 minutes"), always pass the exact value in seconds (e.g. 300). - Be aware the remote API may auto-correct the interval if the user's plan does not support such high frequencies, so report the returned interval accurately.
Available Tools
| Tool | Description |
|---|---|
list_monitors | Lists all active monitors |
create_monitor | Creates an Active Monitor (HTTP, Keyword, Ping) |
get_monitor_status | Status and recent events of a specific monitor |
pause_monitor | Temporarily pauses an Active Monitor |
resume_monitor | Resumes a previously paused Active Monitor |
delete_monitor | Deletes an Active Monitor (Requires Confirmation) |
get_monitor_uptime_history | Uptime/Availability matrix of a monitor |
update_tracker_page | Configures the Public Status Page (/monitors/...) |
list_watchdogs | Lists all Passive Watchdogs/Heartbeats |
create_watchdog | Creates a Passive Watchdog for a cron job |
get_watchdog_status | Health status of the last ping of a watchdog |
delete_watchdog | Deletes a Passive Watchdog (Requires Confirmation) |
Installation
cd oda-monitor
npm install
Comments
Loading comments...
