Token导航 LogoToken导航

MCP Server · 运维云端

Schedule Shift MCP

一个基于 FastMCP 的 MCP Server,提供查询可约档期和提交调班申请的功能,适用于教育领域的临时调班场景。

stdio官方级别未说明来源级核验工具 0
HTTP服务PythonFastAPI本地部署

快速开始

作者 / 组织
Zyr-0901
提供方
Zyr-0901
运行时
Python

工具数量

0

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

0

仓库热度

收录来源

1 个

MCP World

选型结论

Schedule Shift MCP 属于运维云端类 MCP Server,公开资料标注 0 个工具,通过stdio 本地进程接入,客户端适配情况以官方文档为准,有可以直接复制的安装命令;接入前先确认权限范围。

分类

运维云端

传输方式

stdio

认证方式

无需认证

部署方式

公开资料未说明

安装与配置

安装命令

python run_mcp_server.py

客户端配置示例

{
  "mcpServers": {
    "schedule-shift-mcp": {
      "command": "python",
      "args": [
        "run_mcp_server.py"
      ]
    }
  }
}

按公开安装命令拼出来的示例,字段名和参数以仓库 README 为准;带 YOUR_API_KEY 这类占位符的位置记得换成自己的值。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 Python,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 0 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

详细介绍

需求说明:教育-临时调班 MCP Server(Python / HTTP)

1) 目标

在本地实现一个 MCP Server:schedule-shift-mcp,通过 Streamable HTTP 对外提供 MCP 工具能力(HTTP 传输是 MCP 标准传输之一)。 ([Model Context Protocol][1])

服务要暴露 2 个 tools:

  • query_available_slots:查可约档期(如果目标满员,要自动给替代方案)
  • submit_schedule_change:核验后提交调班(返回成功/待审核/失败原因)

2) 技术选型(必须)

  • Python
  • 使用 FastMCP 来实现 MCP Server(简化协议细节)
  • 传输方式:transport="http",MCP 端点默认在 /mcp/(同域名根路径可挂 /health) ([gofastmcp.com][2])
FastMCP 支持把 MCP 服务作为 HTTP Web 服务运行,并且 MCP endpoint 在 /mcp/。 ([gofastmcp.com][2])

3) 运行方式

方式 1:FastAPI + MCP 挂载(推荐,支持 REST API 和 MCP)
uvicorn app:app --host 0.0.0.0 --port 8000

端点:

  • MCP endpoint:http://localhost:8000/mcp/
  • 健康检查:GET http://localhost:8000/health
  • REST API:/api/query-available-slots, /api/submit-schedule-change
  • API 文档:

- Swagger UI:http://localhost:8000/docs - OpenAPI JSON:http://localhost:8000/openapi.json - ReDoc:http://localhost:8000/redoc

方式 2:独立 MCP 服务器(仅 MCP 协议)

如果方式 1 无法正常工作,可以尝试独立运行 MCP 服务器:

python run_mcp_server.py

端点:

  • MCP endpoint:http://localhost:8000/mcp/
注意: - FastAPI 的文档端点(/docs, /openapi.json)在主应用根路径下,不在 /mcp/ 路径下 - FastMCP 的 http_app() 返回的 ASGI 应用只处理 MCP 协议请求,不包含 FastAPI 的文档功能 - 如果 MCP 客户端无法连接,请检查: 1. 服务器是否正常启动 2. MCP 端点 URL 是否正确(http://localhost:8000/mcp 或 http://localhost:8000/mcp/) 3. 运行诊断脚本:python diagnose_mcp.py

4) 数据存储(最简可跑通)

用本地文件 data/db.json(或 sqlite 也行,但 json 更快)模拟教务系统,包含:

  • courses[]:用户报名/订单信息(含手机号后四位)
  • slots[]:可约档期(老师、内容、容量、已约)
  • requests[]:调班申请记录(状态、时间戳、原因)
只要能支持“目标满员→推荐替代→核验→提交→待审核/成功”闭环即可。

5) Tool 设计(严格按下面 schema)

Tool 1:query_available_slots(简化入参)

name:query_available_slots 用途:按日期查询目标课程是否可约;不可约时返回同课程的替代日期

Input (JSON)

{
  "course_name": "string",
  "original_date": "YYYY-MM-DD",
  "target_date": "YYYY-MM-DD"
}

Output (JSON)

{
  "status": "ok",
  "requested": {
    "is_available": false,
    "reason": "FULL|NOT_FOUND|AVAILABLE",
    "requested_date": "YYYY-MM-DD"
  },
  "alternatives": [
    {
      "slot_id": "string",
      "time": "YYYY-MM-DD HH:mm",
      "teacher": "string",
      "content": "string",
      "capacity_left": 3,
      "location": "string",
      "match": { "same_teacher": true, "same_content": true }
    }
  ]
}

