get_case_participants
Retrieve a detailed list of all participants linked to a specific Pega case, including roles, permissions, and contact information, to streamline case access management.
Instructions
Get all participants associated with a specific Pega case. Returns comprehensive list of case participants with their roles, permissions, and contact information for case access management.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| caseID | Yes | Full case handle (case ID) to retrieve participants from. Example: "ON6E5R-DIYRecipe-Work-RecipeCollection R-1008". Must be a complete case identifier including spaces and special characters. |
Implementation Reference
- The execute(params) method that serves as the main handler for the get_case_participants tool. It handles parameter destructuring, session configuration, validation, executes the Pega API call via pegaClient.getCaseParticipants(caseID), and manages error handling and response formatting.async execute(params) { const { caseID } = params; let sessionInfo = null; try { sessionInfo = this.initializeSessionConfig(params); // Validate required parameters using base class const requiredValidation = this.validateRequiredParams(params, ['caseID']); if (requiredValidation) { return requiredValidation; } // Execute with standardized error handling return await this.executeWithErrorHandling( `Case Participants: ${caseID}`, async () => await this.pegaClient.getCaseParticipants(caseID.trim()), { caseID: caseID.trim(), sessionInfo } ); } catch (error) { return { content: [{ type: 'text', text: `## Error: Case Participants: ${caseID}\n\n**Unexpected Error**: ${error.message}\n\n${sessionInfo ? `**Session**: ${sessionInfo.sessionId} (${sessionInfo.authMode} mode)\n` : ''}*Error occurred at: ${new Date().toISOString()}*` }] }; } }
- Static getDefinition() method defines the tool's metadata for the MCP protocol, including the name 'get_case_participants', description, and inputSchema specifying the required 'caseID' parameter and optional sessionCredentials.static getDefinition() { return { name: 'get_case_participants', description: 'Get all participants associated with a specific Pega case. Returns comprehensive list of case participants with their roles, permissions, and contact information for case access management.', inputSchema: { type: 'object', properties: { caseID: { type: 'string', description: 'Full case handle (case ID) to retrieve participants from. Example: "ON6E5R-DIYRecipe-Work-RecipeCollection R-1008". Must be a complete case identifier including spaces and special characters.' }, sessionCredentials: getSessionCredentialsSchema() }, required: ['caseID'] } }; }
- src/api/pega-client.js:822-827 (helper)Helper method in PegaClient class that provides the getCaseParticipants functionality, performing feature availability check before delegating to the underlying SDK client.async getCaseParticipants(caseID) { if (!this.isFeatureAvailable('participants')) { this.throwUnsupportedFeatureError('participants', 'getCaseParticipants'); } return this.client.getCaseParticipants(caseID); }