We are writing some software that will integrate with several different LMS's, of which Moodle is only one. Customers of our product should not need to interact with the LMS directly in order to create external tools.
The only way I've seen that looks possible is to directly invoke the modedit.php script which appears to create the external tool link, but that's really a brittle workaround. Alternatively, I suppose a custom-written plugin might be able to do this as well, but would also be a lot of work. I was simply wondering if there was something I'd missed. Maybe an exposed API that would do this?