Staygreen

io.github.phuryn由 GitHub 帳號 phuryn 發布v1.1.4更新於 Oct 29, 2026

Uptime monitoring and status pages for apps built with coding agents: status, incidents, setup.

已驗證Streamable HTTP可網頁執行開發者工具安全與監控

概覽

AI 產生的概覽

Staygreen 的 MCP 伺服器,用於應用程式可用性監控:查詢應用狀態、正常運作時間、回應時間、事故與到期資訊,並設定監控與狀態頁。

可以做什麼
  • 查詢狀態與監控項目:單一或全部應用程式的目前狀態、可依應用程式/類型/狀態篩選的監控項目,以及憑證與網域到期日
  • 查詢可用性與效能:實測正常運作時間、停機分鐘數、事故次數、每日歷史,以及依城市與國家區分的回應時間序列
  • 查詢事故:附有失敗斷言、位置與去識別化片段證據的事故時間軸
  • 對公開應用程式網址做一次性掃描,不建立任何內容
  • 設定監控:一次呼叫為應用程式建立網站檢查、SSL 與網域檢查、狀態頁與排程心跳,或單獨新增一個監控項目
  • 暫停監控最多 24 小時,並將事故說明存成草稿
適用情境
適合以程式碼代理建置或維護應用程式、希望助理直接查看服務是否正常、回顧事故與可用性,或在對話中完成監控與狀態頁設定的情境。
執行需求
可使用 staygreen.io/mcp 的 streamable HTTP 遠端端點並以 OAuth 登入,或使用需 Node 22 以上版本的本地 npm 套件。需要 Staygreen 帳號與工作區管理員權限;本地伺服器與 CI 使用工作區 API 權杖,以 Bearer 方式傳送。沒有權杖時只有 scan_app 可用。
安裝前請注意
連線可讀取並變更所選工作區的監控項目,API 權杖分為唯讀與讀寫兩種。寫入操作需帶 request_id 以便安全重試;刪除、告警頻道、成員、帳務與發佈不對代理開放。事故草稿在儀表板發佈前不會公開。呼叫共用工作區速率額度(Free 每分鐘 30 次,Builder 每分鐘 120 次)。請妥善保管權杖。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Staygreen,將其新增到工作區。
  2. 連接 所需的 憑證。它們會被私密儲存,絕不會在公開頁面上展示。
  3. 為需要使用其工具的對話啟用該服務。

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

交給代理程式安裝

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

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

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

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。 客戶端會在首次連接時完成 OAuth 登入。

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

README

Staygreen

Uptime and incident monitoring for apps built with coding agents: checks from more than one location, incidents with the evidence attached, and a public status page for each app. Free plan at staygreen.io.

