AUTOMA-AI is a dynamic multi-agent network system built on Google's A2A (Agent-to-Agent) and Anthropic's MCP (Model Context Protocol) protocols, combining the power of LangChain, Google GenAI, and modern agent orchestration for engineering task orchestration.
This project is in its early development phase and is considered highly unstable. APIs, interfaces, and core functionality are subject to significant changes. Use for development and experimentation only.
AUTOMA-AI creates a distributed multi-agent system that enables intelligent agents to communicate, collaborate, and coordinate using industry-standard protocols. The system leverages:
- Google A2A Protocol: For agent-to-agent communication
- Anthropic MCP Protocol: For model context management
- LangChain / LangGraph: For LLM-based agent orchestration and workflow management
- Google GenAI: For AI model integration
- LangChain / LangGraph: Agent framework and orchestration
- Google GenAI: AI model integration
- Google A2A: Agent-to-agent communication protocol
- Anthropic MCP: Model context protocol implementation
- uv: Modern Python package management
- Python 3.12: Runtime environment
BEM-AI/
├── examples/ # Example engineering applications built with the foundational framework
├── automa_ai/
│ ├── agent_test/ # Test implementations and examples
│ ├── agents/ # Generic agent classes
│ │ ├── react_langgraph_agent.py # langchain/langgraph based agent
│ │ ├── agent_factor.py # Agent factory - recommend utility to initialize an agent
│ │ ├── orchestrator_agent.py # An agent that orchestrates the task workflow
│ │ └── adk_agent.py # Google ADK based agent
│ ├── client/ # Under development
│ ├── mcp_servers/ # MCP library
│ ├── network/ # Network
│ ├── common/ # Common utilities
│ └── prompt_engineering/ # Under development
├── pyproject.toml # Project configuration
├── uv.lock # Dependency lock file
└── README.md # This file
We recommend install AUTOMA-AI through PYPI:
pip install automa-aiThis will install all packages needed under automa_ai folder.
- Python 3.12+
- uv package manager
-
Clone the repository
git clone <repository-url> cd bem-ai
-
Install dependencies using uv
uv sync
-
Activate the virtual environment
uv shell
TBD
- Orchestrator: Assemble workflow, access agent card storage
- Task Memory: Task memory including shared blackboard and conversation history
- Planner: A planner agent
- Summary: A summary agent
- Specialized agents: Domain specific agents
- Agent Card Service: A RAG pipeline stores agent cards
- Tool and Resources: External tool and resource access through MCPs
Project configuration is managed through pyproject.toml. Key configuration areas include:
- Dependencies: Core and development packages
- Build System: uv-based build configuration
- Project Metadata: Version, description, and author information
- Optional: optional packages to use for UI integration and running examples.
See README
See README
TBD
- Use
uv add <package>to add new dependencies - Update
uv.lockwithuv lockafter dependency changes - Keep dependencies minimal and focused
TBD
TBD
see LICENSE
Note: This project is experimental and under active development. Use in production environments is not recommended at this time.
If you use this framework in your research or projects, please cite the following paper:
@article{xu5447218development,
title={Development of a dynamic multi-agent network for building energy modeling: A case study towards scalable and autonomous energy modeling},
author={Xu, Weili and Wan, Hanlong and Antonopoulos, Chrissi and Goel, Supriya},
journal={Available at SSRN 5447218}
}