项目简介

IsItDown MCP服务器是一个基于 Model Context Protocol (MCP) 的应用后端,它提供了一个简单易用的工具,用于检查网站是否当前宕机。该服务器通过查询 isitdownrightnow.com 网站来获取网站的实时状态,并返回网站是否可访问以及最近的宕机信息。

主要功能点

  • 网站状态检查: 提供 'get_website_status' 工具,允许用户查询指定网站的当前状态(在线或离线)。
  • 宕机信息: 返回网站的当前状态,并提供最近一次检测到的宕机信息。

安装步骤

  1. 克隆仓库: 首先,你需要从 GitHub 克隆 'mcp-server-isitdown' 仓库到你的本地计算机。在终端或命令提示符中执行以下命令:

    git clone https://github.com/hesreallyhim/mcp-server-isitdown.git
    cd mcp-server-isitdown
  2. 安装软件包: 进入仓库目录后,使用 'uv' (推荐) 或 'pip' 安装项目。推荐使用 'uv',因为它更快更高效。

    • 使用 uv (推荐):

      uv pip install -e .
    • 使用 pip:

      pip install -e .

      '-e .' 表示以可编辑模式安装当前目录的项目,这样你对代码的修改会立即生效。

服务器配置

为了让 MCP 客户端(例如 Claude Desktop)能够连接到 IsItDown MCP 服务器,你需要配置客户端的配置文件。通常,你需要编辑客户端的配置文件(例如 'claude_desktop_config.json'),添加 IsItDown 服务器的配置信息。

以下是一个 'claude_desktop_config.json' 配置文件示例,展示了如何配置 IsItDown 服务器。你需要根据你的实际安装路径进行调整。

{
  "isitdown": {
    "command": "/path/to/uv",  //  你系统中 uv 命令的完整路径。如果 uv 在你的 PATH 环境变量中,可以直接使用 "uv"。
    "args": [
      "--directory",
      "/path/to/cloned/repo/src", // 你克隆的 mcp-server-isitdown 仓库中 src 目录的完整路径。
      "run",
      "mcp_server_isitdown" //  运行 mcp_server_isitdown 模块的命令。
    ]
  }
}

注意:

  • 请将 '/path/to/uv' 替换为你实际的 'uv' 命令路径。如果你不确定,可以在终端输入 'which uv' (Linux/macOS) 或 'where uv' (Windows) 查找。如果 'uv' 已经在你的 PATH 环境变量中,你可以直接使用 '"uv"'。
  • 请将 '/path/to/cloned/repo/src' 替换为你克隆的 'mcp-server-isitdown' 仓库中 'src' 目录的实际路径。例如,如果你的仓库克隆在用户主目录下的 'mcp-server-isitdown' 文件夹中,那么路径可能类似于 '/Users/你的用户名/mcp-server-isitdown/src' (macOS/Linux) 或 'C:\Users\你的用户名\mcp-server-isitdown\src' (Windows)。

基本使用方法

  1. 启动服务器: 配置完成后,你可以通过以下命令启动 IsItDown MCP 服务器。

    • 使用安装脚本: 在终端中直接运行 'mcp-server-isitdown' 命令。确保你的 Python 环境和安装的包都在 PATH 中。

      mcp-server-isitdown
    • 使用 Python 模块: 或者,你也可以使用 Python 模块的方式运行服务器。

      python -m mcp_server_isitdown
  2. 在 MCP 客户端中使用: 服务器启动后,你就可以在支持 MCP 协议的客户端(例如 Claude Desktop)中使用它了。你可以通过自然语言指令来调用 'get_website_status' 工具,例如:

    • "wikipedia 现在宕机了吗?"
    • "reddit 上次宕机是什么时候?"

    客户端会将这些自然语言指令转换为对 IsItDown MCP 服务器的工具调用,并返回网站状态信息。

作为库使用 (开发者选项)

除了作为独立的 MCP 服务器运行,你也可以将 'mcp_server_isitdown' 作为 Python 库集成到其他项目中。你可以直接调用 'get_website_status' 函数来检查网站状态。

from mcp_server_isitdown.server import get_website_status
import asyncio

async def check_website():
    result = await get_website_status("example.com")
    print(result)

asyncio.run(check_website())

信息

分类

网页与API