A Model Context Protocol (MCP) server that wraps the Jikan REST API (unofficial MyAnimeList API), exposing anime and manga data as MCP tools.
Requires Node.js ≥ 18. No API key needed — Jikan is a public API.
npm install
node server/main.js| Tool | Description |
|---|---|
search_anime |
Search anime by title |
get_anime |
Get full details for an anime by ID |
get_top_anime |
Fetch top-ranked anime |
search_manga |
Search manga by title |
STDIO — compatible with Claude Code and Claude Desktop MCP config.
You can expose this MCP server over HTTP using Vercel's serverless functions, making it accessible remotely instead of running it locally via STDIO.
Create api/mcp.js at the repo root:
import { createServer } from '../server/main.js';
import { StreamableHTTPServerTransport } from '@modelcontextprotocol/sdk/server/streamableHttp.js';
export default async function handler(req, res) {
const server = createServer();
const transport = new StreamableHTTPServerTransport({ sessionIdGenerator: undefined });
await server.connect(transport);
await transport.handleRequest(req, res, req.body);
}This requires refactoring
server/main.jsto export acreateServer()function instead of callingserver.connect()directly.
{
"rewrites": [{ "source": "/mcp", "destination": "/api/mcp" }]
}npm i -g vercel
vercelReplace the STDIO config with the deployed URL:
{
"mcpServers": {
"jikan": {
"type": "http",
"url": "https://<your-project>.vercel.app/mcp"
}
}
}