MCP server bridging Claude (Desktop / Code / .ai) to a flashcard-jp deployment.
Project description
flashcard-jp-mcp
MCP server that lets Claude (Desktop, Code, or .ai web via Connectors) add words to a flashcard-jp deployment. Once installed, you can chat with Claude like:
"Aggiungi al mio Test Mazzo: kau (acquistare), matsu (aspettare), asobu (giocare). Genera anche le frasi mnemoniche italiane."
Claude calls add_cards_bulk once and the words land in the deck.
Install
# Recommended: ephemeral install per Claude session
uvx flashcard-jp-mcp
# Or install once into the user environment
pipx install flashcard-jp-mcp
Get an API token
- Open the flashcard-jp web app online.
- Click 🔑 in the top navbar → Crea token.
- Give it a name (e.g.
claude-desktop) → copy thefjp_…value once. - Paste it into the MCP server's environment (see below). The web UI keeps only a SHA-256 hash — losing the raw value means you have to create a new token.
Configure Claude Desktop
Add to ~/.claude/settings.json (or use claude mcp add flashcard-jp in
Claude Code):
{
"mcpServers": {
"flashcard-jp": {
"command": "uvx",
"args": ["flashcard-jp-mcp"],
"env": {
"FLASHCARD_API_BASE": "https://flashcard-jp-production.up.railway.app",
"FLASHCARD_API_TOKEN": "fjp_PASTE_YOUR_TOKEN_HERE"
}
}
}
}
Restart Claude. The tools below become available in the chat.
Tools
| Tool | What it does |
|---|---|
whoami |
Returns the authenticated user's email + last-studied deck id. Quick auth check. |
list_decks |
Every deck visible to the user, with progress (cards_total, cards_done, cards_left, cards_available_today, completed). |
get_deck(deck_id) |
A deck's full word list — useful so Claude can dedupe before adding. |
create_deck(name) |
Create a private deck owned by the user. |
add_card_to_deck(deck_id, romajii, kana, italiano, mnemonic?, emoji?) |
One word → Word + 2 Cards (forward + reverse). |
add_cards_bulk(deck_id, cards) |
Several entries in one call, returns {added: [...], skipped: [...]}. |
Romajii must be Hepburn, lowercase, ASCII (ohayoo, not ohayō). Kana
should be the hiragana / katakana reading only — no kanji.
Environment variables
| Var | Default | Required |
|---|---|---|
FLASHCARD_API_BASE |
https://flashcard-jp-production.up.railway.app |
no |
FLASHCARD_API_TOKEN |
— | yes |
Limits
- Starting decks (
is_starting=True) are read-only. Trying to mutate one returns 403; the tool surfaces that as an error message Claude can show in the chat. - Token leaks: each token grants full deck-write access for the user it belongs to. Revoke from the web UI's 🔑 menu if exposed.
License
MIT.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file flashcard_jp_mcp-0.1.0.tar.gz.
File metadata
- Download URL: flashcard_jp_mcp-0.1.0.tar.gz
- Upload date:
- Size: 4.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.6 {"installer":{"name":"uv","version":"0.11.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
844ddfcd1b9a943184aaf66a6d766beea1f667977950830678730e7c8ddfadbc
|
|
| MD5 |
1cba6f2c0f15b1b3c21dc73965bd8205
|
|
| BLAKE2b-256 |
945c7175922b6793fcb34ed4d8a104e7ea7b02ba8688cf05aa7d396aef6c62b8
|
File details
Details for the file flashcard_jp_mcp-0.1.0-py3-none-any.whl.
File metadata
- Download URL: flashcard_jp_mcp-0.1.0-py3-none-any.whl
- Upload date:
- Size: 6.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.6 {"installer":{"name":"uv","version":"0.11.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ae1fc4d5a8ad76b94826fc949227052f5b17835c30791ee460de41909c1c8d3e
|
|
| MD5 |
9eafb9d8d59023cd9be6b254c06b67c3
|
|
| BLAKE2b-256 |
52421295a99fcc3d905cea7a508549084b203a508f6695f9ff1fc9a8569b1e74
|