PagerDuty · Capability

PagerDuty API — Users

PagerDuty API — Users. 35 operations. Lead operation: PagerDuty List users. Self-contained Naftiko capability covering one Pagerduty business surface.

Run with Naftiko PagerdutyUsers

What You Can Do

GET
Listusers — PagerDuty List users
/v1/users
POST
Createuser — PagerDuty Create a user
/v1/users
GET
Getcurrentuser — PagerDuty Get the current user
/v1/users/me
GET
Getuser — PagerDuty Get a user
/v1/users/{id}
DELETE
Deleteuser — PagerDuty Delete a user
/v1/users/{id}
PUT
Updateuser — PagerDuty Update a user
/v1/users/{id}
GET
Listusersauditrecords — PagerDuty List audit records for a user
/v1/users/{id}/audit/records
GET
Getusercontactmethods — PagerDuty List a user's contact methods
/v1/users/{id}/contact-methods
POST
Createusercontactmethod — PagerDuty Create a user contact method
/v1/users/{id}/contact-methods
GET
Getusercontactmethod — PagerDuty Get a user's contact method
/v1/users/{id}/contact-methods/{contact-method-id}
DELETE
Deleteusercontactmethod — PagerDuty Delete a user's contact method
/v1/users/{id}/contact-methods/{contact-method-id}
PUT
Updateusercontactmethod — PagerDuty Update a user's contact method
/v1/users/{id}/contact-methods/{contact-method-id}
GET
Getuserlicense — PagerDuty Get the License allocated to a User
/v1/users/{id}/license
GET
Getusernotificationrules — PagerDuty List a user's notification rules
/v1/users/{id}/notification-rules
POST
Createusernotificationrule — PagerDuty Create a user notification rule
/v1/users/{id}/notification-rules
GET
Getusernotificationrule — PagerDuty Get a user's notification rule
/v1/users/{id}/notification-rules/{notification-rule-id}
DELETE
Deleteusernotificationrule — PagerDuty Delete a user's notification rule
/v1/users/{id}/notification-rules/{notification-rule-id}
PUT
Updateusernotificationrule — PagerDuty Update a user's notification rule
/v1/users/{id}/notification-rules/{notification-rule-id}
GET
Getusernotificationsubscriptions — PagerDuty List Notification Subscriptions
/v1/users/{id}/notification-subscriptions
POST
Createusernotificationsubscriptions — PagerDuty Create Notification Subcriptions
/v1/users/{id}/notification-subscriptions
POST
Unsubscribeusernotificationsubscriptions — PagerDuty Remove Notification Subscriptions
/v1/users/{id}/notification-subscriptions/unsubscribe
GET
Getuserhandoffnotificationrules — PagerDuty List a User's Handoff Notification Rules
/v1/users/{id}/oncall-handoff-notification-rules
POST
Createuserhandoffnotificationrule — PagerDuty Create a User Handoff Notification Rule
/v1/users/{id}/oncall-handoff-notification-rules
GET
Getuserhandoffnotifiactionrule — PagerDuty Get a user's handoff notification rule
/v1/users/{id}/oncall-handoff-notification-rules/{oncall-handoff-notification-rule-id}
DELETE
Deleteuserhandoffnotificationrule — PagerDuty Delete a User's Handoff Notification rule
/v1/users/{id}/oncall-handoff-notification-rules/{oncall-handoff-notification-rule-id}
PUT
Updateuserhandoffnotification — PagerDuty Update a User's Handoff Notification Rule
/v1/users/{id}/oncall-handoff-notification-rules/{oncall-handoff-notification-rule-id}
GET
Getusersessions — PagerDuty List a user's active sessions
/v1/users/{id}/sessions
DELETE
Deleteusersessions — PagerDuty Delete all user sessions
/v1/users/{id}/sessions
GET
Getusersession — PagerDuty Get a user's session
/v1/users/{id}/sessions/{type}/{session-id}
DELETE
Deleteusersession — PagerDuty Delete a user's session
/v1/users/{id}/sessions/{type}/{session-id}
GET
Getuserstatusupdatenotificationrules — PagerDuty List a user's status update notification rules
/v1/users/{id}/status-update-notification-rules
POST
Createuserstatusupdatenotificationrule — PagerDuty Create a user status update notification rule
/v1/users/{id}/status-update-notification-rules
GET
Getuserstatusupdatenotificationrule — PagerDuty Get a user's status update notification rule
/v1/users/{id}/status-update-notification-rules/{status-update-notification-rule-id}
DELETE
Deleteuserstatusupdatenotificationrule — PagerDuty Delete a user's status update notification rule
/v1/users/{id}/status-update-notification-rules/{status-update-notification-rule-id}
PUT
Updateuserstatusupdatenotificationrule — PagerDuty Update a user's status update notification rule
/v1/users/{id}/status-update-notification-rules/{status-update-notification-rule-id}

