- Home
- MCP servers
- PagerDuty
PagerDuty
- 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.