SiteGuardian

io.github.gweber由 GitHub 帳號 gweber 發布v1.0.0更新於 Oct 27, 2026

EU-hosted website monitoring + 17-framework compliance MCP. One anonymous tool, four authenticated.

已驗證Streamable HTTP可網頁執行網頁搜尋與抓取安全與監控

概覽

AI 產生的概覽

SiteGuardian 的託管 MCP 端點,讓助理對網站執行安全掃描,並查詢網域的監控、漂移與修復資料。

可以做什麼
  • 對指定網域執行一次免費安全掃描,回傳 A–F 評級、掃描時間、主要問題與報告連結
  • 列出帳號下持續監控的網域及其評級與最近掃描時間
  • 查詢某個受監控網域的目前評級與未解決問題
  • 檢視近期設定漂移事件,例如 TLS、DNSSEC、安全標頭、Cookie 與第三方 JS 主機變動
  • 取得針對已付費網域問題的可直接複製修復建議(nginx、Apache、DNS、shell)
適用情境
適合希望助理在聊天用戶端內快速檢查網站安全狀況、追蹤已監控網域,或說明設定變動與修復方式的情境。
執行需求
遠端 Streamable HTTP 端點,無需本機安裝。掃描工具可匿名使用。四個監控工具需要 SiteGuardian 帳號(Monitor、Compliance 或 Enterprise 方案)產生的 API 金鑰,透過 Authorization Bearer 標頭傳送。修復建議另需該網域有有效訂閱或已購買單次報告。
安裝前請注意
Authorization 標頭帶有真實 API 金鑰,請勿放入共用設定。修復建議需付費方案或已購報告,呼叫可能涉及計費。此服務為閉源 SaaS,工具呼叫會被記錄並以雜湊鏈保存用於防濫用與計費,網域資訊會傳送給服務商。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 SiteGuardian,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。

交給代理程式安裝

把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。

閱讀 https://sourceweft.com/mcp/io.github.gweber%2Fsiteguardian/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。

檢視代理程式所依據的安裝指南

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。

{
  "mcpServers": {
    "siteguardian": {
      "type": "http",
      "url": "https://mcp.siteguardian.io/"
    }
  }
}

README

SiteGuardian MCP — Examples & Client Configurations

[MCP] [EU] [Docs]

Client configurations, copy-paste examples, and the MCP server manifest for the SiteGuardian Model Context Protocol server.

Note: This repository contains examples and client integration code only. The MCP server itself is hosted at https://mcp.siteguardian.io and is operated as a SaaS — server source is closed. Everything in this repo is MIT-licensed and free to fork.

What is the SiteGuardian MCP server?

A hosted MCP endpoint that lets Claude Desktop, Claude Code, Cursor, Windsurf, and VS Code Copilot query website-monitoring data and run security/compliance scans through natural-language tool calls.

  • Endpoint: https://mcp.siteguardian.io (or the canonical https://siteguardian.io/mcp)
  • Transport: Streamable HTTP
  • Hosting: Hetzner, Germany — EU data residency
  • Documentation: https://siteguardian.io/docs/mcp

Five tools

ToolAuthPurpose
scan_domainanonymousOne-off security scan, A–F grade + top 3 issues + permalink
list_monitored_domainsBearerDomains under continuous monitoring for the account
get_domain_statusBearerCurrent grade + active issues for a monitored domain
get_drift_eventsBearerRecent posture changes (TLS, DNSSEC, headers, cookies, JS hosts)
get_fix_recommendationsBearer + paid plannginx/Apache/DNS snippets + verify commands

Try the anonymous tool (no setup required)

bash
curl -X POST https://mcp.siteguardian.io/ \  -H 'Content-Type: application/json' \  -H 'Accept: application/json, text/event-stream' \  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"scan_domain","arguments":{"domain":"example.com"}}}'

Rate-limited to 10 calls/hour/IP. Cached for 2h per domain. Full curl/Python/JS examples in examples/.

Install in your client

All clients use the same endpoint. Copy-paste configs in clients/:

Authentication

The scan_domain tool is anonymous. The four monitoring tools require a Bearer key:

  1. Sign in at https://siteguardian.io
  2. Open Settings → API & Integrations
  3. Click Generate key, name it, copy it
  4. Add to your client config:
    json
    "headers": {"Authorization": "Bearer sg_live_..."}

API keys are available on the Monitor, Compliance, and Enterprise plans.

Privacy

  • EU-hosted. Hetzner Germany. No US sub-processor.
  • No LLM in the response path. Tool answers are deterministic from monitoring data.
  • No training on your queries. Logged for abuse prevention and billing only.
  • Audit trail. Every tool call is recorded in the SHA-256 hash chain.

Server manifest

The full machine-readable MCP server manifest is in server.json — this is the file consumed by the Anthropic MCP Registry and the various community directories.

Roadmap

  • OAuth 2.1 (per current MCP spec)
  • resources and prompts in addition to tools
  • Listing in the official Anthropic MCP Registry
  • Listing on Smithery and mcp.so

License

Examples and client configurations in this repository are released under the MIT License — see LICENSE.

The SiteGuardian MCP server itself is proprietary and hosted as a SaaS. Server source is not distributed.

Support

來源:README.md,提交 92d01ef

工具

5

scan_domain

Runs a free one-off security scan of the given domain and returns its grade (A–F), scan timestamp, and up to three top-priority issues with a permalink to the full report on siteguardian.io. Use this when the user asks for a quick security check of a domain that is NOT yet under SiteGuardian monitoring, or when they want a fresh assessment before subscribing. Results are cached for two hours, so repeated calls about the same domain return the same snapshot and mark it with cached=True. Do NOT use this for domains already under monitoring by the user — call get_domain_status instead for the account-scoped view with framework tags. Do NOT use this to batch-scan many domains as a competitive-intelligence tool; per-source-IP and per-target rate limits bound usage. This tool does not require authentication.

輸入參數domain必填

list_monitored_domains

Returns the full list of domains under continuous SiteGuardian monitoring for the authenticated account. Each entry includes the domain, current security grade (A–F), timestamp of the last completed scan, and a relative dashboard URL. Use this when the user asks what they are monitoring, wants an inventory summary, or needs to look up a specific domain's exact spelling before calling get_domain_status / get_drift_events / get_fix_recommendations. The list is scoped entirely by the API key — there is no filter parameter to widen or narrow the result. Do NOT use this to enumerate domains the user does not own or monitor — it only returns their own inventory. Do NOT call it to trigger a scan (it does not); use scan_domain for one-off checks. Requires a valid API key.

無需輸入參數。

get_domain_status

Returns the current security grade (A–F), last-scan timestamp, and list of active issues for a domain that is ALREADY under SiteGuardian monitoring by the authenticated account. Each issue carries a stable id, a severity, a short title, and an impact description. The response also includes a relative dashboard URL. Use this when the user asks about the current state of a specific monitored domain, wants to confirm a recent change landed, or needs issue ids to call get_fix_recommendations with a specific issue_id. Do NOT use this for domains not yet under monitoring — it will return a domain_not_monitored error; call scan_domain for one-off checks instead. Compliance framework tags (NIS2 / GDPR / DORA) are NOT included in v1; framework tagging on the monitored-domain path is tracked as a follow-up. Requires a valid API key.

輸入參數domain必填

get_drift_events

Returns recent configuration drift events for a domain under monitoring by the authenticated account — TLS changes, DNSSEC state changes, new or removed security headers, shifts in third-party JS hosts, new cookies. Each event carries its observed-at timestamp, a kind (tls/dnssec/cookies/js_hosts/headers), a severity classified centrally (high for tls/dnssec/headers, medium for cookies/js_hosts, otherwise low), a short summary, and a sanitised detail payload. Use this when the user asks 'what changed' on a domain, wants to audit recent posture shifts, or is diagnosing an unexpected issue. Pair it with get_domain_status to see the current state and get_drift_events to see how it got there. Do NOT use this for a domain that is not under monitoring — you'll get a domain_not_monitored error; monitoring has to be active for the drift history to accumulate. Optional since (ISO-8601) and limit (1..100) params narrow the window. Requires a valid API key.

輸入參數limitsincedomain必填

get_fix_recommendations

Returns copy-paste-ready fix recommendations (nginx, Apache, DNS, shell) for the issues found on a domain the caller has already paid for — either an active Monitor/Compliance subscription covering the domain, OR a purchased one-off Report for the domain. Each recommendation carries a stable issue_id, a priority (high/medium/low), a title, prose instructions, one or more config snippets with the target domain already interpolated, a verify command, and a category tag. Use this when the user asks how to fix an issue, wants the exact config to apply, or needs to verify a fix worked. Pass the optional issue_id to scope the response to one specific finding. The response is read-only — this tool NEVER triggers a fresh scan; fixes are computed from the most recent stored scan (including the Report-included re-scan if that was used). Do NOT use this for domains the caller hasn't purchased coverage for — you'll get an upgrade_required error that links to the pricing page. Do NOT use this to run or trigger a scan; call scan_domain for anonymous checks. Requires a valid API key.

輸入參數domain必填issue_id

版本歷史

1
  1. v1.0.0最新Sep 16, 2026

評分

已滿足適用檢查項的 100%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分