Skip to Content

PagerDuty

Description: Enable agents to read incidents, on-call info, services, and teams in PagerDuty

Author: Arcade

Auth: User authorization

PyPI VersionLicensePython VersionsWheel StatusDownloads

The PagerDuty MCP Server lets agents list and inspect incidents, on-calls, services, teams, users, schedules, log entries, and escalation policies. Follows the Linear-style docs with code snippets in Python and JavaScript.

PagerDuty tools require OAuth2 with scopes per tool (e.g., incidents.read, users.read, oncalls.read). Configure the PagerDuty auth provider and consent users before calling tools. See PagerDuty auth docs .

Available tools

Tool NameDescription
PagerDuty.WhoAmIGet the authenticated user's profile + on-call status
PagerDuty.ListIncidentsList incidents with filters
PagerDuty.GetIncidentGet a single incident by ID
PagerDuty.ListLogEntriesList account log entries (activity feed)
PagerDuty.ListEscalationPoliciesList escalation policies
PagerDuty.GetEscalationPolicyGet an escalation policy by ID
PagerDuty.ListServicesList services with optional name search
PagerDuty.GetServiceGet a service by ID
PagerDuty.ListSchedulesList schedules with on-call data
PagerDuty.ListOnCallsList on-call entries with filters
PagerDuty.ListUsersList users
PagerDuty.SearchUsersSearch users by name/email (fuzzy)
PagerDuty.ListTeamsList teams
PagerDuty.GetTeamGet a team by ID

If you need a tool that’s not listed, contact us or build your own.

  • readOnlyHint — reads data only
  • openWorldHint — calls PagerDuty’s external API
  • destructiveHint — none of these tools delete data
  • idempotentHint — repeating the same read call returns the same data

User context

PagerDuty.WhoAmI

Get the authenticated user’s profile plus current on-call info.

Parameters
None.

  • users.read, users:contact_methods.read, teams.read, oncalls.read

GET /users/me, GET /oncalls


Incident tools

PagerDuty.ListIncidents

List incidents with filters (status, urgency, services, teams, time window).

Parameters

  • status (enum, optional) Filter by status.
  • urgency (enum, optional) Filter by urgency.
  • service_ids (array, optional) Filter by service IDs.
  • team_ids (array, optional) Filter by team IDs.
  • since / until (string, optional) ISO-8601 time range.
  • limit (integer, optional) 1-50, default 10.
  • offset (integer, optional) Pagination offset.
  • incidents.read

GET /incidents


PagerDuty.GetIncident

Get a single incident by ID.

Parameters

  • incident_id (string, required) Incident ID.
  • incidents.read

GET /incidents/{id}


PagerDuty.ListLogEntries

List account log entries (activity feed).

Parameters

  • since / until (string, optional) ISO-8601 time range.
  • team_ids (array, optional) Filter by team IDs.
  • time_zone (string, optional) IANA time zone.
  • is_overview (boolean, optional) Compact mode. Default: true.
  • limit (integer, optional) 1-50. Default: 10.
  • offset (integer, optional) Pagination offset.
  • incidents.read

GET /log_entries


Escalation policy tools

PagerDuty.ListEscalationPolicies

List escalation policies.

Parameters

  • limit (integer, optional) 1-50. Default: 10.
  • offset (integer, optional) Pagination offset.
  • escalation_policies.read

GET /escalation_policies


PagerDuty.GetEscalationPolicy

Get escalation policy details.

Parameters

  • escalation_policy_id (string, required) Escalation policy ID.
  • escalation_policies.read

GET /escalation_policies/{id}


Service tools

PagerDuty.ListServices

List services (optional name search).

Parameters

  • query (string, optional) Search by name.
  • limit (integer, optional) 1-50. Default: 10.
  • offset (integer, optional) Pagination offset.
  • services.read

GET /services


PagerDuty.GetService

Get service details.

Parameters

  • service_id (string, required) Service ID.
  • services.read

GET /services/{id}


Schedule tools

PagerDuty.ListSchedules

List schedules with optional time zone and pagination.

Parameters

  • limit (integer, optional) 1-50. Default: 10.
  • offset (integer, optional) Pagination offset.
  • time_zone (string, optional) IANA time zone.
  • schedules.read, oncalls.read

GET /schedules


On-call tools

PagerDuty.ListOnCalls

List on-call entries with filters (schedule, escalation policy, team, time).

Parameters

  • schedule_ids (array, optional) Filter by schedules.
  • escalation_policy_ids (array, optional) Filter by escalation policies.
  • team_ids (array, optional) Filter by teams.
  • time_zone (string, optional) IANA time zone.
  • since / until (string, optional) ISO times.
  • limit (integer, optional) 1-50. Default: 10.
  • offset (integer, optional) Pagination offset.
  • oncalls.read, schedules.read, escalation_policies.read

GET /oncalls


User tools

PagerDuty.ListUsers

List users with pagination.

Parameters

  • limit (integer, optional) 1-50. Default: 10.
  • offset (integer, optional) Pagination offset.
  • users.read

GET /users


PagerDuty.SearchUsers

Search users by name/email (fuzzy).

Parameters

  • query (string, required) Name or email fragment.
  • auto_accept_matches (boolean, optional) Auto-accept above confidence threshold. Default: false.
  • users.read

GET /users (fuzzy match locally)


Team tools

PagerDuty.ListTeams

List teams with pagination.

Parameters

  • limit (integer, optional) 1-50. Default: 10.
  • offset (integer, optional) Pagination offset.
  • teams.read

GET /teams


PagerDuty.GetTeam

Get team details (members, linked services/policies).

Parameters

  • team_id (string, required) Team ID.
  • teams.read, users.read, escalation_policies.read, services.read

GET /teams/{id}


Auth

PagerDuty requires OAuth2. Configure the PagerDuty auth provider and request the scopes shown above per tool. Tokens are passed as Bearer auth:

PLAINTEXT
Authorization: Bearer <token>

See PagerDuty auth docs: PagerDuty API Authentication .

Last updated on

PagerDuty | Arcade Docs