Vocabit
NPM · VOCABIT-MCP · SCANNED AUG 26
Create flashcard sets in the Vocabit app and read back how the learner actually did.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score →
Supply Chain Security98
- No malware found by supply-chain analysis.Pass
- No known CVEs affecting this package version or its production dependencies.Pass
- No install/post-install scripts declared.Pass
- 30 of 95 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency100
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Cryptographically verified build provenance (signed, bound to JohnBilousov/vocabit-mcp). View diagnostics → Pass
- Clear OSI-approved license (MIT).Pass
- Actively maintained (last published 1 days ago).Pass
- Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability87
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (excellent).Pass
- Tool/resource definitions use about 1018 tokens (~101/item across 10 items; 8 tools + 2 resources), lean.Pass
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management7
- Stability observed for 2 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage95
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 82% of tool parameters carry a description.Partial
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- All 2 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.Pass
- An AI judge read all 10 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
How do I install the Vocabit MCP server?
Vocabit runs locally as an npm package, launched with npx -y vocabit-mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
npm · vocabit-mcp
claude mcp add johnbilousov-vocabit-mcp -- npx -y vocabit-mcp
{
"mcpServers": {
"johnbilousov-vocabit-mcp": {
"command": "npx",
"args": [
"-y",
"vocabit-mcp"
]
}
}
} {
"servers": {
"johnbilousov-vocabit-mcp": {
"command": "npx",
"args": [
"-y",
"vocabit-mcp"
]
}
}
} codex mcp add johnbilousov-vocabit-mcp -- npx -y vocabit-mcp
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"johnbilousov-vocabit-mcp": {
"type": "local",
"command": [
"npx",
"-y",
"vocabit-mcp"
],
"enabled": true
}
}
} openclaw mcp add johnbilousov-vocabit-mcp --command npx --arg -y --arg vocabit-mcp
mcp_servers:
johnbilousov-vocabit-mcp:
command: "npx"
args: ["-y", "vocabit-mcp"] {
"McpServers": {
"johnbilousov-vocabit-mcp": {
"Transport": "stdio",
"Command": "npx",
"Arguments": [
"-y",
"vocabit-mcp"
]
}
}
} assistant mcp add johnbilousov-vocabit-mcp -t stdio -c npx -a -y vocabit-mcp
{
"mcpServers": {
"johnbilousov-vocabit-mcp": {
"command": "npx",
"args": [
"-y",
"vocabit-mcp"
]
}
}
} Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 26 Aug 26 +3
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 25 Aug 26 +26
- Malware scan: unverified → pass ▲ security
- Provenance: fail → pass ▲ security
- The attested source repository moved: JohnBilousov/vocabit-mcp security
- Tool coverage: 50% → 100% ▲ functional
- Stability: unverified → 0.03 ▲ functional
- Package version: 0.1.2 → 0.1.3 functional
- 24 Aug 26 55
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 26 Aug 2026 · Analysed npm/vocabit-mcp@0.1.3
Provenance Verified
A signed build attestation was found and verified, binding this exact artifact to the source repository it claims to come from.
| Result | Verified |
|---|---|
| Ecosystem | npm |
| Reason | Verified |
| Discovered via | Registry attestation endpoint |
| Source repo | JohnBilousov/vocabit-mcp |
| Certificate issuer | https://token.actions.githubusercontent.com |
| Certificate SAN | https://github.com/JohnBilousov/vocabit-mcp/.github/workflows/publish.yml@refs/tags/v0.1.3 |
| Rekor log index | 2581444394 |
| Predicate type | https://slsa.dev/provenance/v1 |
| Subject digest | sha512:bdb1138100d12d49feb15d542b5e27f45c8efe1a849b4911d1d8e6f9cc3e555089b307d5ffdb16a3886f3c6a5d35982b99ab9ee362fc91df771c6c537 |
Dependencies 95 packages
| Packages resolved | 95 |
|---|---|
| Stale | 30 |
| Tree resolution | Complete |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.
create_study_set Create a study set ~270
Build a flashcard set and publish it to the learner's Vocabit app. Returns a deep link that opens the set on their device. Prefer one focused topic and 8-15 cards per set — long sets get abandoned. Use the notes field for what you want to check afterwards; the learner never sees it.
| Name | Type | Req | Description |
|---|---|---|---|
| cards | array | yes | The flashcards, 1-300. Keep a set to one theme and around 8-15 cards for a single session |
| definitionLanguage | string | – | Language of the definitions, e.g. 'en' |
| description | string | – | Short description shown under the title |
| notes | string | – | Your own notes about what to check when reviewing results. Never shown to the learner |
| notify | boolean | – | Ping the learner on Telegram that the set is ready |
| termLanguage | string | – | Language of the terms, e.g. 'de' |
| title | string | yes | Set title as the learner will see it in the app |
| topic | string | – | Topic tag used to group sets and to filter them later, e.g. 'church vocabulary' |
| userId | string | – | Firebase UID of the learner. Omit to use the server default |
| visibility | string | – | Defaults to private |
| Name | Type | Req | Description |
|---|---|---|---|
| appSchemeLink | string | – | – |
| cardCount | number | yes | – |
| deepLink | string | yes | Universal link that opens the set in the app |
| notified | boolean | – | – |
| setId | string | yes | – |
| title | string | yes | – |
| userId | string | – | – |
| visibility | string | – | – |
No examples provided.
delete_study_set Delete a study set ~61
Remove a set from the learner's app. Study history is kept on the backend, but the set disappears from their device. Ask before calling this.
| Name | Type | Req | Description |
|---|---|---|---|
| setId | string | yes | Set id returned by create_study_set or list_study_sets |
| Name | Type | Req | Description |
|---|---|---|---|
| deleted | boolean | yes | – |
| setId | string | yes | – |
No examples provided.
get_set_results Get how the learner did ~109
Read back real study results for a set: which cards the learner marked hard (weakCards), which they never reached (untouchedCards), and per-card review counts. This is the feedback half of the loop — read it before writing the next set, and build the follow-up out of weakCards.
| Name | Type | Req | Description |
|---|---|---|---|
| setId | string | yes | Set id returned by create_study_set or list_study_sets |
| userId | string | – | Read progress for a different learner than the set owner |
| Name | Type | Req | Description |
|---|---|---|---|
| cards | array | – | – |
| completed | boolean | yes | – |
| demoNote | string | – | – |
| dueCardIds | array | – | – |
| notes | – | – | – |
| setId | string | yes | – |
| summary | object | yes | – |
| title | string | yes | – |
| topic | – | – | – |
| untouchedCards | array | – | – |
| weakCards | array | yes | – |
No examples provided.
get_study_set Get study set contents ~54
Read the full contents of a set — every card, plus the topic and notes you attached when you created it.
| Name | Type | Req | Description |
|---|---|---|---|
| setId | string | yes | Set id returned by create_study_set or list_study_sets |
| Name | Type | Req | Description |
|---|---|---|---|
| cardCount | number | yes | – |
| cards | array | yes | – |
| deepLink | string | yes | – |
| description | – | – | – |
| notes | – | – | – |
| setId | string | yes | – |
| title | string | yes | – |
| topic | – | – | – |
No examples provided.
list_study_sets List study sets ~120
List the sets you created for this learner, newest first, each with a progress summary. Use it to find a setId, or to see at a glance which sets were never opened.
| Name | Type | Req | Description |
|---|---|---|---|
| includeProgress | boolean | – | Attach a progress summary to each set (default true) |
| limit | integer | – | How many sets to return, newest first (default 20) |
| topic | string | – | Only sets with this exact topic tag |
| userId | string | – | Firebase UID of the learner. Omit to use the server default |
| Name | Type | Req | Description |
|---|---|---|---|
| count | number | yes | – |
| sets | array | yes | – |
No examples provided.
notify_learner Ping the learner ~80
Send the learner a Telegram message that a set is waiting. Use sparingly — one ping per set, right after you create it.
| Name | Type | Req | Description |
|---|---|---|---|
| setId | string | yes | Set id returned by create_study_set or list_study_sets |
| text | string | – | Custom message. Omit for the default 'your set is ready' ping |
| Name | Type | Req | Description |
|---|---|---|---|
| notified | boolean | yes | – |
| setId | string | yes | – |
| telegramId | number | – | – |
No examples provided.
update_study_set Update a study set ~159
Change a set in place: retitle it, retag it, or add cards. Pass addCards to append (the usual case after reviewing results) or cards to replace the list wholesale — never both. Replacing the cards resets what the learner has already studied.
| Name | Type | Req | Description |
|---|---|---|---|
| addCards | array | – | Append cards to the existing list. Cannot be combined with cards |
| cards | array | – | Replace the whole card list. Cannot be combined with addCards |
| description | string | – | – |
| notes | string | – | – |
| setId | string | yes | Set id returned by create_study_set or list_study_sets |
| title | string | – | – |
| topic | string | – | – |
| visibility | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| cardCount | number | yes | – |
| setId | string | yes | – |
| updated | array | yes | Which fields changed, e.g. ['title', 'addCards'] |
No examples provided.
vocabit_health Check Vocabit connection ~39
Verify the server can reach Vocabit and report which mode it is in (live backend or in-memory demo). Call this first if anything else fails.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| baseUrl | – | yes | – |
| defaultUserId | – | yes | – |
| mode | string | yes | – |
No examples provided.
What is the Vocabit MCP server?
Vocabit is an MCP server listed in the public MCP registry as io.github.JohnBilousov/vocabit-mcp. Create flashcard sets in the Vocabit app and read back how the learner actually did. This page covers its npm package (vocabit-mcp).
Is the Vocabit MCP server safe to use?
Vocabit scores 84 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 26 August 2026. It declares no install or post-install scripts. Its build provenance is signed and verified. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the Vocabit MCP server expose?
Vocabit exposes 8 tools: vocabit_health, create_study_set, list_study_sets, get_study_set, get_set_results, and 3 more. Their descriptions and schemas cost roughly 892 tokens of context every time the server is loaded.
Is the Vocabit MCP server still maintained?
Vocabit is still listed as active in the MCP registry. We last reached this channel on 26 August 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.
What licence is the Vocabit MCP server under?
Vocabit declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.