MCP Tools

pagerduty-list-users

PagerDuty List users

read-only idempotent
pagerduty-create-user

PagerDuty Create a user

pagerduty-get-current-user

PagerDuty Get the current user

read-only idempotent
pagerduty-get-user

PagerDuty Get a user

read-only idempotent
pagerduty-delete-user

PagerDuty Delete a user

idempotent
pagerduty-update-user

PagerDuty Update a user

idempotent
pagerduty-list-audit-records-user

PagerDuty List audit records for a user

read-only idempotent
pagerduty-list-user-s-contact-methods

PagerDuty List a user's contact methods

read-only idempotent
pagerduty-create-user-contact-method

PagerDuty Create a user contact method

pagerduty-get-user-s-contact-method

PagerDuty Get a user's contact method

read-only idempotent
pagerduty-delete-user-s-contact-method

PagerDuty Delete a user's contact method

idempotent
pagerduty-update-user-s-contact-method

PagerDuty Update a user's contact method

idempotent
pagerduty-get-license-allocated-user

PagerDuty Get the License allocated to a User

read-only idempotent
pagerduty-list-user-s-notification-rules

PagerDuty List a user's notification rules

read-only idempotent
pagerduty-create-user-notification-rule

PagerDuty Create a user notification rule

pagerduty-get-user-s-notification-rule

PagerDuty Get a user's notification rule

read-only idempotent
pagerduty-delete-user-s-notification-rule

PagerDuty Delete a user's notification rule

idempotent
pagerduty-update-user-s-notification-rule

PagerDuty Update a user's notification rule

idempotent
pagerduty-list-notification-subscriptions

PagerDuty List Notification Subscriptions

read-only idempotent
pagerduty-create-notification-subcriptions

PagerDuty Create Notification Subcriptions

pagerduty-remove-notification-subscriptions

PagerDuty Remove Notification Subscriptions

pagerduty-list-user-s-handoff-notification

PagerDuty List a User's Handoff Notification Rules

read-only idempotent
pagerduty-create-user-handoff-notification

PagerDuty Create a User Handoff Notification Rule

pagerduty-get-user-s-handoff-notification

PagerDuty Get a user's handoff notification rule

read-only idempotent
pagerduty-delete-user-s-handoff-notification

PagerDuty Delete a User's Handoff Notification rule

idempotent
pagerduty-update-user-s-handoff-notification

PagerDuty Update a User's Handoff Notification Rule

idempotent
pagerduty-list-user-s-active-sessions

PagerDuty List a user's active sessions

read-only idempotent
pagerduty-delete-all-user-sessions

PagerDuty Delete all user sessions

idempotent
pagerduty-get-user-s-session

PagerDuty Get a user's session

read-only idempotent
pagerduty-delete-user-s-session

PagerDuty Delete a user's session

idempotent
pagerduty-list-user-s-status-update

PagerDuty List a user's status update notification rules

read-only idempotent
pagerduty-create-user-status-update

PagerDuty Create a user status update notification rule

pagerduty-get-user-s-status-update

PagerDuty Get a user's status update notification rule

read-only idempotent
pagerduty-delete-user-s-status-update

PagerDuty Delete a user's status update notification rule

idempotent
pagerduty-update-user-s-status-update

PagerDuty Update a user's status update notification rule

idempotent

Capability Spec

