jw-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| JW_INVITE_CODE | No | If set, users with this code can register without admin approval. | |
| JW_ADMIN_EMAILS | No | Comma-separated list of emails to grant admin privileges. | |
| JW_INTERNAL_TOKEN | No | Internal token for dashboard API. Generate with openssl rand -hex 32. | |
| JW_SECURE_COOKIES | No | Set to 'false' for local development without HTTPS, otherwise true. | |
| JW_SESSION_SECRET | No | Secret for session cookies. Generate with openssl rand -hex 32. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_jw_captionsA | Fetches video captions from JW.org by video ID or URL. Accepts either a direct video ID (e.g., "pub-jwbvod25_17_VIDEO") or a JW.org URL (e.g., "https://www.jw.org/finder?srcid=jwlshare&wtlocale=E&lank=pub-jwbvod25_17_VIDEO") |
| getWorkbookLinksA | STEP 1: Get JW.org "Our Christian Life and Ministry" (CLM) meeting workbook weeks. When a user asks for CLM workbook content, use this tool FIRST to show them available weeks. Returns weekly titles like "May 5-11 (Proverbs 12)" with their RTF download URLs. Automatically uses current month/year for the issue. |
| getWorkbookContentA | STEP 2: Get the actual CLM workbook content after user chooses a week. Use this tool AFTER getWorkbookLinks when user specifies which week they want (e.g., "May 5-11" or "June 30-July 6"). Takes the RTF URL from Step 1 results, downloads the RTF file, parses it to clean plain text, and returns the formatted workbook content with proper line breaks and structure. |
| getWatchtowerLinksA | STEP 1: Get JW.org Watchtower study articles. When a user asks for current/this week's Watchtower content, use this tool FIRST without any parameters — it automatically picks the right issue (Watchtower study articles are published 2 months ahead, so July 2026 studies come from the May 2026 issue). Each article includes machine-readable weekStart/weekEnd (ISO dates) and isCurrentWeek, so you never have to parse the date out of the title, plus wolUrl — a human-readable wol.jw.org link for the current week's article. |
| getWatchtowerContentA | STEP 2: Get the actual Watchtower article content after the user chooses an article. Takes the RTF URL from getWatchtowerLinks, downloads and converts it to clean plain text (parsedText), and additionally returns a |
| search_bible_booksA | Search for Bible books by name or abbreviation and get their book number (1-66), which the other scripture tools require. Searches English names/abbreviations and, when langwritten is set, that language's names and abbreviations too. Examples: "matt" -> Matthew (40), "잠언" or "잠" (with langwritten "KO") -> 잠언 (20), "1 john" -> 1 John (62). |
| get_bible_verseA | Get plain Bible verse text (New World Translation, Study Edition) from wol.jw.org. Returns the COMPLETE verse — poetic books such as Psalms and Proverbs are stored as separate lines on WOL and are joined here, so contrast verses come back whole. For study notes and cross-references use get_verse_with_study instead. |
| get_verse_with_studyA | Get Bible verse(s) with comprehensive study content from wol.jw.org. Supports single verses or ranges (e.g., "14-16"). Returns verse text, study notes, cross-references, research articles from the Research Guide, and chapter outlines. Field selection allows you to customize what content is returned. |
| get_bible_verse_urlA | Get the jw.org URL for a Bible verse or range of verses. Returns a direct link to view the scripture on jw.org. Supports single verses (e.g., verse: "18"), verse ranges (e.g., verse: "14-16"), and comma-separated verses (e.g., verse: "1,3,5" - will convert to range if contiguous). Use search_bible_books to find book numbers. Perfect for adding clickable scripture links to markdown documents. |
| get_lesson_contentB | 「하느님의 교훈이 담긴 성경 이야기 (훈)」 특정 과의 내용을 가져옵니다. 1-116과까지 지원합니다. |
| get_lesson_listB | 「하느님의 교훈이 담긴 성경 이야기 (훈)」 전체 목록을 가져옵니다. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 11 tools
Each tool targets a distinct resource or step in a workflow. The workbook and Watchtower tools are explicitly paired by step and publication, while Bible tools clearly separate book search, plain text, study content, and URL generation. No two tools appear to do the same thing.
The tool names mix camelCase (getWorkbookLinks) and snake_case (search_bible_books) conventions, and use both 'get' and 'search' as verbs. The pattern is evident but not uniformly applied, making it a mixed convention that remains readable.
With 11 tools, the set is well-scoped for the server's purpose of accessing JW.org resources. Each tool covers a distinct function within the overall workflow, and the count feels appropriate without being excessive or too thin.
The server covers the primary workflows: retrieving CLM workbook weeks and content, Watchtower articles and detailed content, Bible book lookup, plain and study-enhanced verses, verse URLs, lesson lists/content, and video captions. No obvious gaps hamper the intended use cases.