There are plenty of iPhone and Android apps collecting photo tips, including composition. I think they're all pretty lame so I'm not going to link to any of them.
I don't think there's anything right now that actively analyzes a scene and gives advice, as if Scott Kelby were standing right next to you reading from the appropriate pages of one of his beginner's guide books.
An app that did recognize the scene and correlate with basic advice would be theoretically possible, but require a lot of intelligence and image processing. In many ways, this is similar to what automatic scene modes attempt to accomplish (as @dpollitt notes in a comment above), particularly in cameras which have what Pentax calls "Auto Pict" mode, where the camera selects which scene mode to use. There's several key differences, though: first, the heuristics used are very simple; second, if the mode chosen is wrong, eh, the picture may be messed up but there's no lesson mis-learned; and finally, the key point: these modes don't attempt to teach anything but rather completely remove the need to learn anything, which is easier because there's no need to explain decisions. (So, with those three points together: the decisions can be made based on something like "subject seems far away and it's dark", and it looks like the camera is making an intelligent decision to select Night Landscape, but really, it could just be misfocusing in a dark indoor party scene; the scene mode user probably doesn't even notice, but someone getting advice from an app designed to teach lessons would be confused by the message.)
To make an app that's better than that, it would take a lot of very careful coding and require many, many sample scenes. It would have to be able to quickly analyze the camera's live view for matches and provide the right advice, being careful to avoid giving mismatched suggestions. Overall, I don't think it'd be worth it. The effort to write that app would be many, many times the effort required of all interested people to just practice a bit, review their photographs carefully, and, just maybe, read a book or a website or two.
Overall, I think a smart photography app which balances programming effort with actual return would look something like this:
The genius of this particular design is that the instructive text doesn't need to be conditional on any actual image processing — it can just be on all the time. This results in a huge return on investment: minimal programming effort, and addresses 99% of composition errors in one fell swoop.