#!/usr/bin/env python3
"""
Standalone Agent Example
Demonstrates direct usage of MCP-MAF agent without MCP server.
Useful for testing and development.
"""
import asyncio
import sys
from pathlib import Path
# Add src to path
sys.path.insert(0, str(Path(__file__).parent.parent / "src"))
from mcp_maf import MCPMAFAgent
async def main():
"""Main function"""
print("=" * 60)
print(" MCP-MAF Standalone Agent Example")
print("=" * 60)
print()
# Create agent
print("📦 Creating agent...")
agent = MCPMAFAgent()
# Initialize agent
print("🚀 Initializing agent...")
await agent.initialize()
print()
# Test queries
test_queries = [
"What's the weather in Taipei?",
"Calculate 123 * 456",
"What's TSMC (2330) stock price?",
"What's the weather in Tokyo and calculate the temperature difference if Taipei is 25°C"
]
for i, query in enumerate(test_queries, 1):
print(f"{'=' * 60}")
print(f"Query {i}/{len(test_queries)}: {query}")
print(f"{'=' * 60}")
response = await agent.run(query)
print(f"\n{response}\n")
if i < len(test_queries):
print("Waiting 2 seconds before next query...")
await asyncio.sleep(2)
print()
# Close agent
print("=" * 60)
print("🔌 Closing agent...")
await agent.close()
print("✅ Demo complete!")
print("=" * 60)
if __name__ == "__main__":
asyncio.run(main())