There are pages on a site which you might not want to appear in a list of all the pages on your site. If you make a custom 404 error page, that really doesn't belong in a site map. If you have landing pages such as "Thank you" pages displayed for users after they submit a form those don't really need to be listed in menu lists.
In order to manage those kinds of pages with Movable Type you need a way to tell MT those are "hidden" pages and not to put them in lists of pages. One way is to use a private tag to mark the pages, and then look for that mark when you build lists in your Movable Type templates. In MT beginning an Entry Tag or a Page Tag with an at symbol (@) makes that tag private. Private tags won't be displayed in lists of tags, they are only seen by the author... or in this case the templates.
How did we do it?
As shown in the illustration, we used the tag @hidden to designate the pages we don't want showing up in menus. In templates we used code like this snippet from the Page Listing widget
<mt:Pages tag="NOT @hidden" no_folder="1" sort_by="title" sort_order="ascend">
<mt:PagesHeader>
<ul class="widget-list">
</mt:PagesHeader>
<li class="widget-list-item"><a href="<$mt:PagePermalink$>" title="<$mt:PageTitle$>"><$mt:PageTitle$></a></li>
<mt:PagesFooter>
</ul>
</mt:PagesFooter>
</mt:Pages>
The tag="NOT @hidden" attribute value pair we used is valid to modify the <mt:Entries> tag as well as <mt:Pages> tag. Although, off the top of my head, I don't know why you would want to hide an entry.