带有MCP服务器的AI代理
一个交互式AI代理,利用模型上下文协议(MCP)服务器执行各种任务,包括网页浏览、Airbnb搜索和使用Blender创建3D内容。具有用户友好的控制台界面,可进行实时交互。
特性
- 🌐 网页浏览:使用Playwright进行自动网络导航和搜索
- 🏠 Airbnb集成:搜索和检索Airbnb房源详细信息
- 🎨 3D创建:使用Blender生成和操纵3D内容
- 🤖 智能代理:由Groq的快速推理LLMs提供支持
- 💬 交互式控制台:与AI代理的实时聊天界面
- 🔧 可扩展:易于添加更多MCP服务器和功能
演示
============================================================
🤖 AI Agent with MCP Servers
============================================================
Available capabilities:
🌐 Web browsing and search (Playwright)
🏠 Airbnb search and listings
🎨 3D content creation (Blender)
============================================================
Commands:
- Type your query and press Enter
- Type 'quit', 'exit', or 'q' to exit
- Type 'help' for example queries
============================================================
💬 Enter your query: Find the best restaurants in Tokyo
🔄 Processing: Find the best restaurants in Tokyo
--------------------------------------------------
✅ Result:
--------------------------------------------------
Based on my search, here are the top restaurants in Tokyo...
--------------------------------------------------
💬 Enter your query: 先决条件
- Python 3.8或更高版本
- Node.js和npm(用于MCP服务器)
- UV包管理器
- Groq API 密钥
安装
- 克隆存储库:
git clone https://github.com/yourusername/ai-agent-mcp.git
cd ai-agent-mcp- 安装Python依赖项:
uv sync- 安装MCP服务器:
# Playwright MCP server (for web browsing)
npx @playwright/mcp@latest
# Airbnb MCP server
npx -y @openbnb/mcp-server-airbnb
# Blender MCP server
uvx blender-mcp- 设置环境变量:
创建一个 .env 项目根目录中的文件:
GROQ_API_KEY=your_groq_api_key_here快速开始
- 运行交互式代理:
uv run main.py- 开始与代理聊天:
- 键入您的查询,然后按Enter键 - 使用 help 查看示例查询 - 使用 quit, exit,或 q 退出
使用示例
Web搜索查询
💬 Enter your query: Search for the latest news about artificial intelligence
💬 Enter your query: Find the weather forecast for New York City
💬 Enter your query: Navigate to GitHub and search for Python projectsAirbnb查询
💬 Enter your query: Find Airbnb listings in Paris for 2 guests under $100 per night
💬 Enter your query: Search for beachfront accommodations in Miami
💬 Enter your query: Show me luxury apartments in Tokyo for next month三维创建查询
💬 Enter your query: Create a 3D cube in Blender and take a screenshot
💬 Enter your query: Generate a simple house model in Blender
💬 Enter your query: Add a texture to a sphere in Blender控制台命令
| 命令 | 描述 |
|---|---|
help | 显示示例查询和使用提示 |
quit, exit, q | 退出应用程序 |
Ctrl+C | 紧急出口 |
| 任意文本 | 向AI代理发送查询 |
配置
MCP服务器配置在 mcp_server_config.json。您可以修改此文件以添加、删除或配置服务器:
{
"mcpServers": {
"playwright": {
"command": "npx",
"args": ["@playwright/mcp@latest"],
"env": {
"DISPLAY": ":1"
}
},
"airbnb": {
"command": "npx",
"args": ["-y", "@openbnb/mcp-server-airbnb"]
},
"blender": {
"command": "uvx",
"args": ["blender-mcp"]
}
}
}自定义LLM模型
您可以在中更改AI模型 main.py:
# Options for different use cases:
llm = ChatGroq(model="llama3-8b-8192") # Fast, good for most tasks
llm = ChatGroq(model="llama3-70b-8192") # More capable, better reasoning
llm = ChatGroq(model="llama-3.1-8b-instant") # Large context window (128K)