rootly-mcp-server


Namerootly-mcp-server JSON
Version 0.0.4 PyPI version JSON
download
home_pageNone
SummaryA Model Context Protocol server for Rootly APIs using OpenAPI spec
upload_time2025-03-18 19:38:01
maintainerNone
docs_urlNone
authorNone
requires_python>=3.12
licenseNone
keywords automation incidents llm mcp rootly
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Rootly MCP Server

A Model Context Protocol (MCP) server for Rootly API. This server dynamically generates MCP resources based on Rootly's OpenAPI (Swagger) specification.

## Features

- Dynamically generated MCP tools based on Rootly's OpenAPI specification
- Swagger specification is bundled with the package
- Automatic fetching of the latest Swagger spec if not found locally
- Authentication via Rootly API token
- Default pagination (10 items) for incidents endpoints to prevent context window overflow
- Easy integration with Claude and other MCP-compatible LLMs

## Prerequisites

- Python 3.12 or higher
- `uv` package manager
  ```bash
  curl -LsSf https://astral.sh/uv/install.sh | sh
  ```
- Rootly API token

## Setup

1. Create and activate a virtual environment:
```bash
# Create a new virtual environment
uv venv

# Activate the virtual environment
# On macOS/Linux:
source .venv/bin/activate
# On Windows:
.venv\Scripts\activate
```

2. Install the package in development mode:
```bash
# Install all dependencies
uv pip install -e .

# Install dev dependencies (optional)
uv pip install -e ".[dev]"
```

3. Set your Rootly API token:
```bash
export ROOTLY_API_TOKEN="your-api-token-here"
```

## Running the Server

Start the server:
```bash
rootly-mcp-server
```

The server will automatically:
1. Use the bundled Swagger specification that comes with the package
2. If not found in the package, look for a local `swagger.json` file in the current and parent directories
3. If still not found, download the latest Swagger spec from Rootly's servers
4. Cache the downloaded spec to `swagger.json` in the current directory for future use

You can also specify a custom Swagger file path:
```bash
rootly-mcp-server --swagger-path=/path/to/your/swagger.json
```

## MCP Configuration

The server configuration is defined in `mcp.json`. To use this server with Claude or other MCP clients, add the following configuration to your MCP configuration file:

```json
{
    "mcpServers": {
      "rootly": {
        "command": "uv",
        "args": [
          "run",
          "--directory",
          "/path/to/rootly-mcp-server",
          "rootly-mcp-server"
        ],
        "env": {
          "ROOTLY_API_TOKEN": "YOUR_ROOTLY_API_TOKEN"
        }
      }
    }
  }
```

Replace `/path/to/rootly-mcp-server` with the absolute path to your project directory.

