使用说明
MCP代理演示(OpenRouter)
该项目展示了一个由 OpenRouter(Meta Llama 3.3) 使用 模型上下文协议(MCP) 访问外部工具(天气和网络搜索)。
🚀 如何跑步
1.运行AI代理(主)
这将使用以下命令运行交互式代理 uvicorn 为FastAPI后端提供服务。
uv run uvicorn main:app
服务器将在以下时间启动 http://127.0.0.1:8000.
您可以通过 /chat 终点。
2.运行工具测试仪(调试)
这将运行一个简单的脚本来验证工具是否正常工作,而无需调用LLM。
uv run mcp_client.py
⚙️ 配置
环境变量从以下位置加载 .env:
openrouter_api_key:LLM(OpenRouter)需要。OPENWEATHER_API_KEY:需要天气数据。TAVILY_API_KEY:网络搜索需要。LANGFUSE_PUBLIC_KEY:Langfuse可观察性要求。LANGFUSE_SECRET_KEY:Langfuse可观察性要求。LANGFUSE_HOST:Langfuse主机(例如。,https://cloud.langfuse.com).
🔍 可观测性
与集成 浪伏 提供代理执行和工具调用的完整跟踪。
- 关机时会自动清除痕迹。
- 访问您的Langfuse仪表板查看痕迹。
📝 组件
main.py:FastAPI应用程序通过HTTP端点为代理提供服务(例如。,/chat).gemini_agent.py:核心逻辑。初始化OpenRouter客户端,通过Stdio连接到MCP服务器,并管理会话循环。mcp_server.py:定义工具(get_weather,web_search)使用mcp图书馆。mcp_client.py:用于验证工具功能的独立测试脚本。
