Abstract. The Agent Modeling Language (AML) is a semi-formal visual modeling language, specified as an extension to UML 2.0. It is a consistent set of modeling constructs designed to capture the various aspects of multi-agent systems. The ultimate objective for AML is to provide a means for software engineers to incorporate aspects of multi-agent system engineering into their analysis and design processes. This paper presents an introductory overview of AML, discussing the motivations driving the development of the language, the scope and approach taken, the specific language structure and optional extensibility. The core AML modeling constructs are explained and demonstrated by example where possible. Extensions to OCL and CASE tool support are also discussed.