trackmcp
Back to directory
wrdan

mcp-server-canteen

View on GitHub

Canteen Data

0 stars PythonOthers Updated Apr 24, 2025

Documentation

餐厅数据 MCP Server

本服务用于查询职工餐厅就餐人数数据,提供指定日期范围内的早餐和午餐就餐人数统计。

docs: https://modelcontextprotocol.io/quickstart/server

安装

通过 pip 安装

bash
pip install mcp-server-canteen

通过 uv 安装

bash
uv pip install mcp-server-canteen

开发环境安装

bash
git clone https://github.com/wrdan/mcp-server-canteen.git
cd mcp-server-canteen
uv pip install -e .

环境变量配置

在使用服务之前,需要配置以下环境变量:

  • `CANTEEN_API_TOKEN`: API认证令牌
  • `CANTEEN_API_BASE`: API基础URL

环境变量获取方式

1. 联系系统管理员获取 API 认证令牌

2. API基础URL通常由系统管理员提供

设置环境变量

Windows

bash
set CANTEEN_API_TOKEN=your_token
set CANTEEN_API_BASE=your_base_url

Linux/Mac

bash
export CANTEEN_API_TOKEN=your_token
export CANTEEN_API_BASE=your_base_url

服务运行

使用 uv 运行

bash
uv run mcp-server-canteen

使用 Python 运行

bash
python -m mcp_server_canteen.server

功能说明

服务提供以下功能:

  • `get_canteen_data`: 查询指定日期范围内的餐厅就餐人数数据
    • 参数:
      • `start_date`: 开始日期,格式为YYYYMMDD(如20250331)
      • `end_date`: 结束日期,格式为YYYYMMDD(如20250331)
      • `period`: 相对时间范围,可选值:
        • `today`: 今天
        • `yesterday`: 昨天
        • `day_before_yesterday`: 前天
        • `this_week`: 本周
        • `last_week`: 上周
        • `this_month`: 本月
        • `last_month`: 上月
    • 返回: 包含早餐人数、午餐人数和总计人数的文本统计

使用 Claude for Desktop 作为客户端测试

配置

打开并编辑文件: ~/Library/Application\ Support/Claude/claude_desktop_config.json,内容如下:

使用 uvx

json
"mcpServers": {
  "canteen": {
    "command": "uvx",
    "args": ["mcp-server-canteen"],
    "env": {
        "CANTEEN_API_TOKEN": "CANTEEN_API_TOKEN",
        "CANTEEN_API_BASE": "ANTEEN_API_BASE"
    }
  }
}

使用 uv

json
"mcpServers": {
  "canteen": {
    "command": "uv",
    "args": ["run", "mcp-server-canteen"],
    "env": {
        "CANTEEN_API_TOKEN": "CANTEEN_API_TOKEN",
        "CANTEEN_API_BASE": "ANTEEN_API_BASE"
    }
  }
}

本地测试

json
"mcpServers": {
  "canteen": {
    "command": "python",
    "args": ["-m", "mcp-server-canteen.server"],
    "env": {
        "CANTEEN_API_TOKEN": "CANTEEN_API_TOKEN",
        "CANTEEN_API_BASE": "ANTEEN_API_BASE"
    }
  }
}

重启 Claude for Desktop

重启不报错,且有`锤子`图标显示可用的 MCP Tool,即为成功;否则,查看日志排查

错误处理

常见错误及解决方案

1. 环境变量未设置

    2. 日期格式错误

      3. API请求失败

        4. 服务器连接失败

          Claude for Desktop 日志

          日志文件夹:~/Library/Logs/Claude

          来自具体 MCP Server 的日志:mcp-server-canteen.log

          MCP 连接通用日志:mcp.log

          工作原理

          1. 客户将您的查询发送给 Claude

          2. Claude 分析可用的工具并决定使用哪一个

          3. 客户端通过 MCP 服务器执行所选工具

          4. 结果被发回给 Claude

          5. Claude 制定了自然语言响应

          6. 答案已经展示给你了!

          Frequently asked questions

          What is mcp-server-canteen?

          mcp-server-canteen is Canteen Data

          How do I install mcp-server-canteen?

          Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.

          Is mcp-server-canteen open source?

          Yes — it is hosted on GitHub at https://github.com/wrdan/mcp-server-canteen.

          Related MCP tools

          Run your own MCP server? See who uses it and what to fix.

          Measure it with TrackMCP