## About the Rootly AI Labs
This project was developed by the [Rootly AI Labs](https://labs.rootly.ai/). The AI Labs is building the future of system reliability and operational excellence. We operate as an open-source incubator, sharing ideas, experimenting, and rapidly prototyping. We're committed to ensuring our research benefits the entire community.
![Rootly AI logo](https://github.com/Rootly-AI-Labs/EventOrOutage/raw/main/rootly-ai.png)


            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "rootly-mcp-server",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.12",
    "maintainer_email": null,
    "keywords": "automation, incidents, llm, mcp, rootly",
    "author": null,
    "author_email": "Rootly AI Labs <support@rootly.com>",
    "download_url": "https://files.pythonhosted.org/packages/b4/52/136c348218a188872dffd084a1825e5a6a51bf5e008a7c79f3c00ba26968/rootly_mcp_server-0.0.4.tar.gz",
    "platform": null,
    "description": "# Rootly MCP Server\n\nA Model Context Protocol (MCP) server for Rootly API. This server dynamically generates MCP resources based on Rootly's OpenAPI (Swagger) specification.\n\n## Features\n\n- Dynamically generated MCP tools based on Rootly's OpenAPI specification\n- Swagger specification is bundled with the package\n- Automatic fetching of the latest Swagger spec if not found locally\n- Authentication via Rootly API token\n- Default pagination (10 items) for incidents endpoints to prevent context window overflow\n- Easy integration with Claude and other MCP-compatible LLMs\n\n## Prerequisites\n\n- Python 3.12 or higher\n- `uv` package manager\n  ```bash\n  curl -LsSf https://astral.sh/uv/install.sh | sh\n  ```\n- Rootly API token\n\n## Setup\n\n1. Create and activate a virtual environment:\n```bash\n# Create a new virtual environment\nuv venv\n\n# Activate the virtual environment\n# On macOS/Linux:\nsource .venv/bin/activate\n# On Windows:\n.venv\\Scripts\\activate\n```\n\n2. Install the package in development mode:\n```bash\n# Install all dependencies\nuv pip install -e .\n\n# Install dev dependencies (optional)\nuv pip install -e \".[dev]\"\n```\n\n3. Set your Rootly API token:\n```bash\nexport ROOTLY_API_TOKEN=\"your-api-token-here\"\n```\n\n## Running the Server\n\nStart the server:\n```bash\nrootly-mcp-server\n```\n\nThe server will automatically:\n1. Use the bundled Swagger specification that comes with the package\n2. If not found in the package, look for a local `swagger.json` file in the current and parent directories\n3. If still not found, download the latest Swagger spec from Rootly's servers\n4. Cache the downloaded spec to `swagger.json` in the current directory for future use\n\nYou can also specify a custom Swagger file path:\n```bash\nrootly-mcp-server --swagger-path=/path/to/your/swagger.json\n```\n\n## MCP Configuration\n\nThe server configuration is defined in `mcp.json`. To use this server with Claude or other MCP clients, add the following configuration to your MCP configuration file:\n\n```json\n{\n    \"mcpServers\": {\n      \"rootly\": {\n        \"command\": \"uv\",\n        \"args\": [\n          \"run\",\n          \"--directory\",\n          \"/path/to/rootly-mcp-server\",\n          \"rootly-mcp-server\"\n        ],\n        \"env\": {\n          \"ROOTLY_API_TOKEN\": \"YOUR_ROOTLY_API_TOKEN\"\n        }\n      }\n    }\n  }\n```\n\nReplace `/path/to/rootly-mcp-server` with the absolute path to your project directory.\n\n## About the Rootly AI Labs\nThis project was developed by the [Rootly AI Labs](https://labs.rootly.ai/). The AI Labs is building the future of system reliability and operational excellence. We operate as an open-source incubator, sharing ideas, experimenting, and rapidly prototyping. We're committed to ensuring our research benefits the entire community.\n![Rootly AI logo](https://github.com/Rootly-AI-Labs/EventOrOutage/raw/main/rootly-ai.png)\n\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "A Model Context Protocol server for Rootly APIs using OpenAPI spec",
    "version": "0.0.4",
    "project_urls": {
        "Homepage": "https://github.com/Rootly-AI-Labs/Rootly-MCP-server",
        "Issues": "https://github.com/Rootly-AI-Labs/Rootly-MCP-server/issues"
    },
    "split_keywords": [
        "automation",
        " incidents",
        " llm",
        " mcp",
        " rootly"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "f93f5ea82d8d2a9bfa83c7557718851022cd91e237c09c14ec0a39334e558280",
                "md5": "56fd04310e4dc422671e4d1ba6761297",
                "sha256": "77554e54731f0097b9fbbccd2094ae0f5eea3f47d325d178290a87e74aa71d1a"
            },
            "downloads": -1,
            "filename": "rootly_mcp_server-0.0.4-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "56fd04310e4dc422671e4d1ba6761297",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.12",
            "size": 140031,
            "upload_time": "2025-03-18T19:38:00",
            "upload_time_iso_8601": "2025-03-18T19:38:00.885411Z",
            "url": "https://files.pythonhosted.org/packages/f9/3f/5ea82d8d2a9bfa83c7557718851022cd91e237c09c14ec0a39334e558280/rootly_mcp_server-0.0.4-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "b452136c348218a188872dffd084a1825e5a6a51bf5e008a7c79f3c00ba26968",
                "md5": "a1ca3c91daefa95c4da9e68c8ca9d10b",
                "sha256": "8698bc9c3adb93b080d8908e9b3a2820a19e7b696b18cde22b1ba8c2d4d26d3d"
            },
            "downloads": -1,
            "filename": "rootly_mcp_server-0.0.4.tar.gz",
            "has_sig": false,
            "md5_digest": "a1ca3c91daefa95c4da9e68c8ca9d10b",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.12",
            "size": 267940,
            "upload_time": "2025-03-18T19:38:01",
            "upload_time_iso_8601": "2025-03-18T19:38:01.909386Z",
            "url": "https://files.pythonhosted.org/packages/b4/52/136c348218a188872dffd084a1825e5a6a51bf5e008a7c79f3c00ba26968/rootly_mcp_server-0.0.4.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-03-18 19:38:01",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "Rootly-AI-Labs",
    "github_project": "Rootly-MCP-server",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "rootly-mcp-server"
}
        
Elapsed time: 0.57176s