How to insert form into node/add page
Whether you create a custom field then modify it later, or create it completely in code, you need to use hook_form_alter in your custom module and add/edit your field that way and add the ajax call inside this function. 

If you create a custom field in config, then there's now a config dependency you will need to somehow move from your dev environment to production (either thru Features or Configuration modules). On the other hand, if you add all through your custom module you won't need to worry about config changes, so IMO that is a better way.