pagerduty-users.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: PagerDuty API — Users
  description: 'PagerDuty API — Users. 35 operations. Lead operation: PagerDuty List users. Self-contained Naftiko capability
    covering one Pagerduty business surface.'
  tags:
  - Pagerduty
  - Users
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    PAGERDUTY_API_KEY: PAGERDUTY_API_KEY
capability:
  consumes:
  - type: http
    namespace: pagerduty-users
    baseUri: https://api.pagerduty.com
    description: PagerDuty API — Users business capability. Self-contained, no shared references.
    resources:
    - name: users
      path: /users
      operations:
      - name: listusers
        method: GET
        description: PagerDuty List users
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: createuser
        method: POST
        description: PagerDuty Create a user
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: users-me
      path: /users/me
      operations:
      - name: getcurrentuser
        method: GET
        description: PagerDuty Get the current user
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: users-id
      path: /users/{id}
      operations:
      - name: getuser
        method: GET
        description: PagerDuty Get a user
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: deleteuser
        method: DELETE
        description: PagerDuty Delete a user
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: updateuser
        method: PUT
        description: PagerDuty Update a user
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: users-id-audit-records
      path: /users/{id}/audit/records
      operations:
      - name: listusersauditrecords
        method: GET
        description: PagerDuty List audit records for a user
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: users-id-contact_methods
      path: /users/{id}/contact_methods
      operations:
      - name: getusercontactmethods
        method: GET
        description: PagerDuty List a user's contact methods
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: createusercontactmethod
        method: POST
        description: PagerDuty Create a user contact method
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: users-id-contact_methods-contact_method_id
      path: /users/{id}/contact_methods/{contact_method_id}
      operations:
      - name: getusercontactmethod
        method: GET
        description: PagerDuty Get a user's contact method
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: deleteusercontactmethod
        method: DELETE
        description: PagerDuty Delete a user's contact method
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: updateusercontactmethod
        method: PUT
        description: PagerDuty Update a user's contact method
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: users-id-license
      path: /users/{id}/license
      operations:
      - name: getuserlicense
        method: GET
        description: PagerDuty Get the License allocated to a User
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: users-id-notification_rules
      path: /users/{id}/notification_rules
      operations:
      - name: getusernotificationrules
        method: GET
        description: PagerDuty List a user's notification rules
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: createusernotificationrule
        method: POST
        description: PagerDuty Create a user notification rule
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: users-id-notification_rules-notification_rule_id
      path: /users/{id}/notification_rules/{notification_rule_id}
      operations:
      - name: getusernotificationrule
        method: GET
        description: PagerDuty Get a user's notification rule
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: deleteusernotificationrule
        method: DELETE
        description: PagerDuty Delete a user's notification rule
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: updateusernotificationrule
        method: PUT
        description: PagerDuty Update a user's notification rule
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: users-id-notification_subscriptions
      path: /users/{id}/notification_subscriptions
      operations:
      - name: getusernotificationsubscriptions
        method: GET
        description: PagerDuty List Notification Subscriptions
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: createusernotificationsubscriptions
        method: POST
        description: PagerDuty Create Notification Subcriptions
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: users-id-notification_subscriptions-unsubscribe
      path: /users/{id}/notification_subscriptions/unsubscribe
      operations:
      - name: unsubscribeusernotificationsubscriptions
        method: POST
        description: PagerDuty Remove Notification Subscriptions
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: users-id-oncall_handoff_notification_rules
      path: /users/{id}/oncall_handoff_notification_rules
      operations:
      - name: getuserhandoffnotificationrules
        method: GET
        description: PagerDuty List a User's Handoff Notification Rules
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: createuserhandoffnotificationrule
        method: POST
        description: PagerDuty Create a User Handoff Notification Rule
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: users-id-oncall_handoff_notification_rules-oncall_handoff_notification_rule_id
      path: /users/{id}/oncall_handoff_notification_rules/{oncall_handoff_notification_rule_id}
      operations:
      - name: getuserhandoffnotifiactionrule
        method: GET
        description: PagerDuty Get a user's handoff notification rule
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: deleteuserhandoffnotificationrule
        method: DELETE
        description: PagerDuty Delete a User's Handoff Notification rule
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: updateuserhandoffnotification
        method: PUT
        description: PagerDuty Update a User's Handoff Notification Rule
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: users-id-sessions
      path: /users/{id}/sessions
      operations:
      - name: getusersessions
        method: GET
        description: PagerDuty List a user's active sessions
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: deleteusersessions
        method: DELETE
        description: PagerDuty Delete all user sessions
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: users-id-sessions-type-session_id
      path: /users/{id}/sessions/{type}/{session_id}
      operations:
      - name: getusersession
        method: GET
        description: PagerDuty Get a user's session
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: deleteusersession
        method: DELETE
        description: PagerDuty Delete a user's session
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: users-id-status_update_notification_rules
      path: /users/{id}/status_update_notification_rules
      operations:
      - name: getuserstatusupdatenotificationrules
        method: GET
        description: PagerDuty List a user's status update notification rules
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: createuserstatusupdatenotificationrule
        method: POST
        description: PagerDuty Create a user status update notification rule
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: users-id-status_update_notification_rules-status_update_notification_rule_id
      path: /users/{id}/status_update_notification_rules/{status_update_notification_rule_id}
      operations:
      - name: getuserstatusupdatenotificationrule
        method: GET
        description: PagerDuty Get a user's status update notification rule
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: deleteuserstatusupdatenotificationrule
        method: DELETE
        description: PagerDuty Delete a user's status update notification rule
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: updateuserstatusupdatenotificationrule
        method: PUT
        description: PagerDuty Update a user's status update notification rule
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    authentication:
      type: apikey
      key: Authorization
      value: '{{env.PAGERDUTY_API_KEY}}'
      placement: header
  exposes:
  - type: rest
    namespace: pagerduty-users-rest
    port: 8080
    description: REST adapter for PagerDuty API — Users. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/users
      name: users
      description: REST surface for users.
      operations:
      - method: GET
        name: listusers
        description: PagerDuty List users
        call: pagerduty-users.listusers
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createuser
        description: PagerDuty Create a user
        call: pagerduty-users.createuser
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/users/me
      name: users-me
      description: REST surface for users-me.
      operations:
      - method: GET
        name: getcurrentuser
        description: PagerDuty Get the current user
        call: pagerduty-users.getcurrentuser
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/users/{id}
      name: users-id
      description: REST surface for users-id.
      operations:
      - method: GET
        name: getuser
        description: PagerDuty Get a user
        call: pagerduty-users.getuser
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deleteuser
        description: PagerDuty Delete a user
        call: pagerduty-users.deleteuser
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: updateuser
        description: PagerDuty Update a user
        call: pagerduty-users.updateuser
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/users/{id}/audit/records
      name: users-id-audit-records
      description: REST surface for users-id-audit-records.
      operations:
      - method: GET
        name: listusersauditrecords
        description: PagerDuty List audit records for a user
        call: pagerduty-users.listusersauditrecords
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/users/{id}/contact-methods
      name: users-id-contact-methods
      description: REST surface for users-id-contact_methods.
      operations:
      - method: GET
        name: getusercontactmethods
        description: PagerDuty List a user's contact methods
        call: pagerduty-users.getusercontactmethods
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createusercontactmethod
        description: PagerDuty Create a user contact method
        call: pagerduty-users.createusercontactmethod
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/users/{id}/contact-methods/{contact-method-id}
      name: users-id-contact-methods-contact-method-id
      description: REST surface for users-id-contact_methods-contact_method_id.
      operations:
      - method: GET
        name: getusercontactmethod
        description: PagerDuty Get a user's contact method
        call: pagerduty-users.getusercontactmethod
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deleteusercontactmethod
        description: PagerDuty Delete a user's contact method
        call: pagerduty-users.deleteusercontactmethod
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: updateusercontactmethod
        description: PagerDuty Update a user's contact method
        call: pagerduty-users.updateusercontactmethod
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/users/{id}/license
      name: users-id-license
      description: REST surface for users-id-license.
      operations:
      - method: GET
        name: getuserlicense
        description: PagerDuty Get the License allocated to a User
        call: pagerduty-users.getuserlicense
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/users/{id}/notification-rules
      name: users-id-notification-rules
      description: REST surface for users-id-notification_rules.
      operations:
      - method: GET
        name: getusernotificationrules
        description: PagerDuty List a user's notification rules
        call: pagerduty-users.getusernotificationrules
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createusernotificationrule
        description: PagerDuty Create a user notification rule
        call: pagerduty-users.createusernotificationrule
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/users/{id}/notification-rules/{notification-rule-id}
      name: users-id-notification-rules-notification-rule-id
      description: REST surface for users-id-notification_rules-notification_rule_id.
      operations:
      - method: GET
        name: getusernotificationrule
        description: PagerDuty Get a user's notification rule
        call: pagerduty-users.getusernotificationrule
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deleteusernotificationrule
        description: PagerDuty Delete a user's notification rule
        call: pagerduty-users.deleteusernotificationrule
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: updateusernotificationrule
        description: PagerDuty Update a user's notification rule
        call: pagerduty-users.updateusernotificationrule
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/users/{id}/notification-subscriptions
      name: users-id-notification-subscriptions
      description: REST surface for users-id-notification_subscriptions.
      operations:
      - method: GET
        name: getusernotificationsubscriptions
        description: PagerDuty List Notification Subscriptions
        call: pagerduty-users.getusernotificationsubscriptions
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createusernotificationsubscriptions
        description: PagerDuty Create Notification Subcriptions
        call: pagerduty-users.createusernotificationsubscriptions
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/users/{id}/notification-subscriptions/unsubscribe
      name: users-id-notification-subscriptions-unsubscribe
      description: REST surface for users-id-notification_subscriptions-unsubscribe.
      operations:
      - method: POST
        name: unsubscribeusernotificationsubscriptions
        description: PagerDuty Remove Notification Subscriptions
        call: pagerduty-users.unsubscribeusernotificationsubscriptions
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/users/{id}/oncall-handoff-notification-rules
      name: users-id-oncall-handoff-notification-rules
      description: REST surface for users-id-oncall_handoff_notification_rules.
      operations:
      - method: GET
        name: getuserhandoffnotificationrules
        description: PagerDuty List a User's Handoff Notification Rules
        call: pagerduty-users.getuserhandoffnotificationrules
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createuserhandoffnotificationrule
        description: PagerDuty Create a User Handoff Notification Rule
        call: pagerduty-users.createuserhandoffnotificationrule
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/users/{id}/oncall-handoff-notification-rules/{oncall-handoff-notification-rule-id}
      name: users-id-oncall-handoff-notification-rules-oncall-handoff-notification-rule-id
      description: REST surface for users-id-oncall_handoff_notification_rules-oncall_handoff_notification_rule_id.
      operations:
      - method: GET
        name: getuserhandoffnotifiactionrule
        description: PagerDuty Get a user's handoff notification rule
        call: pagerduty-users.getuserhandoffnotifiactionrule
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deleteuserhandoffnotificationrule
        description: PagerDuty Delete a User's Handoff Notification rule
        call: pagerduty-users.deleteuserhandoffnotificationrule
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: updateuserhandoffnotification
        description: PagerDuty Update a User's Handoff Notification Rule
        call: pagerduty-users.updateuserhandoffnotification
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/users/{id}/sessions
      name: users-id-sessions
      description: REST surface for users-id-sessions.
      operations:
      - method: GET
        name: getusersessions
        description: PagerDuty List a user's active sessions
        call: pagerduty-users.getusersessions
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deleteusersessions
        description: PagerDuty Delete all user sessions
        call: pagerduty-users.deleteusersessions
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/users/{id}/sessions/{type}/{session-id}
      name: users-id-sessions-type-session-id
      description: REST surface for users-id-sessions-type-session_id.
      operations:
      - method: GET
        name: getusersession
        description: PagerDuty Get a user's session
        call: pagerduty-users.getusersession
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deleteusersession
        description: PagerDuty Delete a user's session
        call: pagerduty-users.deleteusersession
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/users/{id}/status-update-notification-rules
      name: users-id-status-update-notification-rules
      description: REST surface for users-id-status_update_notification_rules.
      operations:
      - method: GET
        name: getuserstatusupdatenotificationrules
        description: PagerDuty List a user's status update notification rules
        call: pagerduty-users.getuserstatusupdatenotificationrules
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createuserstatusupdatenotificationrule
        description: PagerDuty Create a user status update notification rule
        call: pagerduty-users.createuserstatusupdatenotificationrule
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/users/{id}/status-update-notification-rules/{status-update-notification-rule-id}
      name: users-id-status-update-notification-rules-status-update-notification-rule-id
      description: REST surface for users-id-status_update_notification_rules-status_update_notification_rule_id.
      operations:
      - method: GET
        name: getuserstatusupdatenotificationrule
        description: PagerDuty Get a user's status update notification rule
        call: pagerduty-users.getuserstatusupdatenotificationrule
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deleteuserstatusupdatenotificationrule
        description: PagerDuty Delete a user's status update notification rule
        call: pagerduty-users.deleteuserstatusupdatenotificationrule
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: updateuserstatusupdatenotificationrule
        description: PagerDuty Update a user's status update notification rule
        call: pagerduty-users.updateuserstatusupdatenotificationrule
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: pagerduty-users-mcp
    port: 9090
    transport: http
    description: MCP adapter for PagerDuty API — Users. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: pagerduty-list-users
      description: PagerDuty List users
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: pagerduty-users.listusers
      outputParameters:
      - type: object
        mapping: $.
    - name: pagerduty-create-user
      description: PagerDuty Create a user
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: pagerduty-users.createuser
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: pagerduty-get-current-user
      description: PagerDuty Get the current user
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: pagerduty-users.getcurrentuser
      outputParameters:
      - type: object
        mapping: $.
    - name: pagerduty-get-user
      description: PagerDuty Get a user
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: pagerduty-users.getuser
      outputParameters:
      - type: object
        mapping: $.
    - name: pagerduty-delete-user
      description: PagerDuty Delete a user
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: pagerduty-users.deleteuser
      outputParameters:
      - type: object
        mapping: $.
    - name: pagerduty-update-user
      description: PagerDuty Update a user
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: pagerduty-users.updateuser
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: pagerduty-list-audit-records-user
      description: PagerDuty List audit records for a user
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: pagerduty-users.listusersauditrecords
      outputParameters:
      - type: object
        mapping: $.
    - name: pagerduty-list-user-s-contact-methods
      description: PagerDuty List a user's contact methods
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: pagerduty-users.getusercontactmethods
      outputParameters:
      - type: object
        mapping: $.
    - name: pagerduty-create-user-contact-method
      description: PagerDuty Create a user contact method
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: pagerduty-users.createusercontactmethod
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: pagerduty-get-user-s-contact-method
      description: PagerDuty Get a user's contact method
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: pagerduty-users.getusercontactmethod
      outputParameters:
      - type: object
        mapping: $.
    - name: pagerduty-delete-user-s-contact-method
      description: PagerDuty Delete a user's contact method
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: pagerduty-users.deleteusercontactmethod
      outputParameters:
      - type: object
        mapping: $.
    - name: pagerduty-update-user-s-contact-method
      description: PagerDuty Update a user's contact method
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: pagerduty-users.updateusercontactmethod
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: pagerduty-get-license-allocated-user
      description: PagerDuty Get the License allocated to a User
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: pagerduty-users.getuserlicense
      outputParameters:
      - type: object
        mapping: $.
    - name: pagerduty-list-user-s-notification-rules
      description: PagerDuty List a user's notification rules
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: pagerduty-users.getusernotificationrules
      outputParameters:
      - type: object
        mapping: $.
    - name: pagerduty-create-user-notification-rule
      description: PagerDuty Create a user notification rule
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: pagerduty-users.createusernotificationrule
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: pagerduty-get-user-s-notification-rule
      description: PagerDuty Get a user's notification rule
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: pagerduty-users.getusernotificationrule
      outputParameters:
      - type: object
        mapping: $.
    - name: pagerduty-delete-user-s-notification-rule
      description: PagerDuty Delete a user's notification rule
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: pagerduty-users.deleteusernotificationrule
      outputParameters:
      - type: object
        mapping: $.
    - name: pagerduty-update-user-s-notification-rule
      description: PagerDuty Update a user's notification rule
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: pagerduty-users.updateusernotificationrule
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: pagerduty-list-notification-subscriptions
      description: PagerDuty List Notification Subscriptions
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: pagerduty-users.getusernotificationsubscriptions
      outputParameters:
      - type: object
        mapping: $.
    - name: pagerduty-create-notification-subcriptions
      description: PagerDuty Create Notification Subcriptions
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: pagerduty-users.createusernotificationsubscriptions
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: pagerduty-remove-notification-subscriptions
      description: PagerDuty Remove Notification Subscriptions
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: pagerduty-users.unsubscribeusernotificationsubscriptions
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: pagerduty-list-user-s-handoff-notificati

# --- truncated at 32 KB (36 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/pagerduty/refs/heads/main/capabilities/pagerduty-users.yaml