An MCP server for working with JW.org content — Bible scripture lookup with study notes, workbook materials, Watchtower articles, and video captions.
claude mcp add jw-mcp -- npx -y jw-mcpDownload the latest jw-mcp.mcpb from Releases and open it — Claude Desktop will install it automatically.
Or add manually to your config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS, %APPDATA%\Claude\claude_desktop_config.json on Windows):
{
"mcpServers": {
"jw-mcp": {
"command": "npx",
"args": ["-y", "jw-mcp"]
}
}
}npx -y jw-mcpAll tools support multiple languages via the langwritten parameter (E = English, S = Spanish, F = French, etc.).
Search for Bible books by name, abbreviation, or number.
{ "query": "matthew" }Get plain verse text from wol.jw.org. Books are numbered 1-66 (1-39 OT, 40-66 NT).
{ "book": 43, "chapter": 3, "verse": 16 }Get verses with study notes, cross-references, and research articles. Supports ranges.
{
"book": 40, "chapter": 5, "verse": "3-5",
"fields": ["verses", "study_notes", "study_articles"]
}Available fields: verses, study_notes, study_articles, cross_references, chapter_level, combined_text
Generate JW.org URLs for verses, ranges, or chapters — useful for adding clickable links to documents.
{ "book": 19, "chapter": 83, "verse": "18" }
{ "book": 23, "chapter": 46, "verse": "9-11" }
{ "book": 40, "chapter": 5 }Get available Christian Life and Ministry workbook weeks for the current or a specific issue.
{ "issue": "20250500", "langwritten": "E" }Download and parse a workbook week's RTF content to clean plain text (70% token reduction).
{ "url": "https://cfp2.jw-cdn.org/a/clm_E_202505_01.rtf" }Get available Watchtower study articles. Automatically uses the correct issue (published 2 months ahead of study period).
{ "issue": "20250300", "langwritten": "E" }Download and parse a Watchtower article's RTF content to clean plain text (70% token reduction).
{ "url": "https://cfp2.jw-cdn.org/a/w_E_202509_01.rtf" }Fetch video captions and metadata by video ID or any JW.org URL.
{ "video_id": "pub-jwbvod25_17_VIDEO" }Also accepts full JW.org URLs — the video ID is extracted automatically.
- "Could not read package.json" — Use absolute path in Claude Desktop config
- Server disconnects — Ensure Node.js is installed (
npm install) - Permission denied —
chmod +x start-server.sh
npm start # stdio mode (local)
npm run start:http # HTTP mode (testing)Built with Node.js, MCP SDK, node-fetch, and cheerio.
MIT




