jstage-mcp
Exposes J-STAGE WebAPI as four tools for searching articles, issues, journals, and resolving DOIs, returning bilingual JSON with attribution.
README
jstage-mcp
A FastMCP stdio server exposing the J-STAGE WebAPI as four tools for use with Claude Desktop.
Tools
| Tool | Purpose |
|---|---|
jstage_search_articles |
Full-text / author / title / journal search across J-STAGE articles |
jstage_list_issues |
Volume & issue spine for a known title, ISSN, or cdjournal |
jstage_search_journals |
Find journals by title / ISSN / publisher (see Limitations) |
jstage_get_article_by_doi |
Resolve a J-STAGE DOI to its full article record |
All tools return JSON with bilingual (English / Japanese) titles, authors, and journal names where J-STAGE provides them. Every response includes a powered_by field per the JST attribution requirement.
Install (Windows, alongside CiNii / OpenAlex / Semantic Scholar)
The server is single-file and has only three runtime dependencies. Use a dedicated virtual environment so it doesn't collide with other MCP stacks.
# from the directory containing server.py
py -3.11 -m venv .venv
.venv\Scripts\activate
pip install -e .
Verify the server boots:
.venv\Scripts\python.exe server.py --help
Claude Desktop configuration
Add an entry to %APPDATA%\Claude\claude_desktop_config.json under mcpServers. Adjust the absolute paths to match your install location.
{
"mcpServers": {
"jstage": {
"command": "C:\\path\\to\\jstage-mcp\\.venv\\Scripts\\python.exe",
"args": ["C:\\path\\to\\jstage-mcp\\server.py"]
}
}
}
Restart Claude Desktop. The four tools should appear under "jstage" in the tool list.
Rate limiting
The server enforces a one-second minimum interval between outbound requests in line with JST's prohibition on bulk downloads. The limit is per-process; if you run multiple Claude Desktop sessions concurrently you may exceed it, so don't.
Limitations
jstage_search_journalsruns against a fallback. J-STAGE announced a journal-search endpoint (service=4) on 26 March 2026, but the public API currently rejects that service code withERR_004. The tool probesservice=4first and, on failure, falls back toservice=2(volume search) with results deduplicated by journal. When JST activatesservice=4, the tool will use it natively without a contract change.jstage_get_article_by_doirequires J-STAGE-issued DOIs. The WebAPI does not expose adoi=query parameter. The tool decomposes DOIs that follow J-STAGE's pattern (10.<registrant>/<cdjournal>.<vol>.<no>_<page>) intocdjournal+voland matches the result against the response. For DOIs outside that pattern the tool returns the doi.org resolution URL with a note.- Commercial use requires registration. Per the JST Terms of Use, commercial use needs an application form sent to
contact@jstage.jst.go.jp. Research and teaching use does not.
API notes
Endpoint: https://api.jstage.jst.go.jp/searchapi/do
Service codes used:
service=2— Volumes/issuesservice=3— Article searchservice=4— Journal search (documented, not yet live)
Valid article-search query parameters confirmed against the live API:
material, article, author, affil, keyword, abst, text, issn, cdjournal, vol, no, pubyearfrom, pubyearto, start, count.
Attribution
Powered by J-STAGE
This string is included in every tool response.
Citation
If this software supports your research, please cite it. See CITATION.cff, or use the "Cite this repository" button on GitHub.
License
MIT © 2026 Christopher Gerteis.
This license covers the server code only. It grants no rights over J-STAGE content or the J-STAGE WebAPI, which remain governed by JST's Terms of Use.
Disclaimer
A research tool, maintained on a best-effort basis and provided "as is", without warranty. Not affiliated with or endorsed by the Japan Science and Technology Agency. JST does not provide support for the WebAPI.
Author
Dr Christopher Gerteis, SOAS University of London.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.