假期管理服务器

一个基于JWT认证和HTTP流传输的假期管理服务器,提供假期申请、流程推进和状态查询等功能。

  • by grifotech
  • JavaScript
  • 本地部署
  • 更新于
在 GitHub 查看 grifotech/mcp-server-vacation

使用说明

MCP 假期服务器

MCP(模型上下文协议)服务器,用于带JWT认证的假期管理,支持可流式传输的HTTP。

🚀 如何运行

1. 安装依赖项

npm install

2. 项目构建

npm run build

3. 运行服务器

npm start
# ou
node build/index.js --port=3001

服务器将在 http://localhost:3001

🧪 如何测试

基本测试(无需认证)

node test-server.js

与MCP客户进行测试

node test-client.js

使用curl进行测试

# Inicializar conexão MCP
curl -X POST http://localhost:3001/mcp \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "initialize",
    "params": {
      "protocolVersion": "2024-11-05",
      "capabilities": {"tools": {}},
      "clientInfo": {"name": "test-client", "version": "1.0.0"}
    }
  }'

🔐 身份验证

服务器要求通过头部进行JWT认证 Authorization: Bearer <token>。

环境变量

VACATION_API_URL=http://localhost:3000  # URL da API de férias
USER_SECRET=your-secret                 # Secret do usuário
USER_ID=user-id                         # ID do usuário
PORT=3001                               # Porta do servidor

🛠️ 可用工具

  1. 获取我的假期信息 - 搜索用户的假期数据
  2. 创建休假流程 - 开始新的假期流程
    • diasParaGozo天数
    • inicioFerias数据格式为dd-mm-yyyy
  3. 获取休假需求 - 检查下一阶段的要求
  4. 提前休假工作流 - 提前休假
    • data包含必要数据的对象

📡 端点

  • POST /mcp - 主端点 MCP(需要认证)
  • GET /mcp - SSE流用于通知(需要认证)

🔧 开发

# Modo desenvolvimento (watch)
npm run dev

# Build
npm run build

# Executar
npm start