RingGuard — AI Receptionist for Trade Businesses

Missed-call cost, AI receptionist pricing and free trial signup; CRM tools for RingGuard sales reps

使うべきか

品質と安全性

B
説明の品質
95%
スキーマの完全性
72%
命名の品質
88%
ポイズニングのリスク
80%
権限の一致
100%
プロトコルへの準拠
100%

検出事項(3)

  • HIGHTool poisoning patterns detected
  • MEDIUMTool description contains URL to non-standard domainstart_shadow_trial 内
  • LOWTool 'what_ringguard_does' description lacks action verbwhat_ringguard_does 内

ツール定義とプロトコルへの準拠に関する自動分析に基づいています。

コンテキストコスト

~3,688トークン数(ツール定義)
~1.1 KB一般的なレスポンスサイズ
注意への影響は大きい(128k コンテキストの 2.88%)

これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。

インストール

ワンクリックインストール

これを `claude_desktop_config.json` ファイルに追加してください:

{
  "mcpServers": {
    "ringguard": {
      "url": "https://ringguard.online/mcp"
    }
  }
}

リモートエンドポイント

https://ringguard.online/mcpstreamable-http

できること

ツール一覧

ツール(21)

🟢 読み取り専用🟡 書き込み🔴 削除⚪ 不明
🟢what_ringguard_does

Explains RingGuard, the AI voice receptionist for trade businesses (HVAC, plumbing, roofing, towing): what it does, pricing, how it compares to a receptionist or answering service, and the free Shadow Trial. No sign-in needed.

入力スキーマ

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢missed_call_cost(calls_per_week, avg_job_value, missed_percent, booking_percent)

Estimate how much revenue a business loses to unanswered calls, from its own call volume and average job value. No sign-in needed. Ask the user for their numbers rather than guessing them.

入力スキーマ

