pw-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| TIMEZONE | No | Timezone for schedule calculations | Asia/Kolkata |
| LOG_LEVEL | No | Logging verbosity | INFO |
| PW_TIMEOUT | No | Request timeout in seconds | 20 |
| PW_PROVIDER | No | 'mock' (offline) or 'pw' (real API) | mock |
| PW_API_TOKEN | No | Bearer token for pw.live, required when PW_PROVIDER is 'pw' | |
| DATABASE_PATH | No | SQLite database path | ./data/pw_mcp.db |
| PW_API_BASE_URL | No | Override API base URL | |
| PW_DEFAULT_BATCH | No | Batch slug for schedule fetching | arjuna-jee-2027-243495 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_today_scheduleA | Get today's PW lecture schedule. |
| get_upcoming_scheduleA | Get upcoming lecture schedule for the next N days. |
| get_scheduleB | Get lecture schedule for a specific date range. |
| get_next_lectureB | Get the next upcoming incomplete lecture. |
| get_lectureA | Get details for a specific lecture by ID. |
| get_backlogC | Get incomplete past lectures (backlog). |
| get_subject_backlogC | Get backlog for a specific subject. |
| get_chapter_backlogC | Get backlog for a specific chapter. |
| get_backlog_summaryC | Get aggregate backlog statistics. |
| get_oldest_backlog_lectureB | Get the oldest incomplete lecture. |
| mark_lecture_completedC | Mark a lecture as completed in local storage. |
| mark_lecture_incompleteB | Mark a lecture as incomplete in local storage. |
| update_watched_minutesC | Update how many minutes of a lecture have been watched. |
| get_completion_statsA | Get overall course completion statistics. |
| generate_study_planC | Generate a study plan from backlog. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 15 tools
Tools are mostly distinct by resource and filter: schedule queries differ by time range, and backlog queries differ by subject/chapter/aggregate. Minor ambiguity exists between get_next_lecture and get_oldest_backlog_lecture, and get_backlog vs get_backlog_summary, but descriptions largely resolve this.
All tool names follow a consistent verb-first pattern: get_, mark_, update_, generate_. Nouns are clear and singular, with no mixed casing or vague action verbs.
15 tools is at the upper edge of well-scoped, and most tools serve a distinct purpose. A few convenience getters (today's schedule, upcoming schedule, date-range schedule) could be consolidated, but the count is still reasonable for the domain.
The surface covers schedule lookup, backlog filtering, completion state changes, watched minutes, stats, and study plan generation. Minor gaps like explicit subject/chapter listing or a way to view all lectures outside a date range are workable around.