Yomitan MCP Server
# Yomitan MCP Server
A Model Context Protocol (MCP) server that provides AI agents with direct access to your local Yomitan dictionary databases.
## Overview
This MCP server connects to the Yomitan browser extension's existing Native Messaging HTTP API (typically running on `localhost:19633`). It allows any MCP-compatible client (like OpenClaw, Claude Desktop, or Cursor) to perform rich dictionary lookups instantly, completely offline, and without any browser automation.
Managed by [GoRakuDo](https://gorakudo.org).
## Features (MCP Tools)
The server exposes 6 tools:
1. `lookup` — Search for a vocabulary word and return definitions, readings, and tags. (Optimized for AI context)
2. `kanji` — Search for detailed information about a single Kanji character.
3. `tokenize` — Parse a Japanese sentence into tokens and dictionary entries.
4. `anki_discover` — **(New in v1.2.0)** Auto-detect which Anki field markers (like `{expression}`, `{glossary}`) are valid in your specific Yomitan setup.
5. `anki_fields` — Generate populated Anki flashcard fields based on your Yomitan templates.
6. `status` — Check the connection status and version of your Yomitan backend.
## Prerequisites
1. **Yomitan Browser Extension** installed in Chrome/Firefox.
2. **Native Messaging** enabled in Yomitan.
3. **Yomitan API** enabled in Yomitan Settings:
- Go to Yomitan Settings -> Advanced.
- Enable "Yomitan API" (Ensure the server URL is `http://127.0.0.1:19633`).
4. **Node.js** (v18+) installed.
## Usage
You can run this MCP server directly using `npx` (no installation required):
```bash
npx yomitan-mcp-server
```
### Usage with MCP Clients (Claude Desktop, Cursor, OpenClaw, etc.)
Add the following configuration to your MCP client's configuration file (e.g., `mcp_config.json`, `claude_desktop_config.json`):
```json
{
"mcpServers": {
"yomitan-mcp": {
"command": "npx",
"args": [
"-y",
"yomitan-mcp-server@latest"
]
}
}
}
```
## Anki Integration
To use `anki_fields` effectively:
1. Configure your Anki Note Type and field mappings in Yomitan Settings -> Anki -> "Configure Anki card format...".
2. Use `anki_discover` first to see which markers (e.g., `expression`, `reading`, `glossary`, `single-glossary-DictionaryName`) are available in your setup.
3. If you encounter HTTP 500 errors, ensure you are using the correct marker names found via `anki_discover`.
## Security & Privacy
- All lookups are performed entirely locally on your machine.
- No data is sent to external servers by this MCP server.
- The default HTTP API operates strictly on `localhost`.
## Troubleshooting
- **Connection Refused (`ECONNREFUSED`)**: Ensure the browser with Yomitan is running. Check that "Enable Yomitan API" is turned on in the extension's Advanced Settings.
- **HTTP 500 Errors in anki_fields**: This usually means a marker name is invalid or not mapped. Run `anki_discover` to verify your available markers.
- **Insufficient Permissions**: Ensure the Native Messaging component is correctly installed for your browser. You can test this within the Yomitan Settings page under "API".
---
Built by [GoRakuDo](https://gorakudo.org). Licensed under Mozilla Public License Version 2.0.
TDQS
Scored across 5 tools
Each tool has a clearly distinct purpose with no overlap: anki_fields generates Anki card data, kanji provides kanji details, lookup searches dictionary terms, status checks API status, and tokenize performs morphological analysis. The descriptions clearly differentiate their functions, eliminating any ambiguity.
All tool names follow a consistent snake_case pattern with clear, descriptive nouns (e.g., anki_fields, kanji, lookup, status, tokenize). There are no deviations in naming style or verb usage, making the set predictable and easy to understand.
With 5 tools, the server is well-scoped for its Japanese language learning and dictionary domain. Each tool serves a specific, essential function (e.g., dictionary lookup, kanji info, text processing, API status), and none feel redundant or missing for the apparent purpose.
The tool set covers core functionalities well: dictionary lookup (lookup), kanji details (kanji), text processing (tokenize, anki_fields), and system status (status). A minor gap might be the lack of tools for managing user data or saved entries, but the existing tools support key workflows without dead ends.