get_case_participants
Retrieve all participants for a specific Pega case to manage access and collaboration. Provides roles, permissions, and contact details for case oversight.
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 | Case ID. Example: "MYORG-APP-WORK C-1001". Complete identifier including spaces."ON6E5R-DIYRecipe-Work-RecipeCollection R-1008". a complete case identifier including spaces and special characters. | |
| sessionCredentials | No | Optional session-specific credentials. If not provided, uses environment variables. Supports two authentication modes: (1) OAuth mode - provide baseUrl, clientId, and clientSecret, or (2) Token mode - provide baseUrl and accessToken. |
Implementation Reference
- The main handler function that destructures the caseID from params, initializes session config, validates required parameters, executes the pegaClient.getCaseParticipants call within standardized error handling, and returns formatted error response if exception occurs.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 method providing the MCP tool definition including the tool name 'get_case_participants', detailed description, and input schema specifying the required 'caseID' string parameter along with optional session credentials.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: 'Case ID. Example: "MYORG-APP-WORK C-1001". Complete identifier including spaces."ON6E5R-DIYRecipe-Work-RecipeCollection R-1008". 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 router that checks if 'participants' feature is available in the current API version (V2 only), throws appropriate error if not, and delegates the getCaseParticipants call to the underlying V1/V2 client implementation.async getCaseParticipants(caseID) { if (!this.isFeatureAvailable('participants')) { this.throwUnsupportedFeatureError('participants', 'getCaseParticipants'); } return this.client.getCaseParticipants(caseID); }