Watchtower
by watchtower.lat in Other
Job alerts for AI agents: describe a role once, get only new postings from 1,500+ tech job boards.
https://watchtower.lat/mcp?ref=registry
Last 30 days
- Uptime
- 100%
- Response time
- 362 ms typical, 375 ms slowest 5%
- Last check
- 9 h ago
- Next check
- any minute now
How to call it
Add it to any MCP client that supports remote servers.
{
"mcpServers": {
"watchtower": {
"type": "http",
"url": "https://watchtower.lat/mcp?ref=registry"
}
}
}8 tools
- watch_jobs
Create a persistent watch for tech jobs. Describe what you want in query ("iOS jobs in Austin making at least 150k a year with a maximum of 6 years of experience") and leave url out: the watch then covers every job board Watchtower monitors (tech companies and startups, whatever
- search_jobs
Find the tech jobs open right now that match a request, across every job board Watchtower monitors (tech companies and startups). Describe what you want in query ("iOS jobs in Austin with a maximum of 6 years of experience"). Read-only: nothing is saved and no watch is created, a
- list_companies
List the companies whose job boards Watchtower monitors, i.e. what search_jobs and watch_jobs without a url cover. Pass query to check whether a company is covered ("stripe"). Each entry has name, board_url (pass it to watch_jobs as url to follow only that company), platform and
- get_changes
Return job changes detected since your last get_changes call, across all your watches or one watch. This is the cheap replacement for re-browsing careers pages: if it returns an empty list, nothing you care about has changed. By default the cursor advances so each change is deliv
- list_watches
List all active watches for your client with their health, last check time and number of pending (undelivered) changes.
- get_watch
Get a watch with its status and the jobs currently open that match its filters: on its board, or across every monitored board for a watch created without a url. Use this to answer "what is open right now" without searching or fetching careers pages yourself.
- ack_changes
Mark changes up to a cursor as processed. Use with get_changes(peek=true) for at-least-once delivery: peek, act on the changes, then ack the cursor get_changes returned. Not needed if you call get_changes without peek (that acknowledges automatically).
- delete_watch
Stop monitoring. Frees one of your watch slots. Delete watches you no longer need.
Security scan
- No findings. We scan names, descriptions and tool definitions for hidden instructions and other prompt-injection patterns.
Recent checks
| When | Result | HTTP | Time |
|---|---|---|---|
| 9 h ago | Passed | 200 | 362 ms |
| 18 h ago | Passed | 200 | 375 ms |
| 28 h ago | Passed | 200 | 320 ms |
| 38 h ago | Passed | 200 | 788 ms |