update_user_details
Modify user information in Alteryx servers by updating first name, last name, and email for existing users identified by their ID.
Instructions
Update details of an existing user by their ID
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| user_id | Yes | ||
| first_name | Yes | ||
| last_name | Yes | ||
| Yes |
Implementation Reference
- src/tools.py:412-445 (handler)Core handler function that implements the logic for updating user details by fetching current user info, constructing an UpdateUserContract with optional new values for first_name, last_name, email, and calling the Alteryx server API to perform the update.def update_user_details(self, user_id: str, first_name: str, last_name: str, email: str): """Update details of an existing user by their ID. Can be used to update any of the user's details.""" try: user_details = self.users_api.users_get_user(user_id) if not user_details: return "Error: User not found" contract = server_client.UpdateUserContract( id=user_details.id, first_name=first_name if first_name else user_details.first_name, last_name=last_name if last_name else user_details.last_name, email=email if email else user_details.email, role=user_details.role, default_worker_tag=user_details.default_worker_tag, can_schedule_jobs=user_details.can_schedule_jobs, can_prioritize_jobs=user_details.can_prioritize_jobs, can_assign_jobs=user_details.can_assign_jobs, can_create_collections=user_details.can_create_collections, is_api_enabled=user_details.is_api_enabled, default_credential_id=user_details.default_credential_id, is_account_locked=user_details.is_account_locked, is_active=user_details.is_active, is_validated=user_details.is_validated, time_zone=user_details.time_zone, language=user_details.language, can_create_and_update_dcm=user_details.can_create_and_update_dcm, can_share_for_execution_dcm=user_details.can_share_for_execution_dcm, can_share_for_collaboration_dcm=user_details.can_share_for_collaboration_dcm, can_manage_generic_vaults_dcm=user_details.can_manage_generic_vaults_dcm, ) api_response = self.users_api.users_update_user(user_id, contract) return pprint.pformat(api_response) except ApiException as e: return f"Error: {e}"
- src/mcp_server.py:262-270 (registration)MCP tool registration for update_user_details in the register_tools method, decorated with @self.app.tool() and delegating execution to the underlying tools.update_user_details method.def get_user_assets_by_type(user_id: str, asset_type: str): """Get user assets by type""" return self.tools.get_user_assets_by_type(user_id, asset_type) @self.app.tool() def update_user_details(user_id: str, first_name: str, last_name: str, email: str): """Update details of an existing user by their ID""" return self.tools.update_user_details(user_id, first_name, last_name, email)
- src/mcp_server.py:62-72 (helper)Documentation listing in the system prompt describing the update_user_details tool.- get_all_users: Get all users - get_user_by_id: Get a specific user - get_user_by_email: Get user by email - get_user_by_name: Get user by name - get_user_by_first_name: Get user by first name - get_all_user_assets: Get all user assets - get_user_assets_by_type: Get user assets by type - update_user_details: Update user details - transfer_all_assets: Transfer all user assets - deactivate_user: Deactivate a user - reset_user_password: Reset user password