Weekly Report Checker
# Weekly Report Checker MCP Server
An MCP (Model Context Protocol) server that checks weekly report submissions in a Google Sheet.
## Features
- Check who hasn't submitted their weekly reports
- Get detailed information about a specific person's report status
- View submission statistics
- Get a list of all team members who should submit reports
## Prerequisites
- Python 3.10 or higher
- A Google Sheets service account JSON file (`service_account.json`)
- Access to the "週報" Google Sheet
## Installation
```bash
# Install the package
pip install -e .
# Install in Claude Desktop
./install_server.sh
# or
mcp install mcp_server.main --name "週報檢查器"
```
## Usage
```bash
# Run in development mode
./run_server.sh
# or
mcp dev mcp_server.main
# Run directly
python -m mcp_server.main
# or
weekly-report-server
```
## Example Client
Run the example client:
```bash
python example_usage.py
```
## API Reference
### Resources
- `weekly-report://status` - Get who hasn't submitted reports
- `weekly-report://stats` - Get submission statistics
- `weekly-report://all-members` - Get all team members
- `weekly-report://person/{name}` - Get a specific person's status
### Tools
- `check_missing_reports` - Check missing reports
- `check_person_report` - Check a specific person's report
- `get_submission_stats` - Get submission statistics
```TDQS
Scored across 3 tools
Each tool has a clearly distinct purpose: checking missing reports (broad), checking a specific person's report (targeted), and getting submission statistics (aggregate). There is no overlap or ambiguity between these functions.
All tool names follow a consistent verb_noun pattern (check_missing_reports, check_person_report, get_submission_stats) with clear, descriptive verbs and nouns. The naming is uniform and predictable throughout.
With 3 tools, the server is well-scoped for its purpose of managing weekly report submissions. Each tool serves a distinct and necessary function without being overly sparse or bloated.
The tools cover the core read-only operations for checking and analyzing report submissions effectively. A minor gap exists in write operations (e.g., submitting or updating reports), but agents can likely work around this for the stated checking purpose.