remove_members_from_team
Remove users from team membership to revoke their access to team-owned records and team-based permissions when users no longer need access or change roles.
Instructions
Removes users from team membership, revoking their access to team-owned records and team-based permissions. Use this when users no longer need team access or are changing roles.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| memberIds | Yes | Array of user IDs to remove from team | |
| teamId | Yes | ID of the team to remove members from |
Implementation Reference
- src/tools/team-tools.ts:414-441 (handler)The asynchronous handler function that implements the core logic of the 'remove_members_from_team' tool by calling the Dataverse 'RemoveMembersTeam' action with the provided teamId and array of memberIds.async (params) => { try { await client.callAction('RemoveMembersTeam', { TeamId: params.teamId, MemberIds: params.memberIds }); return { content: [ { type: "text", text: `Successfully removed ${params.memberIds.length} member(s) from team.` } ] }; } catch (error) { return { content: [ { type: "text", text: `Error removing members from team: ${error instanceof Error ? error.message : 'Unknown error'}` } ], isError: true }; } } );
- src/tools/team-tools.ts:409-412 (schema)Zod input schema defining the required parameters: teamId (string) and memberIds (array of strings).inputSchema: { teamId: z.string().describe("ID of the team to remove members from"), memberIds: z.array(z.string()).describe("Array of user IDs to remove from team") }
- src/tools/team-tools.ts:404-442 (registration)The server.registerTool call that registers the 'remove_members_from_team' tool, including its name, metadata, schema, and handler.server.registerTool( "remove_members_from_team", { title: "Remove Members from Team", description: "Removes users from team membership, revoking their access to team-owned records and team-based permissions. Use this when users no longer need team access or are changing roles.", inputSchema: { teamId: z.string().describe("ID of the team to remove members from"), memberIds: z.array(z.string()).describe("Array of user IDs to remove from team") } }, async (params) => { try { await client.callAction('RemoveMembersTeam', { TeamId: params.teamId, MemberIds: params.memberIds }); return { content: [ { type: "text", text: `Successfully removed ${params.memberIds.length} member(s) from team.` } ] }; } catch (error) { return { content: [ { type: "text", text: `Error removing members from team: ${error instanceof Error ? error.message : 'Unknown error'}` } ], isError: true }; } } ); }
- src/index.ts:207-207 (registration)Call to the removeMembersFromTeamTool registration function during MCP server initialization, which triggers the tool registration.removeMembersFromTeamTool(server, dataverseClient);
- src/index.ts:71-71 (registration)Import of the removeMembersFromTeamTool function from team-tools.js.removeMembersFromTeamTool,