核心逻辑

  • 按课程名匹配课程/档期
  • 只看日期(同一天任意时间),满员则给同课程替代日期,返回最多 3 个,按日期临近排序

Tool 2:submit_schedule_change(简化入参)

name:submit_schedule_change 用途:按学生姓名 + 目标日期提交调班申请(默认返回待审核 180 秒)

Input (JSON)

{
  "student_name": "string",
  "target_date": "YYYY-MM-DD"
}

Output (JSON)

{
  "status": "ok",
  "result": "PENDING_AUDIT|SUCCESS|FAILED",
  "message": "string",
  "audit": { "eta_seconds": 180 },
  "updated_schedule": {
    "time": "YYYY-MM-DD HH:mm",
    "teacher": "string",
    "location": "string"
  }
}

核心逻辑

  • 通过学生姓名匹配课程
  • 在目标日期匹配同课程、仍有容量的档期;否则 FAILED + SLOT_NOT_FOUND_OR_FULL
  • 默认 PENDING_AUDIT(eta=180),环境变量 SCHEDULE_DIRECT_SUCCESS=true 时直接 SUCCESS

6) 服务结构(建议)

schedule-shift-mcp/
  app.py                  # FastAPI + MCP 挂载
  mcp_server.py           # FastMCP tools 定义
  storage.py              # 读写 data/db.json
  data/db.json
  pyproject.toml
  README.md

需要实现的 HTTP 挂载方式

  • 让 MCP 作为 ASGI app 挂在 FastAPI 下(路径 /mcp 或 /mcp/)
  • 注意 lifespan 合并(FastMCP 文档建议传递 lifespan) ([gofastmcp.com][3])

7) 验收标准(跑通即可)

  1. 本地启动后,访问 /health 返回 OK ([gofastmcp.com][2])
  2. MCP 客户端能发现 2 个 tools
  3. 调用 query_available_slots:

* 目标满员时能返回至少 1 个替代档期

  1. 调用 submit_schedule_change:

* 后四位不匹配 → FAILED * 匹配 → PENDING_AUDIT(eta=180)或 SUCCESS

  1. data/db.json 的 requests[] 有新增记录

8) 录入到你的系统(HTTP MCP 插件)

你系统里只要支持 Streamable HTTP,通常配置就是“URL + 可选 headers”。MCP 的 HTTP(streamable-http)客户端一般用形如 http://localhost:8000/mcp 的 URL。 ([LangChain Docs][4])

示例(通用)

{
  "name": "schedule-shift",
  "type": "streamable-http",
  "url": "http://localhost:8000/mcp",
  "headers": {}
}
如果你的系统界面是“Add MCP Server → HTTP(Streamable HTTP) → URL”,就填上面这个 URL,然后刷新工具列表即可。

9) 具体任务

用 Python 实现一个基于 FastMCP 的 MCP Server,使用 Streamable HTTP(/mcp/)对外提供两个 tools:query_available_slots 和 submit_schedule_change。用 data/db.json 模拟 courses/slots/requests 三类数据,按需求文档的输入输出 schema 实现逻辑(满员给替代、核验后四位、提交返回待审核 180 秒)。提供 /health 路由、README、启动命令、以及如何在客户端用 http://localhost:8000/mcp/ 连接测试。

工具与能力

工具数量

0

资源数量

0

提示词数量

0

能力标签

教育调班Python本地部署MCPServerFastAPIHTTP服务

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

看服务状态

查询容器、日志和监控指标,定位异常。

执行部署变更

在权限范围内触发发布、回滚和环境切换。

核对资源用量

汇总用量,找出闲置和超额的部分。

选择建议

值得选的地方

  • 只提供 0 个工具,职责集中,接入后不容易误操作。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

  • stdio 方式要求本地装好 Python,换机器要重新装一遍。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在运维云端场景里让模型直接调用外部能力的人。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
Schedule Shift MCP

MCP World · 本页

0stdio有1 个2026-05-17
Ui Tars Desktop 8a825770

MCP World

0stdio有1 个2026-05-17
Elie222 MCP

MCP World

0未说明未标注1 个2026-05-17
Arizeai Phoenix MCP

MCP World

0stdio有3 个2026-05-17
Unity MCP 87ee506e

MCP World

42HTTP有2 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

Schedule Shift MCP 怎么安装?

公开资料给出的安装命令是 python run_mcp_server.py,运行环境为 Python。装完后按客户端要求写进 MCP 配置,重启客户端生效。

Schedule Shift MCP 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 Python;保存后完全退出客户端再打开,配置才会生效。

Schedule Shift MCP 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

Schedule Shift MCP 需要 API Key 吗?

公开资料标注为无需认证,装好就能连;如果实际调用时报鉴权错误,按官方文档补上凭据。

Schedule Shift MCP 支持哪些客户端?

公开资料没有标注具体客户端;能配置本地 MCP 命令的客户端都能接,配置方式参照官方文档。

来源信息

继续浏览同类 MCP