The controller was 100% correct. (Between you and me, sight-seeing flights are a menace!)
Seriously.. if you were planning to remain in the City Zone, which is Class D Airspace, then whilst you would have been responsible for your own separation from other VFR flights ATC has a responsibility to prevent collisions between known flights. This is usually achieved by passing traffic information. ATC instructions to VFR traffic in Class D airspace are mandatory so you're a) not operating all on your lonesome and b) someone is probably working very hard to provide you with a service for which you pay nothing.
Try spending a couple of hours at Thames Radar on a busy day......