MCP工人助理
简介
这个项目是一个简单的多代理助手,用于规划任务。它使用MCP服务器检索用户的日历、任务列表和笔记数据,以回答用户的日程安排查询。
建筑
MCP主机
堆栈
  
演示
MCP主机负责通过SSE(服务器发送事件)连接从MCP服务器检索用户数据,并处理用户查询。
它使用LangChain的多代理方法,其中不同的代理负责规划过程的不同方面(__日历_专家__ 代理人, __任务_专家__ 代理)。每个代理都可以调用MCP服务器公开的特定工具来检索必要的数据,并使用这些数据为用户生成响应。 \ 编排器代理负责协调专业代理之间的交互,并确保用户的查询得到全面解决。它还可以直接调用一些不由专业代理处理的工具(__Notes工具__).
LLM交互是通过Ollama管理的,Ollama在本地运行LLM以保持数据的私密性和安全性。MCP主机被设计为模块化和可扩展的,允许根据需要轻松添加新的代理和工具。
MCP服务器
堆栈
  
演示
MCP服务器设计用于macOS。它公开了用于检索日历事件、任务和笔记数据的工具。 它使用AppleScript与本地macOS应用程序进行交互,如 _日历_, _提醒事项_ 和 _备注_ 以获取数据。
服务器使用FastMCP构建,这使其能够同时高效地处理多个请求。
服务器在本地主机上的指定端口上侦听传入请求,并以MCP主机易于使用的格式响应请求的数据。
开始
先决条件
- 在macOS上工作(用于MCP服务器)
- Python 3.10或更高版本
- Ollama安装并设置了本地LLM(例如。,
ollama pull llama3)
安装
- 克隆存储库
- 创建虚拟环境并激活它:
python -m venv mcp-env
source mcp-env/bin/activate- 安装所需的依赖项:
pip install -r requirements.txt- 在
.env文件在/host项目目录(按照.env.example文件作为模板):
MCP_SERVER_URL=http://127.0.0.1:8000/sse
DEBUG=false
LOG=true
MODEL_NAME="model_name_here"
TEMPERATURE=0.2 # Lower temperature for more reliable tool usage
NUM_PREDICT=512 # Limit response length- 导航到
server/目录并启动MCP服务器:
cd server
python3 server.py- 导航到
host/目录并启动MCP主机:
cd host
python3 host.py- 现在,您可以通过命令行界面与助手进行交互。键入您的查询,助手将根据您的日历事件、任务和笔记为您的一天制定计划。
