mcpField
E
Exit1 Uptime Monitoring

Exit1 Uptime Monitoring

远程服务
exit1.dev云与基础设施02 周前更新

关于 Exit1 Uptime Monitoring

Exit1 Uptime Monitoring 的 MCP 服务让编码 Agent 和其他 MCP 客户端创建、管理运行时间监控并查询状态。它支持托管 OAuth 连接或本地 stdio,也可在无账户时发起注册。

主要功能

  1. 01创建网站、API、Ping 等监控
  2. 02配置邮件和 Webhook 告警
  3. 03查看状态、历史与运行时间统计
  4. 04发送测试告警
  5. 05支持托管与本地连接

适用场景

  1. 01为刚部署的项目配置监控
  2. 02检查监控项当前是否故障
  3. 03比较 API 的近期响应时间
  4. 04向 Slack 或邮件接收者发送告警

MCP 相关

通过托管 HTTP/OAuth 或本地 stdio 向 MCP 客户端提供 Exit1 监控工具。工具覆盖监控项、告警设置和状态查询,并提供 setup_monitoring 提示词。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://app.exit1.dev/mcp/v1
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

安装包
npmexit1-mcp0.4.0

工具

详细介绍

exit1-mcp

用于 Exit1 正常运行时间监控的 MCP 服务。让 AI 助手为你刚发布的项目设置监控——读取你的代码仓库、创建检查、配置告警,并发送真实测试告警以验证一切正常——之后还可以用日常语言询问正常运行时间。

两种连接方式

托管版(推荐)。 无需 API 密钥、无需安装 npm,也不要求特定套餐即可开始使用。在启动会话前,在终端中运行以下命令:登录会打开浏览器,你使用 Clerk 登录(或注册)、授权后即可连接。

claude mcp add --transport http exit1 https://app.exit1.dev/mcp/v1 && claude mcp login exit1

特意写成一行:在某些终端中,将这两条命令分成两行粘贴并不可靠(cmd.exe 会丢弃第二行)。在不支持解析 && 的旧版 Windows PowerShell(5.1)中,请分两次运行这两部分。请在启动会话前连接:MCP 客户端会在启动时加载服务,因此在对话过程中添加的服务需要重启后才能使用。在不支持 claude mcp login 的 Claude Code 版本中,请启动 claude,然后通过 /mcp 进行身份验证。

本地 stdio。 这是一个 npm 包。使用你在控制面板中生成的 Public API 密钥。若你的客户端不支持通过 OAuth 连接远程 MCP 服务,请使用此方式。

claude mcp add exit1 -- npx -y exit1-mcp
export EXIT1_API_KEY="ek_live_your_key_here"

两种方式提供相同的工具。托管服务更简单;stdio 方式无需打开浏览器,某些类似 CI 的环境更偏好这种方式。

还没有账户?让 Agent 为你创建一个

未设置 EXIT1_API_KEY 时,stdio 服务不会退出。它会进入设置模式,并提供一个额外的 create_account 工具。Agent 使用你的电子邮件地址调用该工具后,exit1 会创建一个免费账户,并立即将服务连接到该账户。其他所有工具都可以马上使用,监控也会开始运行。

claude mcp add exit1 -- npx -y exit1-mcp
# then, in the session: "Set up uptime monitoring for this project with exit1. My email is [email protected]."

或者,在启动会话前从终端运行:

npx exit1-mcp signup --email [email protected]

无论哪种方式,exit1 都会向你发送一封邮件,其中包含用于认领账户的链接。只有认领账户后才会发送告警,这样就没有人能将 exit1 的告警发送到自己不拥有的地址。你可以在认领页面决定是否让 Agent 保留访问权限。未认领的账户会在 7 天后暂停,并在 30 天后删除。

令牌会保存到 ~/.exit1/credentials.json,并自动刷新,因此后续会话无需任何设置即可连接。若设置了 EXIT1_API_KEY,则始终优先使用它。不使用 MCP 的 Agent 也可以通过一次 HTTP 调用完成相同操作:请参阅 Agent 注册。

从零开始启用监控

连接服务(见上文),然后在项目中将以下内容粘贴到 Claude Code、Cursor、Codex 或任何支持 MCP 的助手中:

Set up uptime monitoring for this project with Exit1.

1. Call get_account to see my plan limits. If you have a create_account tool
   instead, I have no account yet: ask for my email and call it. If the Exit1
   tools aren't available to you at all, don't try to connect from inside this
   session; tell me to add the HTTP MCP server https://app.exit1.dev/mcp/v1 in
   my tool, restart it, and paste this prompt again.
2. Read this repo to find what should be monitored: deployed URLs in vercel.json /
   next.config / wrangler.toml / .env.production / README, and any /health or
   /api/status route handlers.
3. Show me the checks you plan to create before creating them.
4. Configure email alerts, then send a test alert so I can confirm delivery works.

连接后,服务还会提供一个包含完整操作指南的 setup_monitoring 提示词——在 Claude Code 中使用 /exit1:setup_monitoring。

要求

  • 托管版: Exit1 账户。可在 OAuth 流程中直接注册。
  • 本地 stdio: Node.js 18+,以及从控制面板获取的 API 密钥(所有套餐均可生成,包括 Free),或者完全不需要账户:请参阅还没有账户?。

支持的客户端

客户端托管版(OAuth)本地 stdio
Claude Code✅✅
Claude Desktop✅✅
Cursor✅✅
VS Code (Copilot)✅✅
Windsurf⚠️ 请检查版本✅
Codex CLI⚠️ 请检查版本✅
Gemini CLI⚠️ 请检查版本✅
Goose⚠️ 请检查版本✅
ChatGPT通过 connector通过 mcp-remote bridge

通过 OAuth 连接远程 MCP 的功能仍在逐步推广到各客户端。尚不支持此功能的客户端均可使用下方的 stdio 方式。

本地 stdio 设置

Claude Code
claude mcp add exit1 -- npx -y exit1-mcp

export EXIT1_API_KEY="ek_live_your_key_here"
claude
Claude Desktop

添加到 ~/Library/Application Support/Claude/claude_desktop_config.json(macOS)或 %APPDATA%\Claude\claude_desktop_config.json(Windows):

{
  "mcpServers": {
    "exit1": {
      "command": "npx",
      "args": ["-y", "exit1-mcp"],
      "env": {
        "EXIT1_API_KEY": "ek_live_your_key_here"
      }
    }
  }
}
Cursor

添加到项目中的 .cursor/mcp.json(或全局配置文件 ~/.cursor/mcp.json)。格式与上方的 Claude Desktop 相同。

使用 Copilot 的 VS Code

在命令面板中运行 MCP: Add Server,选择 Command (stdio),输入 npx -y exit1-mcp。VS Code 使用 servers 键,而不是 mcpServers:

{
  "servers": {
    "exit1": {
      "command": "npx",
      "args": ["-y", "exit1-mcp"],
      "env": {
        "EXIT1_API_KEY": "ek_live_your_key_here"
      }
    }
  }
}
Windsurf / Gemini CLI / Goose

在 mcp_config.json(Windsurf 设置 › MCP)、~/.gemini/settings.json 中,或通过 goose mcp add exit1 -- npx -y exit1-mcp,使用与 Claude Desktop 相同的 mcpServers 配置块。之后重启 IDE 或 CLI。

Codex CLI
codex mcp add exit1 -- npx -y exit1-mcp
export EXIT1_API_KEY="ek_live_your_key_here"
codex
ChatGPT

使用 mcp-remote 将 stdio 服务桥接起来,然后在 设置 › 连接器 中添加。

工具

工具范围描述
get_accountchecks:read套餐、限额和当前用量。设置时请先调用此工具。
list_checkschecks:read列出检查项及其当前状态。
get_checkchecks:read单个检查项的详情,包括 SSL 状态。
get_check_historychecks:read随时间变化的单次结果。
get_check_statschecks:read不同时间范围内的正常运行时间百分比和响应时间。
get_status_pagechecks:read公共状态页的快照。
create_checkchecks:write创建监控项(网站、API、ping、TCP、DNS、域名、心跳)。
update_checkchecks:write更改现有检查项的设置。
toggle_checkchecks:write暂停或恢复检查项。
delete_checkchecks:delete永久删除检查项。
get_alert_settingsalerts:read查看当前告警的发送目标。
set_email_alertsalerts:write设置电子邮件收件人和事件。
add_webhook_alertalerts:write连接 Slack、Discord、Teams 或通用 webhook。
send_test_alertalerts:write发送真实的测试告警。

