# @cyanheads/devops-status-mcp-server 中文文档

规范地址：https://npmcn.com/package/%40cyanheads/devops-status-mcp-server/

版本：0\.11\.1
npm 元数据更新时间：2026-10-31T21:00:55.244Z
中文译文更新时间：2026-10-31T22:01:07.021Z
软件包许可：Apache-2\.0

本文由上游 README 机器翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40cyanheads/devops-status-mcp-server
原文对照：https://npmcn.com/package/%40cyanheads/devops-status-mcp-server/?lang=original
项目主页：https://github.com/cyanheads/devops-status-mcp-server#readme
源码仓库：https://github.com/cyanheads/devops-status-mcp-server

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：1.2 MB，203 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- Node.js 要求：\>=24\.0\.0
- 运行依赖：3 个
- 首次发布：2026-05-30T14:07:20.172Z
- 最新版本发布：2026-10-31T21:00:55.102Z
- 已发布版本数：30（近 12 个月 30 个）

## 中文简介

检查供应商状态页面，检查SSL/TLS证书，验证DNS传播，并通过MCP获得事件响应剧本。STDIO或可流HTTP。

## 安装

```sh
npm install @cyanheads/devops-status-mcp-server
```

也可以使用：`pnpm add @cyanheads/devops-status-mcp-server`、`yarn add @cyanheads/devops-status-mcp-server`、`bun add @cyanheads/devops-status-mcp-server`

## README

# @cyanheads / devops-status-mcp-server

**检查供应商状态页面，检查SSL/TLS证书，验证DNS传播，并通过MCP获得事件响应剧本。STDIO或可流HTTP。**

7工具•1资源

