AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
MCP verified Apache-2.0 Self-run

Devops Status Mcp Server

mcp-cyanheads-devops-status-mcp-server · by cyanheads

Check vendor status pages, inspect SSL/TLS certificates, verify DNS propagation, and get incident-response playbooks via MCP. STDIO or Streamable HTTP.

No reviews yet
0 installs
39 views
0.0% view→install

Install

$ agentstack add mcp-cyanheads-devops-status-mcp-server

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets Used
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/mcp-cyanheads-devops-status-mcp-server)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
2mo ago

Declared compatibility

Claude CodeClaude DesktopCursorWindsurf

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Devops Status Mcp Server? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

@cyanheads/devops-status-mcp-server Check vendor status pages, inspect SSL/TLS certificates, verify DNS propagation, and get incident-response playbooks via MCP. STDIO or Streamable HTTP. 7 Tools • 1 Resource

[](./CHANGELOG.md) [](./LICENSE) [](https://github.com/users/cyanheads/packages/container/package/devops-status-mcp-server) [](https://modelcontextprotocol.io/) [](https://www.npmjs.com/package/@cyanheads/devops-status-mcp-server) [](https://www.typescriptlang.org/) [](https://bun.sh/)

[](https://github.com/cyanheads/devops-status-mcp-server/releases/latest/download/devops-status-mcp-server.mcpb) [](https://cursor.com/en/install-mcp?name=devops-status-mcp-server&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIkBjeWFuaGVhZHMvZGV2b3BzLXN0YXR1cy1tY3Atc2VydmVyIl19) [](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)

[](https://www.npmjs.com/package/@cyanheads/mcp-ts-core)

Public Hosted Server: https://devops-status.caseyjhand.com/mcp


Tools

Seven tools in three capability groups — vendor status (50 built-in vendors across Atlassian Statuspage, Status.io, Slack, AWS Health, and Firehydrant backends, normalized to one shape, + raw Statuspage URL passthrough), pure-TypeScript cert/DNS checks (any domain), and incident-response guidance:

| Tool | Description | |:-----|:------------| | devops_list_vendors | List vendors in the built-in registry, optionally filtered by name or category. Returns slug, display name, category, and status page URL. | | devops_status_check | Check the current health status for one or more vendors. Returns per-vendor indicator (none / minor / major / critical), degraded components, and active incident summaries. | | devops_get_incidents | Fetch incident history for a vendor — active, resolved, or scheduled maintenance. Returns the full incident timeline with per-update bodies and affected components. | | devops_watch_stack | Check the health of a named vendor stack persisted in session state. Pass vendors once to save the list; subsequent calls reuse it. Returns an aggregate health rollup plus per-vendor detail. | | devops_check_certs | Inspect SSL/TLS certificate health for one or more domains via a real TLS handshake. Reports expiry, chain depth, protocol version, cipher suite, and HSTS presence. Pure TypeScript — no external API. | | devops_check_dns | Resolve DNS records and verify propagation for one or more domains across Google (8.8.8.8), Cloudflare (1.1.1.1), and Quad9 (9.9.9.9). Reports per-resolver latency and resolver discrepancies. Pure TypeScript — no external API. | | devops_suggest_action | Instruction tool — returns a tailored incident-response playbook and pre-filled follow-up tool calls given a vendor name and optional incident context. No external calls; fully deterministic. |

devops_list_vendors

Discover available vendors before running status checks or configuring a stack.

  • Accepts an optional free-text query (matches name and slug, case-insensitive) and an optional category filter
  • Eight categories: cloud, cdn-edge, dev-platform, data, comms, auth, monitoring, ai
  • Returns slug (what to pass to other tools), display name, category, and status page URL
  • 50 built-in entries — well-known public vendors with verified status endpoints (most on Atlassian Statuspage; aws, gitlab, neon, slack, and redis-cloud served through native-API adapters)

Built-in vendor registry:

| Category | Vendors | |:---------|:--------| | cloud | digitalocean, linode, aws | | cdn-edge | cloudflare, akamai | | dev-platform | gitlab, github, npm, vercel, netlify, render, fly-io, circleci, travis-ci, snyk, atlassian, figma, launchdarkly | | data | mongodb-atlas, planetscale, supabase, neon, redis-cloud, elastic, influxdb, upstash, cloudinary, segment | | comms | slack, discord, twilio, sendgrid, mailgun, hubspot, brevo, courier, loops | | auth | auth0, clerk, workos | | monitoring | datadog, sentry, new-relic, grafana-cloud, honeycomb | | ai | openai, anthropic, elevenlabs, pinecone, cohere |

Most registry entries are Atlassian Statuspage endpoints; aws (AWS Health Dashboard), gitlab / neon (Status.io), slack (Slack's own status API), and redis-cloud (Firehydrant) are served through adapters that normalize into the same shapes, so every tool works identically for them. GCP and Azure publish no keyless machine-readable feed and remain out of the registry — Statuspage-compatible pages can still be reached by passing a raw base URL.


devops_status_check

Batch health snapshot across one or more vendors in a single call.

  • Accepts registered vendor slugs (e.g., "github", "aws") or raw Atlassian Statuspage base URLs (e.g., "https://www.githubstatus.com") — mix freely
  • mode: "summary" (default): indicator + degraded components + active incidents
  • mode: "detailed": adds full component list and scheduled maintenance windows
  • Promise.allSettled fan-out — one failing vendor does not block the rest; errors surface inline
  • Results served from a 60-second in-memory cache; cached: true flag on each result

devops_get_incidents

Full incident timeline for a vendor with filter support.

  • filter: "all" (default): incidents plus scheduled maintenances
  • filter: "active": only incidents with status investigating / identified / monitoring
  • filter: "resolved": only fully resolved incidents
  • filter: "scheduled": only scheduled maintenance windows
  • Returns per-update bodies in chronological order, affected component names, duration in minutes (resolved incidents), and a direct shortlink to the incident page
  • Configurable limit (1–50) with offset for paging through longer history; a truncated result discloses the total and names the next offset to fetch
  • AWS exposes only currently-open events (no history feed) — filter: "resolved" and filter: "scheduled" are always empty for aws

devops_watch_stack

Named, persisted vendor stack for recurring health sweeps.

  • On the first call, provide vendors to define the stack — it is saved to tenant-scoped session state under stack_name
  • Subsequent calls can omit vendors; the saved list is reused automatically
  • Multiple stacks coexist via distinct stack_name values (e.g., "production", "data-layer")
  • Aggregate health output: all_operational / degraded / partial_outage / major_outage / unknown (a vendor could not be reached — errored vendors count as unavailable and never roll up as all_operational)
  • Note: stack state is in-memory; it does not persist across server restarts

devops_check_certs

Direct TLS handshake inspection — no external API required.

  • Accepts bare hostnames (no https:// prefix) — up to 10 per call
  • Reports: days to expiry (flagged warning at /logs` |

| OTEL_ENABLED | Enable OpenTelemetry instrumentation. | false |

See [.env.example](./.env.example) for the full list of optional overrides.


Running the server

Local development

  • Build and run:

``sh bun run rebuild bun run start:stdio # or bun run start:http ``

  • Run checks and tests:

``sh bun run devcheck # Lint, format, typecheck, security bun run test # Vitest test suite bun run lint:mcp # Validate MCP definitions against spec ``

Docker

docker build -t devops-status-mcp-server .
docker run --rm -p 3010:3010 devops-status-mcp-server

The Dockerfile defaults to HTTP transport, stateless session mode, and logs to /var/log/devops-status-mcp-server. OpenTelemetry peer dependencies are installed by default — build with --build-arg OTEL_ENABLED=false to omit them.


Project structure

| Path | Purpose | |:-----|:--------| | src/index.ts | createApp() entry point — registers tools, resources, and inits services. | | src/config/ | Server-specific environment variable parsing and validation with Zod. | | src/mcp-server/tools/ | Tool definitions (*.tool.ts). | | src/mcp-server/resources/ | Resource definitions (*.resource.ts). | | src/services/cert/ | node:tls — TLS handshake, X.509 parsing, expiry and protocol flagging. | | src/services/dns/ | node:dns — multi-resolver DNS fan-out, propagation discrepancy detection. | | src/services/statuspage/ | Statuspage public API client with 60-second in-memory cache. | | src/services/status-adapters/ | Native-API adapters (Status.io, Slack, AWS Health, Firehydrant) + api_type dispatch, normalizing into the Statuspage shapes. | | src/services/vendor-registry/ | In-memory vendor registry loaded from src/data/vendor-registry.ts. | | src/data/ | Static vendor registry data file (vendor-registry.ts). | | tests/ | Vitest tests mirroring src/. |


Development guide

See [CLAUDE.md](./CLAUDE.md) for development guidelines and architectural rules. The short version:

  • Handlers throw, framework catches — no try/catch in tool logic
  • Use ctx.log for request-scoped logging, ctx.state for tenant-scoped storage
  • Register new tools and resources via the barrels in src/mcp-server/*/definitions/index.ts
  • devops_check_certs and devops_check_dns use only Node.js stdlib — add no external deps for these paths

Contributing

Issues and pull requests are welcome. Run checks and tests before submitting:

bun run devcheck
bun run test

License

Apache-2.0 — see [LICENSE](LICENSE) for details.

Source & license

This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.