Interview Prep MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PORT | No | Port for HTTP transports. Checked first for platform hosts. | 8000 |
| MCP_HOST | No | Host for HTTP transports. | 127.0.0.1 |
| MCP_PORT | No | Port for HTTP transports. PORT is checked first for platform hosts. | 8000 |
| DATABASE_URL | No | Postgres connection URL. Takes precedence over SQLite when set. | |
| MCP_TRANSPORT | No | FastMCP transport, for example `stdio` or `streamable-http` depending on the installed MCP SDK. | stdio |
| OIDC_AUDIENCE | No | JWT audience required for public OIDC launch, usually `interview-prep-mcp`. | |
| OIDC_JWKS_URL | No | JWKS endpoint for validating OIDC access tokens. | <issuer>/.well-known/jwks.json |
| OIDC_ISSUER_URL | No | Enables public OIDC/JWT bearer-token verification when set. | |
| MCP_BEARER_TOKEN | No | Enables static bearer-token auth when set and OAuth is unset. | |
| OAUTH_LOGIN_SECRET | No | Enables approval-secret OAuth for ChatGPT Developer Mode when set. | |
| OIDC_SUBJECT_CLAIM | No | JWT claim used as the stable study owner subject. | sub |
| MCP_DEFAULT_SUBJECT | No | Owner subject used for local unauthenticated runs and simple single-subject auth. | bem |
| PUBLIC_SERVICE_NAME | No | Name shown on public informational pages. | Interview Prep MCP |
| OIDC_REQUIRED_SCOPES | No | Required access-token scopes for MCP tool calls. | study:read study:write |
| PUBLIC_CONTACT_EMAIL | No | Support/privacy contact shown on public pages. | support@example.com |
| RATE_LIMIT_PER_MINUTE | No | In-memory per-subject MCP tool-call limit per service instance. | 120 |
| INTERVIEW_PREP_DB_PATH | No | SQLite database path. | data/interview_prep.sqlite3 |
| MCP_ALLOW_UNAUTHENTICATED_HTTP | No | Allows unauthenticated HTTP only for non-public development. | false |
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
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_studiesB | Return all active study areas. |
| list_topicsA | Return active topics within a study. |
| list_subtopicsA | Return active subtopics within a topic with current mastery state. |
| get_due_subtopicsA | Return the spaced-repetition queue sorted by overdue-ness. |
| get_subtopic_historyA | Return attempts, trend, and state for one subtopic. |
| export_my_dataA | Export all study data for the authenticated user. |
| delete_my_dataA | Hard-delete all study data for the authenticated user after explicit confirmation. |
| log_attemptA | Record a quiz attempt and update SM-2 scheduling state. |
| create_studyB | Add a new study area. |
| create_topicA | Add a topic under a study. |
| create_subtopicA | Add a subtopic under a topic. |
| update_subtopicC | Edit a subtopic's name or description. |
| delete_studyB | Soft-delete a study while preserving history. |
| delete_topicA | Soft-delete a topic while preserving history. |
| delete_subtopicA | Soft-delete a subtopic while preserving history. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| review_due_items | Start a spaced-repetition review session using due subtopics. |
| create_study_plan | Create or extend a study hierarchy through MCP tools. |
| review_progress | Inspect study progress and weak spots without changing data. |
| account_data_request | Handle export or deletion requests with the correct account-data tools. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 15 tools
Each tool targets a distinct resource or action: study hierarchy reads/creates/deletes, attempt logging, due queue, history, and data privacy. list_subtopics and get_due_subtopics are clearly different because one returns all subtopics while the other returns the spaced-repetition queue.
Tool names follow a consistent verb_noun pattern with hierarchical nouns: list_*, create_*, delete_*, and get_*. Pluralization is predictable, and no mixed casing or vague verbs are present.
15 tools is at the upper bound of the ideal range, but each tool earns its place by covering study hierarchy management, spaced-repetition workflow, history inspection, and user data controls. The scope matches the server's stated purpose without unnecessary redundancy.
The core hierarchy and spaced-repetition workflow are well covered, but update_study and update_topic are missing while update_subtopic exists. This creates an incomplete CRUD surface for higher-level resources; agents cannot rename or edit a study or topic without deleting and recreating it.