[Staygreen's dashboard: every monitor of an app with its state, latest checks and response time, and the locations they run from]

This repository holds Staygreen's source under the Functional Source License, Version 1.1, MIT Future License (FSL-1.1-MIT): the dashboard, the probes, the status edge, the Workers, the widget and the agent API, with the staygreen command-line package in packages/staygreen/. You may use, change and redistribute it for any purpose except offering a competing commercial product or service, and each version becomes MIT two years after it is published. It is also Staygreen's public issue tracker.

It is a reviewed, one-way copy of the private working repository, refreshed after each release. Staygreen is not accepting pull requests or outside contributions at the moment; issues are welcome through the templates, and security problems go to private vulnerability reporting.

Connect an agent (MCP)

Staygreen's MCP server is at https://staygreen.io/mcp (streamable HTTP). Every call requires sign-in; there is no anonymous tool.

Sign in: no token to handle

Add https://staygreen.io/mcp to an MCP client that supports signing in (OAuth), then sign in with your Staygreen account and choose the workspace. If you don't have an account yet, signing up there creates a Free workspace; you don't need to open the dashboard first. The connection can read and change that workspace's monitors, and you must be an administrator of it.

[Add Staygreen to Cursor] [Install Staygreen in VS Code]

Claude Code:

sh
claude mcp add --transport http staygreen https://staygreen.io/mcp

Then run /mcp, choose staygreen and Authenticate. In Claude, add it as a custom connector with the same URL.

With an API token (CI and scripts)

An administrator creates a token in the dashboard under Agents and API: read-only or read-and-write, shown once. Send it as Authorization: Bearer <token>. The same token works on the MCP server and on the REST API (https://staygreen.io/api/v1/<tool>).

sh
claude mcp add --transport http staygreen https://staygreen.io/mcp \  --header "Authorization: Bearer $STAYGREEN_API_TOKEN"

Local server (npm)

The staygreen package runs the same tools as a local stdio server and calls the REST API with a workspace API token. Node 22 or later.

sh
claude mcp add staygreen -e STAYGREEN_API_TOKEN=… -- npx -y staygreen mcp

Without a token only scan_app works. Configuration for Claude Desktop, Cursor and VS Code, and the package's scan and provision commands, are in CLI.md.

Tools

ToolWhat it does
get_statusCurrent status of one app or every app: monitors, page components and open incidents
list_monitorsMonitors in your workspace, filtered by app, type or state, with each one's last check
get_uptimeMeasured uptime, downtime minutes, incident counts and daily history. Unmeasured time is no data, not 100%
get_response_timesResponse-time series for a monitor, by city and country
get_incidentsIncident evidence and timelines: failing assertions, locations and masked snippets
get_ssl_and_domain_expiryCertificate and domain expiry dates for monitored hosts
scan_appA one-time scan of a public app URL. Optional keys are used once and never stored. Creates nothing
provision_appSets up an app's website check, SSL and domain check, status page and cron heartbeats in one call
create_monitorAdds one monitor to an app, with the dashboard's own checks and plan limits
pausePauses one monitor or one app's monitors for up to 24 hours, then resumes them
draft_incident_updateSaves an incident note as a draft. It appears publicly only once you publish it in the dashboard

Writes take a request_id UUID: repeat it with the same inputs to retry safely. Deleting, alert channels, teammates, billing and publishing are not available to agents. Calls share your workspace's budget: 30 a minute on Free, 120 on Builder.

Report a bug or suggest a feature

Open an issue. Say what you did, what you expected, and what happened instead; the monitor type and the screen help.

Issues are public. Never paste a secret, service-role or restricted key, a token, a webhook or heartbeat URL, a signing secret or a header value, whether Staygreen issued it or another service did. If you posted one, treat it as leaked: make sure the old value stops working wherever it is accepted, because issuing a new one doesn't always retire it; see staygreen.io/support if you're not sure how.

For a security problem, don't open an issue: use private vulnerability reporting instead. For anything else private, see staygreen.io/support.

Run it yourself

Staygreen is several services, not a one-click app, but a coding agent with your providers' API tokens can do most of an installation. You may run a copy for your own organizations; the license rules out offering it to others as a competing commercial product or service.

LayoutWhat runs whereGood for
RecommendedThe dashboard on Netlify, the database on Supabase, sign-in on Clerk, two probe VMs in different regions (one also runs the status edge), and three Cloudflare Workers for heartbeats, alerts and the watchdogMonitoring you rely on: an HTTP, TCP or service check that fails is confirmed from a second location before an incident opens
SmallestOne VM running the dashboard, one probe and the status edge, with Supabase, Clerk and the three Workers as aboveTrying it, or watching a few apps where an occasional false alarm is acceptable
  • Deploying: what you need, suggested resources and their monthly cost, the smallest installation, setting it up with an agent, and the setup order.
  • Sample configurations: the probe's and the status edge's service units, variables and Caddyfile, and the alert sender's and watchdog's Wrangler configurations.
  • The environment reference and the architecture.

The product is at the repository root; the standalone npm package is in packages/staygreen/. Root server.json and glama.json retain the hosted MCP and npm listing identities.

Development

Use Node 22 or later. From the root run npm ci, npm run typecheck, and npm run test:unit. The unit tests use fakes and require neither database access nor credentials. Run npm ci, npm run typecheck, npm run build, and npm test inside packages/staygreen/ for the standalone CLI.

The export check skips integration tests (Postgres and Supabase credentials), browser tests (a configured app, Playwright browsers, and Clerk development accounts), live network tests, and go-live acceptance. Private operator/export tests do not ship; their omitted paths are recorded in deploying. A passing offline check does not verify a deployment or sign-in.

For the app, create your own local .env from .env.example, fill the required app variables, then run npm run dev. npm run build also validates configuration; the offline export check runs TypeScript and unit tests, not an unconfigured Next production build. Review the legal pages, branding, service URLs and plan copy before serving your own deployment.

The opt-in tests/unit/rdap-live.test.ts network cases are skipped in offline unit runs. The package symlink test can also skip on Windows when symlink creation is unavailable.

來源:README.md,提交 fc68c82

工具

0
該伺服器需要登入,因此 SourceWeft 無法在沒有帳號的情況下讀取其工具,也未收錄。已連接帳號所能看到的內容可能因帳號及其權限而異。

版本歷史

3
  1. v1.1.4最新Oct 29, 2026
  2. v1.1.3Oct 26, 2026
  3. v1.1.2Oct 26, 2026

評分

已滿足適用檢查項的 75%

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

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分

    請在儲存庫或註冊中心條目中宣告授權條款。