Ned Watch
Wake me when my agent misses its heartbeat: one quickstart call. HTTP, TLS, deadman; US+EU nodes.
사용해야 할까요
품질 및 안전성
발견 사항 (1)
- LOWpricing에서
도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.
컨텍스트 비용
이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.
설치
원클릭 설치
`claude_desktop_config.json` 파일에 다음을 추가하세요:
{
"mcpServers": {
"ned-watch": {
"url": "https://api.ned.watch/mcp"
}
}
}원격 엔드포인트
https://api.ned.watch/mcpstreamable-http할 수 있는 일
도구 목록
도구 (7)
⚪watch_register(type, callback_url, target, interval_s, condition)
Register a watch. type: http | tls | deadman. target: URL (http/tls); omit for deadman. interval_s >= 300 on the free tier. condition: e.g. {"warn_days": 14} for tls, {"grace_s": 600} for deadman, {"max_ms": 2000} for http latency. Ned POSTs a signed test callback to callback_url within 60s, then fires on change. No agent key yet? Call this without one: the response includes agent_key (shown once). Store it and pass it as NED_AGENT_KEY next time.
입력 스키마
{
"type": "object",
"properties": {
"type": {
"title": "Type",
"type": "string"
},
"callback_url": {
"title": "Callback Url",
"type": "string"
},
"target": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Target"
},
"interval_s": {
"default": 300,
"title": "Interval S",
"type": "integer"
},
"condition": {
"anyOf": [
{
"additionalProperties": true,
"type": "object"
},
{
"type": "null"
}
],
"default": null,
"title": "Condition"
}
},
"required": [
"type",
"callback_url"
],
"title": "watch_registerArguments"
}🟢quickstart(callback_url, every_minutes)
The fastest way to be watched, in one call. Makes you an agent (if you have no key yet) and a deadman watch that expects a check-in every `every_minutes` (5 to 1440). Miss one and Ned POSTs a signed message to callback_url; check in again and he says it's clear. Returns agent_key (shown once), signing_secret, and the exact check-in line to run on your schedule. The first 5 watches are free.
입력 스키마
{
"type": "object",
"properties": {
"callback_url": {
"title": "Callback Url",
"type": "string"
},
"every_minutes": {
"default": 60,
"title": "Every Minutes",
"type": "integer"
}
},
"required": [
"callback_url"
],
"title": "quickstartArguments"
}🟢watch_get(watch_id)
Current state of one of your watches: status, fired, fire_count, next_check, last_state.
입력 스키마
{
"type": "object",
"properties": {
"watch_id": {
"title": "Watch Id",
"type": "string"
}
},
"required": [
"watch_id"
],
"title": "watch_getArguments"
}🔴watch_cancel(watch_id)
Cancel a watch you registered. Frees a free-tier slot.
입력 스키마
{
"type": "object",
"properties": {
"watch_id": {
"title": "Watch Id",
"type": "string"
}
},
"required": [
"watch_id"
],
"title": "watch_cancelArguments"
}🟢deadman_checkin(watch_id, signing_secret)
Check in on a deadman watch to keep it from firing. Proves you hold the watch's signing_secret (returned at registration): it is sent as Authorization: Bearer <signing_secret> for this one call. No agent key needed.
입력 스키마
{
"type": "object",
"properties": {
"watch_id": {
"title": "Watch Id",
"type": "string"
},
"signing_secret": {
"title": "Signing Secret",
"type": "string"
}
},
"required": [
"watch_id",
"signing_secret"
],
"title": "deadman_checkinArguments"
}⚪balance
Your balance in cents, free allowance used, burn per day, days left, and the top-up routes.
입력 스키마
{
"type": "object",
"properties": {},
"title": "balanceArguments"
}🟡pricing
Ned Watch pricing: 5 free watches at >=300s, then per-day rates (http/tls 2c, fast 7c, deadman 1c) from a prepaid balance topped up over x402 (USDC on Base). Public, no key needed. Paying is done against POST /v1/topup/{5,20,50}, not here.
입력 스키마
{
"type": "object",
"properties": {},
"title": "pricingArguments"
}커뮤니티
증거