A Python framework to design, configure, and deploy intelligent multi-agent systems with JSON configuration, provider independence, and zero-config bootstrapping.
pip install --upgrade git+https://github.com/mneuronico/multi-agent-system-library
Three steps. That's all it takes to go from zero to a working multi-agent system.
Define your agents, tools, and workflows in a simple JSON file — or describe them in plain English.
{
"components": [{
"type": "agent",
"name": "assistant",
"system": "You help users."
}]
}
Initialize the manager and send a message. MAS handles the LLM calls, history, and data flow.
from mas import AgentSystemManager
manager = AgentSystemManager(
config="config.json"
)
output = manager.run("Hello!")
Launch as a Telegram/WhatsApp bot with one method call, or deploy to AWS Lambda with MAWS.
# Telegram bot — one line!
manager.start_telegram_bot()
# Or deploy to AWS Lambda
# $ maws start
# $ maws update
Every MAS system is composed of four types of components that work together seamlessly.
LLM-powered reasoning nodes. They process conversation history, follow system prompts, and produce structured JSON outputs.
Execute real-world actions — API calls, database queries, file operations. Agents decide what to call; Tools make it happen.
Data transformation and loading. Processes access full message history for context-aware data manipulation.
Orchestrate components into complex workflows with branching, loops, and switch logic — like programming but in JSON.
The router makes a decision, but only inside fixed paths you define. Agents operate within strict guardrails.
All data flows through a universal block format — text, images, and audio are first-class citizens.
{
"type": "text",
"content": "What's the weather like?"
}
Build sophisticated workflows with branching, loops, and switches — all defined declaratively.
{
"type": "automation",
"sequence": [
"classifier_agent",
{
"control_flow_type": "branch",
"condition": "needs_tool",
"if_true": [
"tool_agent",
"execute_tool"
],
"if_false": [
"direct_response"
]
},
"format_output"
]
}
{
"type": "automation",
"sequence": [
"selector",
{
"control_flow_type": "switch",
"value": "action",
"cases": [
{"case": "weather",
"body": ["weather_tool"]},
{"case": "news",
"body": ["news_tool"]},
{"case": "default",
"body": ["fallback"]}
]
}
]
}
{
"type": "automation",
"sequence": [
"initializer",
{
"control_flow_type": "while",
"start_condition": "done == false",
"body": [
"worker",
"process_step",
"evaluator"
],
"end_condition": "done == true"
}
]
}
Switch between LLM providers without changing a single line of code. MAS auto-formats messages for each.
"default_models": [
{ "provider": "openai", "model": "gpt-4o" },
{ "provider": "google", "model": "gemini-2.0-flash" },
{ "provider": "groq", "model": "llama-3.3-70b" }
]
Built-in features that save you weeks of development time.
Text, images, and audio are handled natively through the block system. Send a photo to an agent just like text.
Deploy to Telegram or WhatsApp with a single method call. STT, commands, and admin tools included.
Per-user SQLite databases with automatic message management, export/import, and context-aware filtering.
7 ready-to-use tools for common integrations.
Vector database support for persistent context and knowledge across sessions.
Run heavy tasks in the background with on_update / on_complete callbacks.
Per-call USD cost calculation, usage logs, and get_cost_report() for full observability.
Define distinct personas for each agent with system prompts and specialized behaviors.
Describe what you want in plain English. MAS generates the entire system for you.
from mas import AgentSystemManager as ASM
# That's it. One line.
ASM("I want a system that summarizes YouTube videos").run(
"www.youtube.com/watch?v=dQw4w9WgXcQ"
)
From installation to a working multi-agent system in 4 simple steps.
One pip command
Define your agents
Execute your system
Launch as a bot
# Install the library
$ pip install --upgrade git+https://github.com/mneuronico/multi-agent-system-library
# Set up your API key (choose your provider)
$ echo OPENAI_API_KEY=sk-... > .env
# or GOOGLE_API_KEY, GROQ_API_KEY, ANTHROPIC_API_KEY, etc.
{
"general_parameters": {
"general_system_description": "A helpful assistant."
},
"components": [
{
"type": "agent",
"name": "router",
"system": "Classify user intent.",
"required_outputs": {
"action": "'search' or 'chat'"
},
"default_models": [
{"provider": "openai", "model": "gpt-4o-mini"}
]
},
{
"type": "agent",
"name": "responder",
"system": "You are a helpful assistant.",
"required_outputs": {
"response": "Response to the user."
}
}
]
}
from mas import AgentSystemManager
# Initialize with your config
manager = AgentSystemManager(config="config.json")
# Run the system
output = manager.run(
input="What is quantum computing?",
verbose=True
)
print(output)
# {'response': 'Quantum computing uses...'}
from mas import AgentSystemManager
manager = AgentSystemManager(config="config.json")
# Option A: Telegram bot (one line!)
manager.start_telegram_bot()
# Option B: WhatsApp bot
manager.start_whatsapp_bot()
# Option C: Deploy to AWS with MAWS
# $ pip install maws
# $ maws start && maws update
Deploy your multi-agent systems to AWS Lambda with three commands.
pip install maws
maws start
maws update
Real applications running in production, powered by MAS.
Start building in minutes. Open source, MIT licensed, and actively maintained.