首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
首页
学习
活动
专区
圈层
工具
MCP广场
MCP广场 >详情页
Rootly-MCP-server2025-05-270分享
github
从您的集成开发环境(IDE)管理事件。一个MCP服务器,允许通过Rootly API提取事件及其相关元数据。
By Rootly-AI-Labs
2025-05-270
github
详情内容

Rootly MCP 服务器

这是一个为 Rootly API 设计的 MCP 服务器,你可以将其集成到你喜欢的 MCP 兼容编辑器中,如 Cursor、Windsurf 和 Claude。无需离开你的 IDE,即可在一分钟内解决生产事故。

演示 GIF

前提条件

  • Python 3.12 或更高版本
  • uv 包管理器
    curl -LsSf https://astral.sh/uv/install.sh | sh
    
  • Rootly API 令牌

在你的 IDE 中运行

通过我们的 PyPi 包 安装,或者克隆此仓库。

要在你喜欢的 MCP 兼容编辑器中设置(我们已在 Cursor 和 Windsurf 中测试过),以下是配置:

{
  "mcpServers": {
    "rootly": {
      "command": "uvx",
      "args": ["--from", "rootly-mcp-server", "rootly-mcp-server"],
      "env": {
        "ROOTLY_API_TOKEN": "<你的 ROOTLY_API_TOKEN>"
      }
    }
  }
}

如果你想自定义 allowed_paths 以访问更多的 Rootly API 路径,请克隆该包并使用此配置。

{
  "mcpServers": {
    "rootly": {
      "command": "uv",
      "args": [
        "run",
        "--directory",
        "/path/to/rootly-mcp-server",
        "rootly-mcp-server"
      ],
      "env": {
        "ROOTLY_API_TOKEN": "<你的 ROOTLY_API_TOKEN>"
      }
    }
  }
}

功能

该服务器基于 Rootly 的 OpenAPI(Swagger)规范动态生成 MCP 资源:

  • 基于 Rootly 的 OpenAPI 规范动态生成的 MCP 工具
  • 默认分页(10 项)用于事故端点,以防止上下文窗口溢出
  • 限制暴露给 AI 代理的 API 路径数量

白名单端点

默认情况下,以下 Rootly API 端点暴露给 AI 代理(参见 src/rootly_mcp_server/server.py 中的 allowed_paths):

/v1/incidents
/v1/incidents/{incident_id}/alerts
/v1/alerts
/v1/alerts/{alert_id}
/v1/severities
/v1/severities/{severity_id}
/v1/teams
/v1/teams/{team_id}
/v1/services
/v1/services/{service_id}
/v1/functionalities
/v1/functionalities/{functionality_id}
/v1/incident_types
/v1/incident_types/{incident_type_id}
/v1/incident_action_items
/v1/incident_action_items/{incident_action_item_id}
/v1/incidents/{incident_id}/action_items
/v1/workflows
/v1/workflows/{workflow_id}
/v1/workflow_runs
/v1/workflow_runs/{workflow_run_id}
/v1/environments
/v1/environments/{environment_id}
/v1/users
/v1/users/{user_id}
/v1/users/me
/v1/status_pages
/v1/status_pages/{status_page_id}

我们限制了暴露的 API 路径数量,原因有二:

  • 上下文大小:由于 Rootly 的 API 路径非常丰富,AI 代理可能会不堪重负,无法正确执行简单操作。
  • 安全性:如果你想限制用户通过 MCP 服务器访问的信息或操作类型

如果你想使更多路径可用,请编辑 src/rootly_mcp_server/server.py 中的 allowed_paths 变量。

关于 Rootly AI 实验室

该项目由 Rootly AI 实验室 开发。AI 实验室正在构建系统可靠性和运营卓越的未来。我们作为一个开源孵化器运作,分享想法、实验和快速原型设计。我们致力于确保我们的研究惠及整个社区。
Rootly AI 标志

开发者设置与故障排除

1. 使用 uv 安装依赖项

该项目使用 uv 进行快速依赖管理。要从你的 pyproject.toml 安装所有依赖项:

uv pip install .

2. 使用虚拟环境

建议在开发时使用虚拟环境:

uv venv .venv
source .venv/bin/activate

3. 运行测试客户端

要运行测试客户端并验证你的设置:

python test_mcp_client.py

5. 一般提示

  • 在运行脚本之前始终激活你的虚拟环境。
  • 如果你添加了新的依赖项,请使用 uv pip install <package> 以保持你的环境最新。
  • 如果遇到问题,请检查你的 Python 版本,确保其符合项目的要求。

6. 连接到我们的 MCP 服务器

你可以配置你的客户端以直接连接到我们托管的 MCP 服务器:

{
  "mcpServers": {
    "rootly": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://mcp.rootly.com/sse",
        "--header",
        "Authorization:${ROOTLY_AUTH_HEADER}"
      ],
      "env": {
        "ROOTLY_AUTH_HEADER": "Bearer <你的 ROOTLY_API_TOKEN>"
      }
    }
  }
}
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档