home / mcp / kakuyomu mcp server
小説投稿サイト「カクヨム」のコンテンツを読み込むためのMCP(Model Context Protocol)サーバーです。
Configuration
View docs{
"mcpServers": {
"106--kakuyomu-mcp": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"ubiq/kakuyomu-mcp:latest"
]
}
}
}You can load Kakuyomu content into an agent using an MCP server that exposes functions to search, browse top pages, list episodes, and fetch episode text. This enables seamless querying and content retrieval for your prompted workflows while keeping interaction simple and structured.
Connect to the Kakuyomu MCP server from your MCP client. You will access the following functions: get_top_page to fetch the latest works, search_works to find works by keyword with filters, get_work_episodes to retrieve episodes for a specific work, and get_episode_content to read the text of a chosen episode. Use these endpoints to build prompts that summarize or analyze Kakuyomu content.
Typical usage patterns include: 1) fetch the latest works to discover new content, 2) search for a specific genre or keyword, 3) pick a work and load its episodes, 4) read and summarize the first several episodes. Each function accepts parameters as shown in the available tool definitions and returns structured data you can present or summarize in your workflow.
Prerequisites: Python 3.10 or newer and Poetry for dependency management.
Step-by-step setup for local development and testing is shown below. Follow these commands exactly to ensure the server runs correctly.
Clone the project, install dependencies, and run the server locally or in Docker as described in the commands.
To enable interaction from your MCP client, include a stdio MCP endpoint that runs the Kakuyomu MCP server locally via Docker. The example below shows how Claude Desktop can connect to a running container.
{
"mcpServers": {
"kakuyomu_mcp": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"ubiq/kakuyomu-mcp:latest"
],
"env": {}
}
}
}Be mindful of HTML structure changes on Kakuyomu that can affect data extraction. To avoid excessive scraping, set reasonable limits on the number of works retrieved per request. If an error occurs, return a user-friendly message in Japanese or your preferred language.
Fetches the latest works from Kakuyomu's top page with an optional limit to control how many results are returned.
Search Kakuyomu works by keyword with optional filters such as page, serial_status, genre_name, review counts, character counts, and date ranges.
Retrieve the list of episodes for a specific work by providing the work_id and optional limit on the number of episodes.
Load the full text content of a specific episode by providing work_id and episode_id.