使用说明

项目简介

本项目是一个 MCP (Model Context Protocol) 服务器,旨在帮助团队管理者轻松追踪和管理成员的週报提交情况。它连接到 Google Sheets,并提供了一系列资源和工具,让用户可以通过 MCP 客户端查询和获取週报相关的各种信息。

主要功能点

  • 查询未交週报人员: 快速找出本週尚未提交週报的成员。
  • 查询个人週报状态: 查看特定成员的週报提交状态,包括是否已提交、提交时间和内容摘要。
  • 获取週报提交统计: 获取本週週报的整体提交统计数据,如已提交人数和比例。
  • 获取所有成员列表: 获取需要提交週报的完整成员列表。

安装步骤

  1. 环境准备: 确保已安装 Python 3.10 或更高版本。
  2. 安装依赖: 克隆仓库后,在项目根目录下运行 'pip install -e .' 安装项目依赖。
  3. 配置 Google Sheets 服务账号:
    • 需要一个 Google Sheets 服务账号 JSON 文件 ('service_account.json'),并将其放置在 'mcp_server' 目录下。
    • 确保该服务账号有权访问名为 "週報" 的 Google Sheets 文档。
  4. 安装服务器 (可选,用于 Claude Desktop 等 MCP 客户端):
    • 可以运行 './install_server.sh' 脚本进行安装。
    • 或者使用 'mcp install mcp_server.main --name "週報檢查器"' 命令进行安装。

服务器配置

对于 MCP 客户端,您需要配置以下服务器连接信息。例如,在 Claude Desktop 客户端中,您需要添加一个新的自定义服务器,并填入以下配置:

{
  "serverName": "週報檢查器",
  "command": "python",
  "args": ["-m", "mcp_server.main"]
}
  • 'serverName': 服务器名称,可以自定义,例如 "週報檢查器"。
  • 'command': 启动服务器的命令,这里使用 'python'。
  • 'args': 传递给 'python' 命令的参数,'"-m mcp_server.main"' 用于运行 'mcp_server.main' 模块,即启动服务器。

基本使用方法

  1. 启动服务器:
    • 在项目根目录下,可以运行 './run_server.sh' 脚本,或者直接使用命令 'mcp dev mcp_server.main' 或 'python -m mcp_server.main' 或 'weekly-report-server' 启动服务器。
  2. 使用 MCP 客户端连接:
    • 使用支持 MCP 协议的客户端(例如 Claude Desktop),根据上述服务器配置信息连接到 "週報檢查器" 服务器。
  3. 通过客户端与服务器交互:
    • 客户端连接成功后,可以使用服务器提供的资源 (Resources) 和工具 (Tools) 来查询週报信息。
    • 例如,使用 'weekly-report://status' 资源获取未交週报人员名单,使用 'weekly-report://person/{name}' 资源查询特定人员的週报状态。

示例客户端

仓库中提供了 'example_usage.py' 文件作为示例客户端,展示了如何使用 Python MCP 客户端库连接和调用服务器的资源。您可以参考该示例了解如何通过编程方式与服务器进行交互。

信息

分类

生产力应用