使用说明
请假助理MCP
项目结构
leave-request-mcp/
├── server.py # FastMCP server — tools & in-memory DB
├── app.py # Streamlit client — chat UI + AI routing
├── .env # Environment variables (see setup below)
└── requirements.txt # Python dependencies
入门指南
1.克隆仓库
git clone https://github.com/abdallahelgabry/Leave-Request-MCP.git
cd leave-request-mcp
2.安装依赖项
pip install -r requirements.txt
3.运行MCP服务器
python server.py
服务器启动于 http://0.0.0.0:8001 使用SSE传输。
4.运行Streamlit应用程序
streamlit run app.py
MCP工具
| 工具 | 说明 |
|---|---|
get_current_date |
返回今天的日期——用于相对日期解析(例如“明天”、“下周”) |
check_leave_balance |
返回员工的年假和病假余额 |
prepare_leave_request |
在提交之前,验证并分阶段审查休假申请 |
confirm_leave_request |
在用户确认后完成并提交分阶段请求 |
测试员工ID
| ID | 姓名 | 部门 |
|---|---|---|
| EMP001 | 阿卜杜拉·埃尔加布里 | 工程 |
| EMP002 | 莱拉·扎基 | 人力资源 |
| EMP003 | 阿姆鲁·穆罕默德 | 金融 |
LangSmith的可观察性
所有交互都通过以下方式进行跟踪 朗匠,包括:
load_prompt--从LangSmith Prompt Hub获取系统提示get_mcp_tools--从MCP服务器发现工具execute_mcp_tool--单个工具执行chat_openai/chat_cohere--完整的聊天链chat_router--模型路由逻辑
集 LANGSMITH_API_KEY 和 LANGSMITH_PROJECT 在你的 .env 以启用跟踪。
对话示例
User: What's my leave balance?
Bot: You have 21 annual leave days and 10 sick leave days remaining.
User: I'd like to request 3 days of annual leave starting tomorrow.
Bot: Here's your leave request summary:
- Type: Annual
- From: 2025-02-24 to 2025-02-26
- Days: 3
- Remaining after approval: 18 days
Type 'confirm' to submit.
User: confirm
Bot: Leave request REQ1001 submitted successfully!
