bunpro-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| BUNPRO_API_KEY | No | Legacy API key (optional) | |
| BUNPRO_API_TOKEN | Yes | Your Bunpro frontend API token |
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": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_userA | Get the current Bunpro user profile (level, title, settings). |
| get_due_countA | Get the number of reviews currently due in Bunpro. |
| get_queueB | Get the full current review queue from Bunpro. |
| get_reviewsC | List reviews with pagination. |
| get_base_statsA | Get overall Bunpro study statistics (total grammar points, reviews, streaks, etc.). |
| get_jlpt_progressA | Get grammar/vocab progress broken down by JLPT level (N1–N5). |
| get_srs_overviewA | Get the SRS level distribution — how many items are at each SRS tier. |
| get_srs_level_detailsC | Get items at a specific SRS level with pagination. |
| get_ghost_detailsB | Get ghost review items (items that haunt your review queue after being burned). |
| get_forecast_dailyA | Get the upcoming daily review forecast (next N days). |
| get_forecast_hourlyA | Get the upcoming hourly review forecast for today. |
| get_review_activityB | Get review activity history (used for the activity/streak graph). |
| get_last_sessionB | Get statistics from the most recent review session. |
| get_last_24_hoursB | Get review history for the last 24 hours. |
| get_itemA | Get full details for a grammar point or vocabulary item by its slug or ID (e.g. 'は-wa-topic-marking-particle' or '42'). Returns meaning, structure, example sentences, SRS status, and more. |
| get_item_notesA | Get your personal study notes for a grammar point or vocab item. |
| searchA | Search Bunpro grammar points and vocabulary. Returns compact matches (id, title, kana, level, meaning) plus a |
| add_to_reviewsA | Add one or more items to your Bunpro SRS reviews. Items start at SRS level 0 and become reviewable immediately. Note: reviewable_type for this endpoint is 'Vocab' or 'GrammarPoint' (not 'Vocabulary'). |
| remove_from_reviewsB | Remove one or more items from your Bunpro SRS reviews. |
| add_bookmarkB | Bookmark a Bunpro item for later review. |
| remove_bookmarkA | Remove a Bunpro bookmark by its bookmark ID. |
| get_study_queue_legacyA | Get review queue counts using the legacy Bunpro API key (requires BUNPRO_API_KEY). Returns reviews available now, next hour, and next day. |
| get_recent_items_legacyA | Get recently added grammar points using the legacy Bunpro API key (requires BUNPRO_API_KEY). |
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 23 tools
Most tools have clearly distinct purposes, but there is some overlap between queue-related tools (get_due_count, get_queue, get_reviews, get_study_queue_legacy) and between list-based statistics (get_last_24_hours, get_review_activity). Descriptions help differentiate, but an agent might occasionally misselect.
All tool names follow a consistent snake_case verb_noun pattern (e.g., add_bookmark, get_due_count, remove_from_reviews). Legacy tools are suffixed with _legacy. No mixing of conventions or ambiguous verbs.
23 tools cover the main aspects of the Bunpro study platform (user, items, reviews, SRS, bookmarks, statistics) without being excessive. Each tool serves a specific function and feels well-scoped.
The tool surface covers core workflows: searching, viewing item details, managing reviews, bookmarks, and statistics. A minor gap is the absence of a tool to update personal notes (only get_item_notes exists), but general CRUD operations for items are not needed for a study app.