Entiendo, quieres usar AMI como disparador de una llamada y luego pasar el control al AGI. Es un pattern muy usado.
Sin entrar en detalles de implementación, lo que has visto en las llamadas de AGI que hacen referencias a una URL, no es un webservice sino lo que te comentaba antes, un FastAGI. Es bastante más rudimentario que un webservice. Es una conexión via TCP similar a los viejos CGIs de apache y los parámetros se pasan de forma similar.
Si vas a usar FastAGI[1], necesitas un FastAGI server donde recibirás la llamada del AGI y tomarás control. No tiene mucho sentido tenerlo en la misma máquina, aunque puedes hacerlo claro.
Entonces, cuando usas AGI, usas su forma de enviar comandos [2] y recibir mensajes. Es serial y bloqueante por defecto, por lo que si se necesita algún tipo de control de estado entre comandos, hay que usar AMI en paralelo.
Mis 2 centavos... ordena todo bien y separa las funciones en contextos de dialplan y AGIs específicos. Evita el "mega-AGI-que-todo-lo-hace"... ahorrate esos dolores de cabeza.
Y claro, todo con una pizca de sal, porque no conozco su aplicación.
Suerte!
[2]
https://wiki.asterisk.org/wiki/display/AST/Asterisk+20+AGI+Commands