Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
PORTNoHTTP port for the server (default: 8000)8000
SRS_DBNoSQLite database file path (default: './srs.db')./srs.db
DATABASE_URLNoPostgres connection string (alternative to SRS_DATABASE_URL)
MCP_TRANSPORTNoTransport mode: set to 'stdio' for stdio transport, otherwise HTTP is used
SRS_DATABASE_URLNoPostgres connection string (alternative to DATABASE_URL)

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}
logging
{}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
extensions
{
  "io.modelcontextprotocol/ui": {}
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
add_cardA

Author a new flashcard and schedule it. front is the prompt/question, back is the answer. Optional deck groups cards (default 'default'). Returns JSON {card_id, due}. The card is due immediately (first review).

due_cardsA

List cards due for review now (due <= now), soonest first. Optionally filter by deck. Returns a JSON array of {card_id, front, back, deck, due}. Quiz the user with front, check against back, then call grade_card. Returns '[]' when nothing is due.

grade_cardA

Record a review of a card. rating is how well it was recalled: 'again' (forgot), 'hard', 'good', or 'easy' (1-4 also accepted). FSRS updates the schedule; returns JSON {card_id, rating, next_due, reps}.

list_cardsA

List cards (newest first) regardless of due date, for an overview. Optionally filter by deck. Returns JSON array of {card_id, front, back, deck, due, reps, suspended}.

edit_cardA

Edit a card's content without disturbing its schedule. Update any of front, back, deck (omit or pass null to leave unchanged); the FSRS review state (difficulty, stability, due date, reps) is preserved. Use this to fix typos or add context instead of creating a duplicate card. Returns JSON {card_id, front, back, deck}.

suspend_cardA

Shelve a card: keep it (with its full history and schedule) but remove it from the due queue, so it won't surface in due_cards until unsuspended. Reversible, non-destructive alternative to delete_card for cards you're unsure about. Returns JSON {card_id, suspended}.

unsuspend_cardA

Un-shelve a previously suspended card, returning it to the review queue (it becomes due again per its existing schedule). Returns JSON {card_id, suspended}.

delete_cardC

Delete a card by id (reset / cleanup).

statsA

Summary of the card box: total cards, how many are due now, total reviews, and the deck list. Optionally scope counts to one deck.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/klutometis/srs-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server