Orchestrate usage of LLMs, Tools, and RAG with a unified, robust, and production-ready framework. Built for speed and scalability.
pip install ai-parrot
Simple Chatbot interface to create agents with built-in memory, vector store
support, and conversation history management.
Use the @tool decorator, class-based AbstractToolkit, or instantly
convert OpenAPI specs into tools with OpenAPIToolkit.
Manage multi-agent workflows with AgentCrew. Support for Sequential, Parallel, Flow,
and Loop execution modes.
Native Agent-to-Agent (A2A) protocol and first-class support for Model Context Protocol (MCP).
Switch seamlessly between OpenAI, Anthropic, Google Gemini, Groq, X.AI, and Ollama without changing your code.
Give your agents agency with the @schedule decorator to run background tasks like
daily briefings or monitoring.
import asyncio
from parrot.bots import Chatbot
from parrot.tools import tool
# 1. Define a tool with type hints
@tool
def get_weather(location: str) -> str:
"""Get the current weather for a location."""
return f"The weather in {location} is Sunny, 25°C"
async def main():
# 2. Create the Agent
bot = Chatbot(
name="WeatherBot",
llm="openai:gpt-4o",
tools=[get_weather],
system_prompt="You are a helpful weather assistant."
)
# 3. Configure & Chat
await bot.configure()
response = await bot.ask("What's the weather like in Madrid?")
print(response)
if __name__ == "__main__":
asyncio.run(main())
Modular design enabling agents to act as both consumers and providers.