Skip to main content
Glama
marco-looy
by marco-looy

delete_case_follower

Remove a user from following a case to stop their notifications and updates about that case.

Instructions

Remove a follower from a case, ending their subscription to case notifications and updates. Removes the follower association between case and user.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
caseIDYesCase ID. Example: "MYORG-APP-WORK C-1001". Complete identifier including spaces."OSIEO3-DOCSAPP-WORK T-561003". a complete case identifier including spaces and special characters.
followerIDYesUser ID of the follower to remove from the case. This is the unique identifier for the user in the Pega system who will no longer follow the case.
sessionCredentialsNoOptional 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 execute method of DeleteCaseFollowerTool class that implements the tool's core logic: validates parameters, initializes session, and calls pegaClient.deleteCaseFollower with error handling.
    async execute(params) { const { caseID, followerID } = params; let sessionInfo = null; try { sessionInfo = this.initializeSessionConfig(params); // Validate required parameters using base class const requiredValidation = this.validateRequiredParams(params, ['caseID', 'followerID']); if (requiredValidation) { return requiredValidation; } // Execute with standardized error handling return await this.executeWithErrorHandling( `Delete Case Follower: ${caseID} - ${followerID}`, async () => await this.pegaClient.deleteCaseFollower(caseID.trim(), followerID.trim()), { sessionInfo } ); } catch (error) { return { content: [{ type: 'text', text: `## Error: Delete Case Follower: ${caseID} - ${followerID}\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 providing the tool name, description, and input schema validation for the delete_case_follower tool.
    return { name: 'delete_case_follower', description: 'Remove a follower from a case, ending their subscription to case notifications and updates. Removes the follower association between case and user.', inputSchema: { type: 'object', properties: { caseID: { type: 'string', description: 'Case ID. Example: "MYORG-APP-WORK C-1001". Complete identifier including spaces."OSIEO3-DOCSAPP-WORK T-561003". a complete case identifier including spaces and special characters.' }, followerID: { type: 'string', description: 'User ID of the follower to remove from the case. This is the unique identifier for the user in the Pega system who will no longer follow the case.' }, sessionCredentials: getSessionCredentialsSchema() }, required: ['caseID', 'followerID'] } }; }
  • PegaClient method that checks if the followers feature is available and delegates the deleteCaseFollower call to the underlying SDK client.
    async deleteCaseFollower(caseID, followerID) { if (!this.isFeatureAvailable('followers')) { this.throwUnsupportedFeatureError('followers', 'deleteCaseFollower'); } return this.client.deleteCaseFollower(caseID, followerID); }

Latest Blog Posts

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/marco-looy/pega-dx-mcp'

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