Windows Phone provides a capabilities-driven security model where a user must opt-in to certain functionality within the application. For certain scenarios, Windows Phone APIs invoked by applications may require specific security permissions or user disclosure when run. By default, when you create a Windows Phone project, an application manifest file is auto-generated that includes a list of the all the phone capabilities supported by Windows Phone.

The Windows Phone operating system will grant security permissions to the application according to the capabilities listed in that manifest file called the Application Manifest File for Windows Phone.

Read the full article: How to: Use the Windows Phone Capability Detection Tool

Also read: Windows Phone Developer Tools