[![Version](https://img.shields.io/badge/Version-0.11.1-blue.svg?style=flat-square)](https://npmcn.com/package/%40cyanheads/devops-status-mcp-server/CHANGELOG.md) [![License](https://img.shields.io/badge/License-Apache%202.0-orange.svg?style=flat-square)](https://npmcn.com/package/%40cyanheads/devops-status-mcp-server/LICENSE) [![Docker](https://img.shields.io/badge/Docker-ghcr.io-2496ED?style=flat-square&logo=docker&logoColor=white)](https://github.com/users/cyanheads/packages/container/package/devops-status-mcp-server) [![MCP SDK](https://img.shields.io/badge/MCP%20SDK-%5E2.4.0-green.svg?style=flat-square)](https://modelcontextprotocol.io/) [![npm](https://img.shields.io/npm/v/@cyanheads/devops-status-mcp-server?style=flat-square&logo=npm&logoColor=white)](https://www.npmjs.com/package/@cyanheads/devops-status-mcp-server) [![TypeScript](https://img.shields.io/badge/TypeScript-%5E7.0.2-3178C6.svg?style=flat-square)](https://www.typescriptlang.org/) [![Bun](https://img.shields.io/badge/Bun-v1.4.4-blueviolet.svg?style=flat-square)](https://bun.sh/)

[![Install in Claude Desktop](https://img.shields.io/badge/Install_in-Claude_Desktop-D97757?style=for-the-badge&logo=anthropic&logoColor=white)](https://github.com/cyanheads/devops-status-mcp-server/releases/latest/download/devops-status-mcp-server.mcpb) [![Install in Cursor](https://cursor.com/deeplink/mcp-install-dark.svg)](https://cursor.com/en/install-mcp?name=devops-status-mcp-server&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIkBjeWFuaGVhZHMvZGV2b3BzLXN0YXR1cy1tY3Atc2VydmVyIl19) [![Install in VS Code](https://img.shields.io/badge/VS_Code-Install_Server-0098FF?style=for-the-badge&logo=visualstudiocode&logoColor=white)](https://vscode.dev/redirect?url=vscode:mcp/install?%7B%22name%22%3A%22devops-status-mcp-server%22%2C%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22%40cyanheads%2Fdevops-status-mcp-server%22%5D%7D)

[![Framework](https://img.shields.io/badge/Built%20on-@cyanheads/mcp--ts--core-67E8F9?style=flat-square)](https://www.npmjs.com/package/@cyanheads/mcp-ts-core)

**公共托管服务器：** [https://devops-status.caseyjhand.com/mcp](https://devops-status.caseyjhand.com/mcp)

* * *

## 概述

71家供应商的状态页面——AWS、谷歌Cloud、Azure、Slack等等——采用一种标准化格式。检查一下谁倒下了，调出事故时间线，注意你的堆栈，拿到事故应对手册。加上TLS证书和DNS检查任何域。不需要API密钥。

### 工具

| 工具 | 描述 |
| :-- | :-- |
| `devops_list_vendors` | 列出内置注册表中的供应商，可根据名称或类别进行筛选。返回标记、显示名称、类别和状态页URL。 |
| `devops_status_check` | 检查一个或多个供应商的当前运行状况。返回每个供应商指示符(`none` / `minor` / `major` / `critical` / `maintenance`)、降级组件和活动事件摘要。 |
| `devops_get_incidents` | 获取供应商的事件历史记录——活动维护、已解决维护或计划维护。返回包含每次更新主体和受影响组件的完整事件时间轴。 |
| `devops_watch_stack` | 检查指定供应商堆栈的运行状况。服务器在哪里识别调用者（stdio或HTTP） `jwt`/`oauth` 身份验证),通过 `vendors` 一次保存列表，以后调用重用它；在HTTP上 `MCP_AUTH_MODE=none` 没有什么是被保存的 `vendors` 每次通话都需要。返回总体运行状况汇总和每个供应商的详细信息。 |
| `devops_check_certs` | 通过真正的TLS握手检查一个或多个域的SSL/TLS证书运行状况。报告HTTP端口上的过期、链深度、协议版本、密码套件和HSTS存在。纯TypeScript——没有外部API。 |
| `devops_check_dns` | 解析DNS记录，并验证谷歌（8.8.8.8）、Cloudflare（1.1.1.1）和Quad9（9.9.9.9）之间一个或多个域的传播。报告每个解析器延迟和解析器差异。纯TypeScript——没有外部API。 |
| `devops_suggest_action` | 指令工具—返回定制的事件响应剧本和预先填充的后续工具调用，并给出供应商名称和可选的事件上下文。没有外部电话；完全确定的。 |

### 资源

| 资源 | 描述 |
| :-- | :-- |
| `devops-status://vendors/{name}` | 根据标签状态页URL、类别和API类型，供应商的完整注册表项。 |

所有资源数据也可以通过工具访问。完全支持纯工具代理。

* * *

## 能力的参考

### `devops_list_vendors` 工具

-   可选的自由文本 `query` （名称和符号，不区分大小写）和可选 `category`： `cloud`， `cdn-edge`， `dev-platform`， `data`， `comms`， `auth`， `monitoring`， `ai`
-   返回标识符（传递给其他工具的内容）、显示名称、类别和状态页URL；空结果携带a `notice` 说出错过了什么
-   71个内置条目，大部分在Atlassian Statuspage上； `aws`， `gcp`， `azure`， `azure-devops`， `gitlab`， `neon`， `slack`， `redis-cloud`，以及九个Datadog网站条目(`datadog` US1, `datadog-us3`， `datadog-us5`， `datadog-eu1`， `datadog-uk1`， `datadog-ap1`， `datadog-ap2`， `datadog-us1-fed`， `datadog-us2-fed`)使用本机api适配器。注册表中没有与statuspage兼容的页面通过将原始基本URL传递给其他工具来工作
-   这些Atlassian产品有自己的入口(`jira`， `confluence`， `bitbucket`， `jira-service-management`， `atlassian-compass`， `atlassian-developer`， `trello`， `opsgenie`， `atlassian-statuspage`， `atlassian-guard`）。 `atlassian` 读取伞形页面，该页面不发布组件，只发布跨产品事件；任何提供它的工具都是这样写的 `notice` 并给这些鼻涕虫命名

内置供应商注册表：

| 类别 | 供应商 |
| :-- | :-- |
| `cloud` | Digitalocean, linode, aws, gcp, azure |
| `cdn-edge` | cloudflare, akamai |
| `dev-platform` | Gitlab、github、azure-devops、npm、vercel、netlify、render、fly-io、cireci、travis-ci、snyk、atlassian、jira、confluence、bitbucket、jira-service-management、atlassian-compass、atlassian-developer、trello、figma、launchdarkly |
| `data` | Mongodb-atlas, planetscale, supabase, neon, reddiscloud, elastic, influxdb, upstash, cloudinary, segment |
| `comms` | Slack, discord, twilio, sendgrid, mailgun, hubspot, brevo, courier, loops |
| `auth` | Auth0，职员，工人，地图集守卫 |
| `monitoring` | Datadog、Datadog -us3、Datadog -us5、Datadog -eu1、Datadog -uk1、Datadog -ap1、Datadog -ap2、Datadog -us1-fed、Datadog -us2-fed、sentry、new-relic、grafna -cloud、honeycomb、opsgenie、atlassian-statuspage |
| `ai` | Openai, anthropic, elevenlabs，松果，粘在一起 |

* * *

### `devops_status_check` 工具

-   接受供应商文件(例如： `github`， `aws`)或原始的Atlassian Statuspage基础url，自由混合。每次呼叫最多可检查20个；剩下的人回来了 `deferred_vendors` 与一个 `notice` 重新发送。超过100个参赛作品已被拒绝(`invalid_arguments`）
-   `mode: "summary"` （默认）返回指示器、降级组件和活动事件； `mode: "detailed"` 添加完整的组件列表(`component_limit`（默认为50，固定为500）和定期维护窗口。 `component_filter` 匹配组件或组名称
-   一个长于 `component_limit` 页面：每个封顶供应商返回 `next_component_offset`，你把它作为 `component_offset` (应用后 `component_filter`）。 `degraded_components` 和 `active_incidents` 每一页都是完整的吗
-   一个失败的供应商永远不会阻止其他供应商（每个供应商） `error` 字段)。结果缓存60秒(`cached: true`), `summary` 计数 `operational` / `degraded` / `down` / `maintenance` / `unavailable`
-   `indicator` 是供应商自己的评级，而Statuspage页面可以将其保持在 `none` 而一个事件它评级 `minor` 或者更糟的是开放。 `summary` 把每个供应商算在两者中最差的；事件的评价 `none` 或者 `maintenance` 而预定的Windows操作系统永远不会被算作宕机
-   `nextToolSuggestions` 预填充一个 `devops_suggest_action` 打电话给每个有问题的供应商-供应商计数 `degraded` 或者 `down`

* * *

### `devops_get_incidents` 工具

-   `filter`： `all` (默认), `active`， `resolved`，或者 `scheduled` （仅限维护窗口）。 `limit` （默认20，最大50） `offset` 对于分页
-   按时间顺序返回每个更新主体的纯文本、受影响的组件名称、已解决事件的持续时间（以分钟为单位）和短链接。谷歌云和AWS事件也会发生 `affected_locations` (区域ID、名称，以及它是否仍然受到影响；在AWS上，一个区域的事件名称，或 `global`）. 每个事件都承载着 `source`： `api`，或者 `history` 对于归档记录（仅限标题、影响、时间和最终消息）
-   `since` 和 `until` （`YYYY-MM-DD`（UTC）绑定开始日期并使用 `filter: "all"` 或者 `"resolved"`； `since` 还可以读取Statuspage历史档案，最长可达24个月，超过API的最新west-50限制；一个达到这个极限的电话 `since` 被告知设置它。 `match` 保存标题、组件名称或（在谷歌云和AWS上）位置名称和id包含给定的每个空格分隔术语的事件（最多200个字符）；用标点符号连接的术语，如 `eu-central-1`，必须找到它的文字，并在其中一个顺序
-   每个表面的响应上限为64,000字节；剪页套装 `truncated: true` 和 `nextOffset`. `full_updates: true` 保持对单个超大事件的每一次更新
-   错误: `invalid_since` 和 `invalid_until` （`filter: "active"` 或者 `"scheduled"`，或者 `until` 之前 `since`）
-   过滤器中没有数据的feed返回空： `resolved` Azure, `scheduled` 适用于AWS、Azure、Azure DevOps、谷歌Cloud和Slack。历史记录很短，供应商不读取存档：AWS将已解决的事件保存几个小时，而状态则保存几个小时。io (`gitlab`， `neon`)只列出当前的事件。在那些饲料上 `since` 比返回的最老记录早，或早 `until` 没有 `since`，得到一个。 `notice` 命名提要开始的日期

* * *

### `devops_watch_stack` 工具

-   通过 `vendors` （最多20个）一次保存堆栈下 `stack_name` (1-64个字符；多个堆栈可以共存，例如： `"production"`）; 以后的调用可以省略 `vendors`． 超过20被拒绝 `stack_too_large`． 保存工作在工作室和HTTP与 `MCP_AUTH_MODE=jwt|oauth`;使用默认值 `in-memory` 存储，已保存的堆栈在重新启动后无法存活
-   在HTTP上 `MCP_AUTH_MODE=none` 没有什么是保存的：一个电话与 `vendors` 运行扫描并返回 `stack_persisted: false`和一个没有的电话 `vendors` 失败与 `vendors_required`
-   总 `health`： `all_operational` / `maintenance` / `degraded` / `partial_outage` / `major_outage` / `unknown` （无法联系到供应商），从相同的每个供应商评级中滚动 `summary`. `component_limit` 和 `nextToolSuggestions` 工作就像 `devops_status_check`;没有 `component_offset`，所以一个封顶的供应商 `next_component_offset` 仍在继续 `devops_status_check`

* * *

### `devops_check_certs` 工具

-   接受主机名，IP地址， `host:port`，或url；条目上的端口将被覆盖 `port` 443(默认)。检查前10个参赛作品（最多可接受100个）；剩下的人回来了 `deferred_domains` ,重新发送
-   报告截止日期(`warning` 在30天内， `critical` 7)，主题和san，颁发者，链深度，TLS版本（1.0和1.1标记不安全），密码套件和HTTP端口上的HSTS
-   `status: "critical"` 分隔主机名不匹配(`hostname_verification_error`)从不受信任的链(`authorization_error`）. 每个域的失败返回为 `status: "error"` 有理由 `error`
-   `timeout_ms` 每个域名有一个截止日期（最多15000个）

* * *

### `devops_check_dns` 工具

-   接受域名、url或 `host:port`;查询前10个域（最多可接受100个），然后返回其余域 `deferred_domains`． IP地址有自己的地址 `error` 行
-   对A、AAAA、CNAME、MX、TXT、NS、CAA、SOA（默认为A、AAAA、MX、TXT）并行查询谷歌（8.8.8.8）、Cloudflare（1.1.1.1）、Quad9 （9.9.9.9）
-   报告每个解析器延迟和类型差异： `partial_resolution` （一些解决方案没有回答）是一个真正的问题； `value_variation` （不同的值）对于任意cast或地理导向域是正常的
-   自定义 `resolvers` 获取公共IP字面量，查询前5个，其余的在 `deferred_resolvers`;需要私有地址和环回地址 `DEVOPS_STATUS_ALLOW_PRIVATE_TARGETS=true`. `timeout_ms` 适用于每个域和解析器（最多10000）

* * *

### `devops_suggest_action` 工具

-   接受供应商名称或显示名称，并返回针对类别定制的降价剧本，并为未识别的供应商提供通用指导
-   可选 `incident_summary`， `affected_components`, `vendor_indicator` 添加子系统部分和基于严重性的紧急性
-   `nextToolSuggestions` 预填充后续呼叫，包括证书和DNS检查时 `your_domain` 给出。与 `DEVOPS_STATUS_DISABLE_ACTIVE_PROBES=true`，引导使用手动命令(`dig`， `openssl s_client`)而不是

* * *

### `devops-status://vendors/{name}` 资源

-   返回供应商段的完整注册表项：状态页URL、类别、API类型(`statuspage`， `statusio`， `slack`， `aws`， `gcp`， `azure`， `azure-devops`， `firehydrant`， `datadog`)， `component_scope_prefix` 如供应商提供部分共享网页(`sendgrid`), `product_slugs` 在不发布组件的伞形页面(`atlassian`）
-   公开缓存1小时；同样的数据可以通过 `devops_list_vendors`

* * *

## 功能

建立在 [`@cyanheads/mcp-ts-core`](https://github.com/cyanheads/mcp-ts-core)：工作室和流的HTTP传输，可插拔的授权(`none` / `jwt` / `oauth`)、可交换存储(`in-memory`， `filesystem`， `Supabase`， `Cloudflare KV/R2/D1`)，具有可选OpenTelemetry跟踪的结构化日志记录。

DevOps-status-specific:

-   **不需要API密钥** 每个状态后端都是一个公共API；TLS和DNS使用Node.js标准库
-   71个供应商内置注册表跨八个类别；本机适配器normalize Status。io、Slack、AWS Health、谷歌Cloud、Azure、Azure DevOps、Firehydrant和Datadog放到Statuspage形状中
-   供应商编写的文本被转义，因此它被读取为数据，而不是标记；DNS记录值和证书名称呈现为代码跨度，其回读方式与解析后的完全相同
-   状态读取时的60秒内存缓存，在租户之间共享
-   `devops_watch_stack` 保存命名的供应商列表，以便重复检查和预部署扫描
-   `devops_suggest_action` 是确定性的，没有LLM采样依赖

代理技能:

-   `devops-status-guide` 介绍了如何将这些工具一起使用：状态读取可以建立什么，不能建立什么，事件历史在每个后端上到达多远，区域位于何处，以及如何诊断DNS更改或证书故障。MCP客户端从服务器读取它作为 `skill://devops-status-guide/SKILL.md`;它还包含在npm包、Docker镜像和 `.mcpb` 包和插件安装扫描它从 `skills/`.

Agent-friendly输出:

-   批处理工具永远不会让一个失败的目标阻碍其他目标；错误将作为内联返回 `error` 字段
-   `checked_at` 每个状态的结果都是检查的时间； `cached: true` 标记从缓存中读取服务的状态，该状态可以达到缓存TTL（默认为60秒）
-   固定的指示器和状态枚举(`none` / `minor` / `major` / `critical` / `maintenance`)让调用者在数据上进行分支
-   `nextToolSuggestions` 预填充来自事件上下文的后续工具参数

* * *

## 开始

连接到托管实例，不安装：

```sh
claude mcp add --transport http devops-status-mcp-server https://devops-status.caseyjhand.com/mcp
```

或者在本地运行：

```sh
claude mcp add devops-status-mcp-server -- npx -y @cyanheads/devops-status-mcp-server
```

对于其他客户端，请将此添加到MCP配置文件中：

```json
{
  "mcpServers": {
    "devops-status-mcp-server": {
      "command": "npx",
      "args": ["-y", "@cyanheads/devops-status-mcp-server"]
    }
  }
}
```

不需要API密钥。有关Docker或源代码构建，请参见 [运行服务器](https://npmcn.com/package/%40cyanheads/devops-status-mcp-server/#readme-running-the-server).

* * *

## 配置

不需要API密钥。所有环境变量都是可选的。

| 变量 | 描述 | 默认的 |
| :-- | :-- | :-- |
| `DEVOPS_STATUS_CACHE_TTL_MS` | 以毫秒为单位读取供应商状态（所有后端）的内存缓存TTL。 | `60000` |
| `DEVOPS_STATUS_FETCH_TIMEOUT_MS` | 供应商状态API调用（所有后端）的每个请求超时（以毫秒为单位）。 | `8000` |
| `DEVOPS_STATUS_CERT_TIMEOUT_MS` | 默认的 `timeout_ms` 用于 `devops_check_certs` (1000 - 15000)。 | `5000` |
| `DEVOPS_STATUS_DNS_TIMEOUT_MS` | 默认的 `timeout_ms` 用于 `devops_check_dns` (1000 - 10000)。 | `3000` |
| `DEVOPS_STATUS_ALLOW_PRIVATE_TARGETS` | 当 `true`在用户提供的状态页url上禁用SSRF保护； `devops_check_certs` 主机, `devops_check_dns` 解析器IPs。仅受信任的本地部署。 | `false` |
| `DEVOPS_STATUS_DISABLE_ACTIVE_PROBES` | 当 `true`,删除 `devops_check_dns` 和 `devops_check_certs`． 用于共享的公共实例。 | `false` |
| `MCP_TRANSPORT_TYPE` | 交通: `stdio` 或者 `http`. | `stdio` |
| `MCP_HTTP_PORT` | HTTP服务器端口号。 | `3010` |
| `MCP_SESSION_MODE` | HTTP会话处理： `stateless`， `stateful`，或者 `auto`. | `stateless` |
| `MCP_AUTH_MODE` | 身份验证模式: `none`， `jwt`，或者 `oauth`. | `none` |
| `MCP_LOG_LEVEL` | 日志级别（RFC 5424）。 | `info` |
| `LOGS_DIR` | 日志文件目录（仅限Node.js）。 | `<project-root>/logs` |
| `OTEL_ENABLED` | 启用 [OpenTelemetry仪器](https://github.com/cyanheads/mcp-ts-core/tree/main/docs/telemetry). | `false` |

一个无效的 `DEVOPS_STATUS_*` 值在命名变量时出现错误，从而停止启动。

看到 [`.env.example`](https://npmcn.com/package/%40cyanheads/devops-status-mcp-server/.env.example) 获取可选覆盖的完整列表。

* * *

## 运行服务器

### 地方发展

需要 [包子v1.4.0](https://bun.sh/) 或更高版本（或Node.js v24+）。

-   **克隆并安装：**
    
    ```sh
    git clone https://github.com/cyanheads/devops-status-mcp-server.git
    cd devops-status-mcp-server && bun install
    cp .env.example .env   # optional overrides
    ```
    
-   **构建和运行：**
    
    ```sh
    bun run rebuild
    bun run start:stdio
    # or
    bun run start:http
    ```
    
-   **运行检查和测试：**
    
    ```sh
    bun run devcheck   # Lint, format, typecheck, security
    bun run test       # Vitest test suite
    bun run lint:mcp   # Validate MCP definitions against spec
    ```
    

### 码头工人

```sh
docker run --rm -p 3010:3010 ghcr.io/cyanheads/devops-status-mcp-server:latest
```

镜像默认为HTTP传输，无状态会话模式，并记录为 `/var/log/devops-status-mcp-server`． 要从MCP客户端在演播室上运行它，使用 `"command": "docker"` 与 `"args": ["run", "-i", "--rm", "-e", "MCP_TRANSPORT_TYPE=stdio", "ghcr.io/cyanheads/devops-status-mcp-server:latest"]`． 为了在当地建设， `docker build -t devops-status-mcp-server .`;默认情况下安装OpenTelemetry对等依赖 `--build-arg OTEL_ENABLED=false` 省略它们。

* * *

## 项目结构

| 路径 | 目的 |
| :-- | :-- |
| `src/index.ts` | `createApp()` 入口点-注册工具，资源，并启动服务。 |
| `src/config/` | 特定于服务器的环境变量解析和验证。 |
| `src/mcp-server/tools/` | 工具定义(`*.tool.ts`）。 |
| `src/mcp-server/resources/` | 资源定义(`*.resource.ts`）。 |
| `src/services/cert/` | `node:tls` -TLS握手，X.509解析，过期和协议标记，遗留TLS重试，HSTS读取。 |
| `src/services/dns/` | DNS连接客户端(`node:dgram` / `node:net`)：消息编码和边界检查解码，UDP与TCP重试；多解析器扇出和传播差异检测。 |
| `src/services/statuspage/` | Statuspage公共API客户端（读取）中的共享缓存 `src/utils/cached-fetch.ts`）。 |
| `src/services/status-adapters/` | 本机api适配器(状态。io、Slack、AWS健康、谷歌云服务健康、Azure状态、Azure DevOps状态、消防栓、Datadog)、共享RSS提取器、+ `api_type` 调度，规范化为Statuspage形状。 |
| `src/services/vendor-registry/` | 从内存中加载的供应商注册表 `src/data/vendor-registry.ts`. |
| `src/data/` | 静态厂商注册表数据文件(`vendor-registry.ts`）。 |
| `src/utils/` | 共享的帮助程序——响应缓存和获取、SSRF保护、域入口规范化、html到文本、供应商文本标记转义、DNS和证书值的代码范围呈现、输入绑定通知、单词匹配。 |
| `skills/` | 发布座席技能(`devops-status-guide`)，通过MCP提供，并在npm包、Docker镜像和 `.mcpb` 包。 |
| `tests/` | 最测试镜像 `src/`. |

* * *

## 开发指南

看到 [`CLAUDE.md`](https://npmcn.com/package/%40cyanheads/devops-status-mcp-server/CLAUDE.md) 开发指南和架构规则。简而言之：

-   处理程序抛出，框架捕获——没有 `try/catch` 在工具逻辑中
-   使用 `ctx.log` 对于请求范围的日志记录， `ctx.state` 用于租户范围的存储
-   通过桶注册新的工具和资源 `src/mcp-server/*/definitions/index.ts`
-   `devops_check_certs` 和 `devops_check_dns` 只使用Node.js stdlib -不要为这些路径添加外部深度

* * *

## 贡献

问题是受欢迎的。在提交之前运行检查和测试：

```sh
bun run devcheck
bun run test
```

* * *

## 许可证

Apache-2.0 -参见 [许可证](https://npmcn.com/package/%40cyanheads/devops-status-mcp-server/LICENSE) 获取详细信息。

## 常见问题

### @cyanheads/devops-status-mcp-server 是什么？

检查供应商状态页面，检查SSL/TLS证书，验证DNS传播，并通过MCP获得事件响应剧本。STDIO或可流HTTP。

### 如何安装 @cyanheads/devops-status-mcp-server？

在项目目录运行 npm install @cyanheads/devops-status-mcp-server，或使用 pnpm add / yarn add / bun add。它还提供命令行工具 devops-status-mcp-server，可以用 npx devops-status-mcp-server 直接运行。

### @cyanheads/devops-status-mcp-server 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @cyanheads/devops-status-mcp-server 支持 ESM 还是 CommonJS？

以 ES Module 形式发布，推荐使用 import 引入。在 CommonJS 项目中，Node\.js 20\.19\+ / 22\.12\+ 可以直接 require\(\) 不含顶层 await 的 ES Module，更早的版本需要改用动态 import\(\)。

### @cyanheads/devops-status-mcp-server 需要什么版本的 Node\.js？

package\.json 的 engines 字段要求 Node\.js \>=24\.0\.0。版本不符时 npm 默认只给出警告，开启 engine-strict 后会拒绝安装。

### @cyanheads/devops-status-mcp-server 可以商用吗？

@cyanheads/devops-status-mcp-server 使用 Apache-2\.0 许可。宽松许可：允许商业使用、修改和再分发，并附带明确的专利授权；分发时需保留许可与 NOTICE 文件，修改过的文件要注明改动。以上为概括，不构成法律意见，请以许可原文为准。

### @cyanheads/devops-status-mcp-server 还在维护吗？

最新版本 0\.11\.1 发布于 2026/11/01（2 天前）；至今共发布 30 个版本，其中过去 12 个月发布了 30 个；首次发布于 2026/05/30。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

