Jisho MCP
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Jisho MCPdefine 食べる"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Jisho MCP
A lightweight Model Context Protocol (MCP) server for Jisho.org, the popular Japanese-English dictionary.
Look up Japanese words, readings, JLPT levels, and definitions directly inside MCP-compatible AI clients — or let your agent search for you.
Features
Word search with all Jisho filters (
#jlpt-n5,#verb, wildcards, etc.)Exact lookup by word slug (e.g.
食べる)Compact responses (Wikipedia/dbpedia padding stripped, linguistic fields like
see_also,antonyms,sourcepreserved)Read-only resources:
jisho://word/{keyword}andjisho://search/{keyword}
Related MCP server: Yomitan MCP Server
Quick start
No installation required. You only need uv and Python >= 3.10.
Claude Code
claude mcp add jisho -- uvx --from git+https://github.com/giuliocapecchi/jisho-mcp jisho-mcpOther MCP clients (Claude Desktop, Codex, OpenCode, …)
Add the following block to your client's MCP config file:
{
"mcpServers": {
"jisho": {
"command": "uvx",
"args": ["--from", "git+https://github.com/giuliocapecchi/jisho-mcp", "jisho-mcp"]
}
}
}Common config locations:
Client | Config file |
Claude Desktop |
|
Codex (OpenAI) |
|
OpenCode |
|
Permanent install
If you prefer a system-wide command:
uv tool install git+https://github.com/giuliocapecchi/jisho-mcpThen run directly:
jisho-mcpOr add to your MCP config:
{
"mcpServers": {
"jisho": {
"command": "jisho-mcp"
}
}
}Development
git clone https://github.com/giuliocapecchi/jisho-mcp.git
cd jisho-mcp
uv sync
uv run jisho-mcpTools
Tool | Description |
| Search dictionary entries. |
| Fetch the entry with the exact slug, or |
Example
get_word("水") returns:
{
"slug": "水",
"is_common": true,
"jlpt": ["jlpt-n5"],
"japanese": [{"word": "水", "reading": "みず"}],
"senses": [
{
"english_definitions": ["water (esp. cool or cold)"],
"parts_of_speech": ["Noun"],
"see_also": ["湯 ゆ"]
},
{
"english_definitions": ["fluid (esp. in an animal tissue)", "liquid"],
"parts_of_speech": ["Noun"]
}
]
}License
Available Tools
2 toolsget_wordA
Look up a single word by its exact Jisho slug.
Returns None if no entry with that exact slug exists. Note: Jisho has
no by-slug endpoint, so this performs a keyword search and filters for an
exact slug match. For fuzzy lookup, use search_words.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | The exact word slug (e.g. ``水``, ``食べる``). |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It transparently reveals that despite the name 'get_word', there is no by-slug endpoint, so it performs a keyword search and filters for an exact slug match. It also states the None return case. This goes beyond a simple operational summary, though it doesn't mention any permissions, rate limits, or other side effects, which are likely irrelevant for this read-only lookup.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise: three sentences, each earning its place. It front-loads the primary purpose, then covers edge behavior, implementation note, and alternative. No fluff or redundant text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple single-parameter lookup tool, the description covers purpose, exact-match behavior, the underlying search mechanism, the None return case, and the sibling alternative. An output schema exists to detail the return structure, so the description doesn't need to explain that. The tool is adequately specified for an agent to use it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already fully describes the single parameter 'slug' with examples and 'exact word slug'. The description reiterates 'exact Jisho slug' but adds no new semantic detail beyond what the schema provides. With 100% schema coverage, the description does not need to compensate, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'Look up a single word by its exact Jisho slug.' It uses a specific verb ('look up') and resource ('single word', 'exact Jisho slug'), and immediately distinguishes itself from the sibling tool 'search_words' by noting that fuzzy lookup should use that alternative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage guidance: it's for exact slug lookups, and explicitly directs users to 'search_words' for fuzzy lookup. It also clarifies the behavior when no exact match exists (returns None), helping the agent decide when to call this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_wordsA
Search Jisho.org for words matching a keyword.
Supports all Jisho search filters, e.g. #jlpt-n5, #verb, 水,
or English terms like water.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Result page number (default 1). | |
| keyword | Yes | The search term (supports Jisho filters and wildcards). |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full responsibility for behavioral disclosure. It does not state whether the tool performs a read-only operation, whether it accesses an external service, any rate limits, or error behavior. The only added behavioral context is that it supports Jisho filters, which is more about parameter usage than operational behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is succinct, with a clear first sentence stating the tool's purpose and a second sentence providing valuable examples. No redundant information is included, and it is front-loaded with the core purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter search tool with a complete output schema, the description is largely adequate. It clearly communicates what the tool does and how to use the keyword parameter. The main gap is the lack of explicit comparison with the sibling tool get_word, which would help the agent choose between them in context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds concrete examples of valid keyword values (e.g., '#jlpt-n5', '#verb', '水', 'water'), which enriches the schema's brief mention of 'filters and wildcards'. This helps the agent understand the flexibility of the keyword parameter beyond the structural definition.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'Search Jisho.org for words matching a keyword.' It specifies the resource (Jisho.org), the action (search), and the payload (words matching a keyword). It also differentiates itself from the sibling tool get_word by focusing on search rather than retrieval of a specific word, and mentions support for a wide range of filters.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains that the tool supports all Jisho search filters and provides examples, implying it is the appropriate tool for flexible keyword-based search. However, it does not explicitly state when to use this tool over the sibling get_word, nor does it mention any exclusions or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
2 tool updates
v0.1.0- First observed
get_word - First observed
search_words
TDQS
The two tools have distinct purposes: search_words is for flexible keyword/filtered searches, while get_word is for exact slug lookup. They overlap slightly since get_word performs a search internally, but the descriptions clearly differentiate them and guide users to the appropriate tool.
Both tool names follow a consistent verb_noun pattern: search_words and get_word. The verbs are clear and the pattern is predictable, making it easy to infer tool behavior from the name.
With only two tools, the server feels slightly thin for a language dictionary service, though it covers the core search and exact-lookup needs. The count is borderline appropriate for a focused Jisho wrapper but leaves little room for other operations.
The server covers the primary lookup workflows: searching with filters and retrieving a specific word by slug. It lacks dedicated tools for related features like kanji details or example sentences, but most dictionary needs are met through the search functionality.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Jisho.org Japanese-English dictionary MCP (keyless).
- potto-japanOAuthapp.potto
Authoritative JLPT-graded Japanese dataset (kanji, vocab, grammar, history) via MCP and REST.
Free: turn your AI chats into spaced-repetition vocabulary. 13 tools, reads and writes.
Japan data tools for AI agents: calendar (rokuyo), address, name splitting, corporate number lookup
Related MCP Servers
- AlicenseBqualityDmaintenanceProvides dictionary lookup functionality through the API Ninjas Dictionary API, allowing users to search for word definitions and meanings through natural language queries.1MIT
- AlicenseAqualityCmaintenanceProvides AI agents with direct access to local Yomitan dictionary databases for offline Japanese vocabulary lookups, kanji searches, and sentence tokenization. It leverages the Yomitan browser extension's API to enable rich dictionary interactions and Anki flashcard field generation.5136Mozilla Public 2.0
- FlicenseNot gradedqualityCmaintenanceEnables querying and searching the Japanese Address Base Registry (ABR) data definitions and official documentation, including field definitions, datasets, and policy documents through tools like list_datasets, get_dataset, search_field, and search_docs.-
- FlicenseNot gradedqualityBmaintenanceEnables ChatGPT to interact with ZpDIC dictionaries, allowing word lookup, creation, deletion, and overwriting through natural language.-
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/giuliocapecchi/jisho-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server