When users invite friends to my application the friend gets a notification in the Facebook.
When they click this link they see a dialogue box asking them to approve my application.
How can I limit the information my app requests to almost nothing so I don’t scare away potential visitors.
I don’t want their email or friends list or to access their data at any time. I just want them to visit the site.

Ok Thanks to Changing the scope I have the dialogue down to this. Is there any way to get even less. I don’t have any code that requires permissions. My call back just extracts the request id’s.

Just don’t require authentication on your landing page. Make it so that your landing page and primary canvas page do not require authentication and potential users can browse and check information about your app and look if it is what they are looking for.
Then once they make any significant action on your app when their user information is essential to proceed you can open an authentication dialog box. You can detect whether users already authenticated or not with the help of javascript API FB.getLoginStatus method:
https://developers.facebook.com/docs/reference/javascript/FB.getLoginStatus/
hope this helps