Skip to main content
Glama

PagerDuty MCP Server

by wpfleger96
"""Parser for PagerDuty services.""" from typing import Any, Dict def parse_service(*, result: Dict[str, Any]) -> Dict[str, Any]: """Parses a raw service API response into a structured format without unneeded fields. Args: result (Dict[str, Any]): The raw service API response Returns: Dict[str, Any]: A dictionary containing: - id (str): The service ID - name (str): The service name - description (str): The service description - status (str): Current status of the service - created_at (str): Creation timestamp - updated_at (str): Last update timestamp - teams (List[Dict]): List of teams with id and summary - integrations (List[Dict]): List of integrations with id and summary Note: If the input is None or not a dictionary, returns an empty dictionary. All fields are optional and will be None if not present in the input. Raises: KeyError: If accessing nested dictionary fields fails """ if not result: return {} parsed_service = {} # Simple fields simple_fields = ["id", "name", "description", "status", "created_at", "updated_at"] for field in simple_fields: value = result.get(field) if value is not None: parsed_service[field] = value # Parse teams teams = result.get("teams", []) if teams: parsed_teams = [] for team in teams: if not team: continue team_id = team.get("id") if team_id: parsed_team = {"id": team_id} if team.get("summary"): parsed_team["summary"] = team.get("summary") parsed_teams.append(parsed_team) if parsed_teams: parsed_service["teams"] = parsed_teams # Parse integrations integrations = result.get("integrations", []) if integrations: parsed_integrations = [] for integration in integrations: if not integration: continue integration_id = integration.get("id") if integration_id: parsed_integration = {"id": integration_id} if integration.get("summary"): parsed_integration["summary"] = integration.get("summary") parsed_integrations.append(parsed_integration) if parsed_integrations: parsed_service["integrations"] = parsed_integrations return parsed_service

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/wpfleger96/pagerduty-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server