stuffmatic/fSpy-Blender ? reverse-engineered prompt

Reverse engineered prompt

Build me a Blender add on that imports fSpy project files and creates a matching camera in the scene.

I want it to feel like a normal Blender import option, so after installing it from a zip file, I can enable it in preferences and then pick fSpy from the Import menu. When I choose an fSpy project, it should make a camera with the same name as the project file, and if I import the same file again it should be able to update the existing camera instead of always creating a new one. If the project includes an image, give me the option to use that as the camera background too.

Please make it work smoothly in Blender 2.80 and newer, and keep the import settings easy to understand in the file browser. If you need to check anything in current Blender docs or API details, look that up online first.