状态页 MCP 服务器

status_mcp 是一个提供状态页信息查询的 Ruby MCP 服务器,内置来自 awesome-status 的 1700+ 状态页目录,支持通过搜索、详情、列表和实时抓取等工具集成到 Cursor、Claude Desktop 等 MCP 兼容客户端。

  • by amkisko
  • Ruby
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 amkisko/status_mcp.rb

使用说明

status_mcp

Ruby gem providing status page information from awesome-status via MCP (Model Context Protocol) server tools. Integrates with MCP-compatible clients like Cursor IDE, Claude Desktop, and other MCP-enabled tools.

Sponsored by Kisko Labs.

Status

This project is in low-priority support / maintenance mode. Prefer status-cli for new status-page CLI and automation work. Existing installs keep working; expect security and critical fixes only, not new features.

Requirements

  • Ruby 3.4 or higher

Quick Start

gem install status_mcp

Cursor IDE Configuration

For Cursor IDE, create or update .cursor/mcp.json in your project:

{
  "mcpServers": {
    "status": {
      "command": "gem",
      "args": ["exec", "status_mcp"],
      "env": {
        "RUBY_VERSION": "3.4.7"
      }
    }
  }
}

Note: Using gem exec ensures the correct Ruby version is used.

Claude Desktop Configuration

For Claude Desktop, edit the MCP configuration file:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "status": {
      "command": "gem",
      "args": ["exec", "status_mcp"],
      "env": {
        "RUBY_VERSION": "3.4.7"
      }
    }
  }
}

Note: After updating the configuration, restart Claude Desktop for changes to take effect.

Running the MCP Server manually

After installation, you can start the MCP server immediately:

# With bundler
gem install status_mcp && bundle exec status_mcp

# Or if installed globally
status_mcp

The server will start and communicate via STDIN/STDOUT using the MCP protocol.

Features

  • Status Page Information: Access to over 1700 status page links from awesome-status
  • MCP Server Integration: Ready-to-use MCP server with tools for searching and retrieving status page details
  • Bundled catalog: Search, details, and list tools read local data from the gem
  • Live fetch: fetch_status requests the public status URL over HTTP

MCP Tools

The MCP server provides the following tools:

  1. search_services - Search for services by name

    • Parameters: query (string)
  2. get_service_details - Get detailed status links for a specific service

    • Parameters: name (string)
  3. list_services - List available services

    • Parameters: limit (optional integer, default: 50, maximum: 200)
  4. fetch_status - Fetch a public status page over HTTP and extract latest status, history, and messages

    • Parameters: status_url (string), max_length (optional integer, default: 10000, maximum: 10000)

Development

# Install dependencies
bundle install

# Run tests
bundle exec rspec

# Run tests across multiple Ruby versions
bundle exec appraisal install
bundle exec appraisal rspec

# Run linting
bundle exec standardrb --fix

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/amkisko/status_mcp.rb.

For more information, see CONTRIBUTING.md.

Security

If you discover a security vulnerability, please report it responsibly. See SECURITY.md for details.

Links

License

The gem is available as open source under the terms of the MIT License.