{
  "type": "object",
  "properties": {
    "calls_per_week": {
      "type": "number",
      "exclusiveMinimum": 0,
      "description": "Inbound calls the business gets in a typical week."
    },
    "avg_job_value": {
      "type": "number",
      "exclusiveMinimum": 0,
      "description": "Average revenue from one booked job, in dollars."
    },
    "missed_percent": {
      "default": 30,
      "description": "Share of calls that go unanswered. Default 30 is an assumption; use the business's own figure if known.",
      "type": "number",
      "minimum": 0,
      "maximum": 100
    },
    "booking_percent": {
      "default": 50,
      "description": "Share of answered calls that become a booked job. Default 50 is an assumption.",
      "type": "number",
      "minimum": 0,
      "maximum": 100
    }
  },
  "required": [
    "calls_per_week",
    "avg_job_value"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢ringguard_cost_estimate(calls_per_month, avg_call_minutes)

Estimate what RingGuard would cost a business per month from how many calls it would handle, compared with a receptionist and an answering service. No sign-in needed.

入力スキーマ

{
  "type": "object",
  "properties": {
    "calls_per_month": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991,
      "description": "Calls RingGuard would answer per month (overflow + after-hours)."
    },
    "avg_call_minutes": {
      "default": 3,
      "description": "Average call length in minutes. Default 3 is an assumption.",
      "type": "number",
      "exclusiveMinimum": 0
    }
  },
  "required": [
    "calls_per_month"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
⚪start_shadow_trial(business_name, contact_name, phone, email, industry, ...)

Sign a business up for RingGuard's free 48-hour Shadow Trial. The RingGuard team follows up by text or call within one business day. Only call this after the person has given their details and explicitly agreed to be contacted and to the privacy policy (https://ringguard.online/privacy). No sign-in needed.

入力スキーマ

{
  "type": "object",
  "properties": {
    "business_name": {
      "type": "string",
      "minLength": 1
    },
    "contact_name": {
      "type": "string",
      "minLength": 1
    },
    "phone": {
      "type": "string",
      "minLength": 7
    },
    "email": {
      "type": "string",
      "format": "email",
      "pattern": "^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"
    },
    "industry": {
      "type": "string"
    },
    "city": {
      "type": "string"
    },
    "state": {
      "type": "string"
    },
    "message": {
      "description": "Anything the business wants RingGuard to know.",
      "type": "string"
    },
    "agreed_to_be_contacted": {
      "type": "boolean",
      "const": true,
      "description": "Must be true: the person explicitly agreed to be contacted and to the privacy policy."
    }
  },
  "required": [
    "business_name",
    "contact_name",
    "phone",
    "email",
    "agreed_to_be_contacted"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢my_account

Who is signed in to RingGuard, and a quick count of their pipeline.

入力スキーマ

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢find_leads(search, status, industry, city, min_score, ...)

Search leads you can see: your own plus the unclaimed pool. Filter by name/phone text, status, industry, city or minimum lead score.

入力スキーマ

{
  "type": "object",
  "properties": {
    "search": {
      "description": "Text to match in business name, contact name or phone.",
      "type": "string"
    },
    "status": {
      "type": "string",
      "enum": [
        "cold",
        "contacted",
        "shadow_trial",
        "trial_active",
        "won",
        "lost"
      ]
    },
    "industry": {
      "description": "Partial match, e.g. \"hvac\" or \"dental\".",
      "type": "string"
    },
    "city": {
      "type": "string"
    },
    "min_score": {
      "description": "Pipeline lead score, 1-5.",
      "type": "integer",
      "minimum": 1,
      "maximum": 5
    },
    "scope": {
      "default": "all",
      "type": "string",
      "enum": [
        "all",
        "mine",
        "unclaimed"
      ]
    },
    "limit": {
      "default": 25,
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢top_leads_to_call(industry, limit)

The best leads to call right now: not yet won or lost, with a phone number, ranked by lead score and how much the open receptionist job is costing them. Includes the suggested cold-call angle.

入力スキーマ

{
  "type": "object",
  "properties": {
    "industry": {
      "type": "string"
    },
    "limit": {
      "default": 10,
      "type": "integer",
      "minimum": 1,
      "maximum": 50
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢lead_details(lead_id)

Everything about one lead: contact info, pitch (cold-call angle, Shadow Trial pitch, pain points), deal details, call history and notes.

入力スキーマ

{
  "type": "object",
  "properties": {
    "lead_id": {
      "type": "string",
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
    }
  },
  "required": [
    "lead_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
⚪claim_lead(lead_id, confirm)

Take an unclaimed lead from the shared pool into your own pipeline. Two-step: draft, then confirm.

入力スキーマ

{
  "type": "object",
  "properties": {
    "lead_id": {
      "type": "string",
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
    },
    "confirm": {
      "default": false,
      "description": "Leave false to get a draft of the change. Only set true after the user has seen the draft and approved it.",
      "type": "boolean"
    }
  },
  "required": [
    "lead_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟡add_lead(business_name, phone, contact_name, email, industry, ...)

Add a new lead to your pipeline. Warns if another visible lead already has the same phone number. Two-step: draft, then confirm.

入力スキーマ

{
  "type": "object",
  "properties": {
    "business_name": {
      "type": "string",
      "minLength": 1
    },
    "phone": {
      "type": "string",
      "minLength": 7
    },
    "contact_name": {
      "type": "string"
    },
    "email": {
      "type": "string",
      "format": "email",
      "pattern": "^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"
    },
    "industry": {
      "type": "string"
    },
    "city": {
      "type": "string"
    },
    "state": {
      "type": "string"
    },
    "notes": {
      "type": "string"
    },
    "confirm": {
      "default": false,
      "description": "Leave false to get a draft of the change. Only set true after the user has seen the draft and approved it.",
      "type": "boolean"
    }
  },
  "required": [
    "business_name",
    "phone"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟡update_lead_status(lead_id, status, confirm)

Move one of your leads to a new pipeline stage. Two-step: draft, then confirm.

入力スキーマ

{
  "type": "object",
  "properties": {
    "lead_id": {
      "type": "string",
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
    },
    "status": {
      "type": "string",
      "enum": [
        "cold",
        "contacted",
        "shadow_trial",
        "trial_active",
        "won",
        "lost"
      ]
    },
    "confirm": {
      "default": false,
      "description": "Leave false to get a draft of the change. Only set true after the user has seen the draft and approved it.",
      "type": "boolean"
    }
  },
  "required": [
    "lead_id",
    "status"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
⚪log_call(lead_id, outcome, notes, follow_up_at, direction, ...)

Record a call with one of your leads, optionally setting a follow-up. Some outcomes also move the lead's stage (won, trial_started, appointment_booked, not_interested, do_not_call). Two-step: draft, then confirm.

入力スキーマ

{
  "type": "object",
  "properties": {
    "lead_id": {
      "type": "string",
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
    },
    "outcome": {
      "type": "string",
      "enum": [
        "no_answer",
        "left_voicemail",
        "not_interested",
        "follow_up",
        "appointment_booked",
        "trial_started",
        "won",
        "do_not_call"
      ]
    },
    "notes": {
      "type": "string"
    },
    "follow_up_at": {
      "description": "When to follow up, as an ISO 8601 date-time with timezone, e.g. 2026-10-09T10:00:00-05:00.",
      "type": "string"
    },
    "direction": {
      "default": "outbound",
      "type": "string",
      "enum": [
        "outbound",
        "inbound"
      ]
    },
    "confirm": {
      "default": false,
      "description": "Leave false to get a draft of the change. Only set true after the user has seen the draft and approved it.",
      "type": "boolean"
    }
  },
  "required": [
    "lead_id",
    "outcome"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢my_follow_ups(days_ahead)

Your leads with a follow-up due, including overdue ones, soonest first.

入力スキーマ

{
  "type": "object",
  "properties": {
    "days_ahead": {
      "default": 7,
      "type": "integer",
      "minimum": 0,
      "maximum": 90
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢call_history(lead_id, days, limit)

Calls logged on one lead, or if no lead is given, the calls you logged in the last N days.

入力スキーマ

{
  "type": "object",
  "properties": {
    "lead_id": {
      "type": "string",
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
    },
    "days": {
      "default": 7,
      "type": "integer",
      "minimum": 1,
      "maximum": 365
    },
    "limit": {
      "default": 50,
      "type": "integer",
      "minimum": 1,
      "maximum": 200
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢new_trial_signups(days, include_converted)

Businesses that signed up for the free Shadow Trial on ringguard.online and haven't been converted to a lead yet.

入力スキーマ

{
  "type": "object",
  "properties": {
    "days": {
      "default": 14,
      "type": "integer",
      "minimum": 1,
      "maximum": 365
    },
    "include_converted": {
      "default": false,
      "type": "boolean"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
⚪convert_trial_to_lead(trial_id, confirm)

Turn a Shadow Trial signup into a lead in your pipeline at the shadow_trial stage. Two-step: draft, then confirm.

入力スキーマ

{
  "type": "object",
  "properties": {
    "trial_id": {
      "type": "string",
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
    },
    "confirm": {
      "default": false,
      "description": "Leave false to get a draft of the change. Only set true after the user has seen the draft and approved it.",
      "type": "boolean"
    }
  },
  "required": [
    "trial_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢pipeline_report

Snapshot of your pipeline: leads by stage, won deals and monthly recurring revenue, follow-ups due, the unclaimed pool and open trial signups.

入力スキーマ

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢my_stats(days)

Your call activity over the last N days: totals by outcome, conversations, trials started and wins.

入力スキーマ

{
  "type": "object",
  "properties": {
    "days": {
      "default": 7,
      "type": "integer",
      "minimum": 1,
      "maximum": 365
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢team_leaderboard(days)

Owner only. Call activity per rep over the last N days, ranked by conversations.

入力スキーマ

{
  "type": "object",
  "properties": {
    "days": {
      "default": 7,
      "type": "integer",
      "minimum": 1,
      "maximum": 365
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢lead_gen_status

Health of the automated lead-gen pipeline (job postings → AI enrichment → unclaimed pool, runs every 4 hours): when it last delivered leads and how many.

入力スキーマ

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟡undo_last_change(confirm)

Reverse the most recent change you made through Claude (claim, new lead, status change, logged call or trial conversion). Two-step: draft, then confirm.

入力スキーマ

{
  "type": "object",
  "properties": {
    "confirm": {
      "default": false,
      "description": "Leave false to get a draft of the change. Only set true after the user has seen the draft and approved it.",
      "type": "boolean"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

コミュニティ

このサーバーを評価する

エビデンス

最近の観測

検証済みバージョンは記録されていませんツール 21 件