PagerDuty

Provides an MCP server to read and write PagerDuty data via MCP-enabled clients across incidents, services, schedules, and event orchestrations.
  • typescript

37

GitHub Stars

typescript

Language

6 months ago

First Indexed

2 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "pagerduty-pagerduty-mcp-server": {
      "command": "uvx",
      "args": [
        "pagerduty-mcp",
        "--enable-write-tools"
      ],
      "env": {
        "PAGERDUTY_API_HOST": "https://api.pagerduty.com",
        "PAGERDUTY_USER_API_KEY": "${input:pagerduty-api-key}"
      }
    }
  }
}

You can manage PagerDuty data and actions directly from an MCP-enabled client by running PagerDuty’s MCP Server. It exposes a set of read and write tools that let you interact with incidents, services, schedules, event orchestrations, and more, all through MCP backends you integrate into your workflow.

How to use

Set up an MCP client to talk to PagerDuty’s MCP Server, then use your client’s command surface to list, view, or modify PagerDuty data. Start with read-only operations to explore what you can retrieve, then enable write tools if you need to create or change incidents, schedules, or orchestrations.

How to install

Prerequisites: install asdf-vm, ensure uv is installed globally, and obtain a PagerDuty User API Token.

Step by step install and run locally, using uv to run the MCP server and a Python module to host the MCP logic.

# Install tooling and dependencies (examples shown; adapt to your setup)
# Install asdf plugins for Python, Node.js, and uv
asdf plugin add python
asdf plugin add nodejs https://github.com/asdf-vm/asdf-nodejs.git
asdf plugin add uv

# Install tool versions
asdf install

# Ensure uv is globally available
uv sync

# Optionally restart terminal to pick up changes
# Run the MCP server locally (example invocation)
# Use uv to run the Python module with the enable-write-tools flag

Additional setup notes

If you plan to use the MCP server with a client like Cursor, VS Code, or Claude Desktop, you will configure a stdio-based server and provide your PagerDuty API key via environment variables.

Security and credentials

Store your PagerDuty User API Token securely. For client configurations, prefer environments that prompt you for the key or securely inject it at runtime. If a client requires embedding the key in configuration, limit access to the file and consider file permissions and encryption where possible.

Troubleshooting tips

Ensure the MCP server is running before sending commands. If you encounter issues, restart the MCP server and re-check the connection between your MCP client and PagerDuty MCP server. Verify that the API host matches your PagerDuty region (https://api.pagerduty.com or EU variant https://api.eu.pagerduty.com) and that the API key has the necessary scopes.

Available tools

get_incident

Retrieves a specific incident by its ID and returns its details.

list_incidents

Lists incidents with optional filtering such as status, urgency, or service.

manage_incidents

Updates the status, urgency, assignment, or escalation level of an incident.

create_incident

Creates a new incident in PagerDuty with the given details.

get_service

Retrieves a specific service configuration.

list_services

Lists all services in the PagerDuty account.

update_service

Updates an existing service with new settings.

create_schedule

Creates a new on-call schedule.

get_schedule

Retrieves a specific schedule.

list_schedules

Lists all schedules with optional filters.

create_schedule_override

Creates a schedule override for a user or team.

get_event_orchestration

Retrieves a specific event orchestration configuration.

list_event_orchestrations

Lists event orchestrations with optional filtering.

get_alert_grouping_setting

Retrieves a specific alert grouping setting.

list_alert_grouping_settings

Lists alert grouping settings with optional filters.

add_note_to_incident

Adds a note to an existing incident.

add_team_member

Adds a user to a team with a specific role.

list_users

Lists users in the PagerDuty account.

get_user_data

Retrieves the current user’s data.

list_teams

Lists teams in the PagerDuty account.

get_team

Retrieves a specific team.

list_team_members

Lists members of a team.

list_oncalls

Lists on-call schedules.

list_status_pages

Lists status pages with optional filtering.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational