This paper presents the preliminary design of the IMAGO project. This project consists of two major parts: the IMAGO Application Programming Interface (API) - an agent development kit based on Prolog, and the MLVM - a multithreading agent server framework. We focus on the IMAGO API and its communication model - a novel mechanism to automatically track down agents and deliver messages in a dynamic, changing world. Examples are given to show the expressive power and simplicity of the programming interface as well as possible applications of the proposed system.