默认情况下,托管服务会请求 checks:read、checks:write、alerts:read 和 alerts:write,不会请求必须明确申请的 checks:delete。使用 stdio 方式时,创建 API 密钥时请勾选所需的权限范围。

示例提示词

  • “为这个项目设置监控。”
  • “我现在有监控项宕机了吗?”
  • “过去 30 天内,我的 API 检查项正常运行时间是多少?”
  • “显示 production 最近 10 次故障。”
  • “为 staging.example.com 添加检查项,并将告警发送到 Slack 中的 #ops。”
  • “比较本周和上周的响应时间。”

配置

环境变量必填描述
EXIT1_API_KEY否你的 Exit1 API 密钥(ek_live_…)。如果未设置,服务会使用已保存的注册凭据,或以设置模式启动
EXIT1_CREDENTIALS_PATH否注册凭据的保存位置(默认值为 ~/.exit1/credentials.json)
EXIT1_API_URL否覆盖 API 基础 URL(用于开发)

管理连接

托管连接会列在 app.exit1.dev/mcp,你可以随时在此撤销连接。撤销后,会立即使发放给该客户端的所有令牌失效。

开发

npm install
npm run build          # tsc -> dist/
npm test               # build, then drive a real MCP handshake over stdio
npm run check:catalog  # compare the tool catalog against the hosted server

npm test 会启动构建后的服务,并断言客户端实际看到的界面:工具数量、readOnlyHint / destructiveHint 注释、setup_monitoring 提示词,以及未知工具返回的是 isError 而非协议错误。第二次运行时,会在没有密钥且没有已保存凭据的情况下启动服务,并检查设置模式(列出 create_account,其他工具则说明如何获取账户)。此测试不需要 API 密钥,也不会发起网络请求。

check:catalog 存在的原因

工具目录在此软件包和托管 OAuth 服务之间刻意维护了两份;后者位于 Mopra/exit1.dev 的 functions/src/mcp-tools.ts。它们分别构建,没有共享软件包,也没有任何机制在编译时将两者关联起来。如果工具名称或输入架构不一致,npm run check:catalog 就会失败;如果措辞不同,则会发出警告。CI 会在每次推送时以及每天运行一次。

在这里修改工具,也要在那边修改——并在发布前运行检查。

若要针对本地检出版本而不是 GitHub 运行:

CATALOG_REMOTE_PATH=../exit1.dev/functions/src/mcp-tools.ts npm run check:catalog
发布
npm version patch          # or minor
npm publish                # prepublishOnly runs the build + smoke test
git push --follow-tags

将 server.json 中的 version 更新为一致的版本,然后重新发布注册表条目(见下文)。src/index.ts 中的 version 字符串是客户端在 serverInfo 中看到的版本——确保它与 package.json 保持一致。

MCP 注册表

server.json 描述了面向 官方 MCP 注册表 的两种分发方式(npm 软件包和托管端点)。注册表名称为 dev.exit1/exit1-mcp,需要证明对 exit1.dev 的控制权:

mcp-publisher login dns --domain=exit1.dev --private-key=HEX_KEY
mcp-publisher publish

npm 所有权通过 package.json 中的 mcpName 字段证明,该字段必须与 server.json 中的 name 保持一致。

快速链接

网站exit1.dev — 了解该平台仓库
监控应用app.exit1.dev — 登录并管理你的检查项仓库
文档docs.exit1.dev — 指南、API 参考和设置说明仓库
MCP 服务exit1-mcp — 本仓库仓库

也可在官方 MCP 注册表中找到,名称为 dev.exit1/exit1-mcp。

许可证

MIT — 详见 LICENSE。

exit1 的其余部分可查看源代码,但并非开源;此软件包是个例外,因此 MCP 客户端可以自由地将其纳入自身项目并检查其内容。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。