@iflow-mcp/kdcokenny-lsbible 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +529 -0
- package/dist/index.cjs +2269 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +81 -0
- package/dist/index.d.ts +81 -0
- package/dist/index.js +2254 -0
- package/dist/index.js.map +1 -0
- package/dist/mcp/index.cjs +2716 -0
- package/dist/mcp/index.cjs.map +1 -0
- package/dist/mcp/index.d.cts +230 -0
- package/dist/mcp/index.d.ts +230 -0
- package/dist/mcp/index.js +2707 -0
- package/dist/mcp/index.js.map +1 -0
- package/dist/mcp/stdio.cjs +2709 -0
- package/dist/mcp/stdio.cjs.map +1 -0
- package/dist/mcp/stdio.d.cts +1 -0
- package/dist/mcp/stdio.d.ts +1 -0
- package/dist/mcp/stdio.js +2707 -0
- package/dist/mcp/stdio.js.map +1 -0
- package/dist/noop-B62cxzKZ.d.cts +1157 -0
- package/dist/noop-B62cxzKZ.d.ts +1157 -0
- package/package.json +1 -0
|
@@ -0,0 +1,230 @@
|
|
|
1
|
+
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
2
|
+
import { L as LSBibleClient, B as BookName, T as TextSegment } from '../noop-B62cxzKZ.js';
|
|
3
|
+
export { C as CacheOptions, a as CacheProvider, b as CacheTTL, M as MemoryCacheProvider, N as NoopCacheProvider } from '../noop-B62cxzKZ.js';
|
|
4
|
+
import 'zod';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* LSBible MCP Server factory function.
|
|
8
|
+
*
|
|
9
|
+
* Creates a configured MCP server with all tools, resources, and prompts.
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Create and configure an LSBible MCP server.
|
|
14
|
+
*
|
|
15
|
+
* The server exposes:
|
|
16
|
+
* - 4 tools: get_verse, get_passage, get_chapter, search_bible
|
|
17
|
+
* - 2 resources: bible://books, bible://structure/{book}
|
|
18
|
+
* - 2 prompts: bible_study, cross_reference
|
|
19
|
+
*
|
|
20
|
+
* @returns Configured McpServer instance
|
|
21
|
+
*
|
|
22
|
+
* @example
|
|
23
|
+
* ```ts
|
|
24
|
+
* // For stdio transport (local)
|
|
25
|
+
* const server = createLSBibleMCPServer();
|
|
26
|
+
* const transport = new StdioServerTransport();
|
|
27
|
+
* await server.connect(transport);
|
|
28
|
+
* ```
|
|
29
|
+
*
|
|
30
|
+
* @example
|
|
31
|
+
* ```ts
|
|
32
|
+
* // For HTTP transport (Cloudflare Workers)
|
|
33
|
+
* const server = createLSBibleMCPServer();
|
|
34
|
+
* const transport = new StreamableHTTPServerTransport(...);
|
|
35
|
+
* await server.connect(transport);
|
|
36
|
+
* ```
|
|
37
|
+
*/
|
|
38
|
+
declare function createLSBibleMCPServer(): McpServer;
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* MCP tool implementations for LSBible.
|
|
42
|
+
*
|
|
43
|
+
* Provides 4 tools:
|
|
44
|
+
* - get_verse: Fetch a single Bible verse
|
|
45
|
+
* - get_passage: Fetch a range of verses
|
|
46
|
+
* - get_chapter: Fetch an entire chapter
|
|
47
|
+
* - search_bible: Full-text search across the Bible
|
|
48
|
+
*/
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* Register all tools with the MCP server.
|
|
52
|
+
*
|
|
53
|
+
* @param server - McpServer instance
|
|
54
|
+
* @param client - Optional LSBibleClient instance (for custom cache configuration)
|
|
55
|
+
*/
|
|
56
|
+
declare function registerTools(server: McpServer, client?: LSBibleClient): void;
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* MCP resource handlers for LSBible.
|
|
60
|
+
*
|
|
61
|
+
* Provides 2 resources:
|
|
62
|
+
* - bible://books (static): List all 66 books of the Bible
|
|
63
|
+
* - bible://structure/{book} (dynamic): Get chapter/verse structure for a specific book
|
|
64
|
+
*/
|
|
65
|
+
|
|
66
|
+
/**
|
|
67
|
+
* Register all resources with the MCP server.
|
|
68
|
+
*
|
|
69
|
+
* @param server - McpServer instance
|
|
70
|
+
*/
|
|
71
|
+
declare function registerResources(server: McpServer): void;
|
|
72
|
+
|
|
73
|
+
/**
|
|
74
|
+
* MCP prompt templates for LSBible.
|
|
75
|
+
*
|
|
76
|
+
* Provides 2 prompts:
|
|
77
|
+
* - bible_study: Generate a structured Bible study guide
|
|
78
|
+
* - cross_reference: Find related verses and themes
|
|
79
|
+
*/
|
|
80
|
+
|
|
81
|
+
/**
|
|
82
|
+
* Register all prompts with the MCP server.
|
|
83
|
+
*
|
|
84
|
+
* @param server - McpServer instance
|
|
85
|
+
*/
|
|
86
|
+
declare function registerPrompts(server: McpServer): void;
|
|
87
|
+
|
|
88
|
+
/**
|
|
89
|
+
* MCP-specific types and interfaces for LSBible server.
|
|
90
|
+
*/
|
|
91
|
+
|
|
92
|
+
/**
|
|
93
|
+
* MCP Tool input for get_verse
|
|
94
|
+
*/
|
|
95
|
+
interface GetVerseInput {
|
|
96
|
+
book: BookName;
|
|
97
|
+
chapter: number;
|
|
98
|
+
verse: number;
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* MCP Tool output for get_verse
|
|
102
|
+
*/
|
|
103
|
+
interface GetVerseOutput {
|
|
104
|
+
[x: string]: unknown;
|
|
105
|
+
reference: {
|
|
106
|
+
book: string;
|
|
107
|
+
chapter: number;
|
|
108
|
+
verse: number;
|
|
109
|
+
};
|
|
110
|
+
text: string;
|
|
111
|
+
segments: TextSegment[];
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* MCP Tool input for get_passage
|
|
115
|
+
*/
|
|
116
|
+
interface GetPassageInput {
|
|
117
|
+
fromBook: BookName;
|
|
118
|
+
fromChapter: number;
|
|
119
|
+
fromVerse: number;
|
|
120
|
+
toBook: BookName;
|
|
121
|
+
toChapter: number;
|
|
122
|
+
toVerse: number;
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* MCP Tool output for get_passage
|
|
126
|
+
*/
|
|
127
|
+
interface GetPassageOutput {
|
|
128
|
+
[x: string]: unknown;
|
|
129
|
+
reference: {
|
|
130
|
+
from: {
|
|
131
|
+
book: string;
|
|
132
|
+
chapter: number;
|
|
133
|
+
verse: number;
|
|
134
|
+
};
|
|
135
|
+
to: {
|
|
136
|
+
book: string;
|
|
137
|
+
chapter: number;
|
|
138
|
+
verse: number;
|
|
139
|
+
};
|
|
140
|
+
};
|
|
141
|
+
verses: Array<{
|
|
142
|
+
reference: {
|
|
143
|
+
book: string;
|
|
144
|
+
chapter: number;
|
|
145
|
+
verse: number;
|
|
146
|
+
};
|
|
147
|
+
text: string;
|
|
148
|
+
segments: TextSegment[];
|
|
149
|
+
}>;
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* MCP Tool input for get_chapter
|
|
153
|
+
*/
|
|
154
|
+
interface GetChapterInput {
|
|
155
|
+
book: BookName;
|
|
156
|
+
chapter: number;
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* MCP Tool output for get_chapter
|
|
160
|
+
*/
|
|
161
|
+
interface GetChapterOutput {
|
|
162
|
+
[x: string]: unknown;
|
|
163
|
+
reference: {
|
|
164
|
+
book: string;
|
|
165
|
+
chapter: number;
|
|
166
|
+
verseCount: number;
|
|
167
|
+
};
|
|
168
|
+
verses: Array<{
|
|
169
|
+
reference: {
|
|
170
|
+
book: string;
|
|
171
|
+
chapter: number;
|
|
172
|
+
verse: number;
|
|
173
|
+
};
|
|
174
|
+
text: string;
|
|
175
|
+
segments: TextSegment[];
|
|
176
|
+
}>;
|
|
177
|
+
}
|
|
178
|
+
/**
|
|
179
|
+
* MCP Tool input for search_bible
|
|
180
|
+
*/
|
|
181
|
+
interface SearchBibleInput {
|
|
182
|
+
query: string;
|
|
183
|
+
includeDistribution?: boolean;
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* MCP Tool output for search_bible
|
|
187
|
+
*/
|
|
188
|
+
interface SearchBibleOutput {
|
|
189
|
+
[x: string]: unknown;
|
|
190
|
+
query: string;
|
|
191
|
+
resultCount: number;
|
|
192
|
+
results: Array<{
|
|
193
|
+
reference: {
|
|
194
|
+
book: string;
|
|
195
|
+
chapter: number;
|
|
196
|
+
verse: number;
|
|
197
|
+
};
|
|
198
|
+
text: string;
|
|
199
|
+
segments: TextSegment[];
|
|
200
|
+
}>;
|
|
201
|
+
distribution?: {
|
|
202
|
+
bySection: Record<string, number>;
|
|
203
|
+
byBook: Record<string, number>;
|
|
204
|
+
} | undefined;
|
|
205
|
+
}
|
|
206
|
+
/**
|
|
207
|
+
* Book info for resources
|
|
208
|
+
*/
|
|
209
|
+
interface BookResourceInfo {
|
|
210
|
+
name: string;
|
|
211
|
+
testament: string;
|
|
212
|
+
chapters: number;
|
|
213
|
+
verses: number;
|
|
214
|
+
}
|
|
215
|
+
/**
|
|
216
|
+
* Book structure resource
|
|
217
|
+
*/
|
|
218
|
+
interface BookStructureResource {
|
|
219
|
+
uri: string;
|
|
220
|
+
book: string;
|
|
221
|
+
testament: string;
|
|
222
|
+
totalChapters: number;
|
|
223
|
+
totalVerses: number;
|
|
224
|
+
chapters: Array<{
|
|
225
|
+
chapter: number;
|
|
226
|
+
verses: number;
|
|
227
|
+
}>;
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
export { type BookResourceInfo, type BookStructureResource, type GetChapterInput, type GetChapterOutput, type GetPassageInput, type GetPassageOutput, type GetVerseInput, type GetVerseOutput, LSBibleClient, type SearchBibleInput, type SearchBibleOutput, createLSBibleMCPServer, registerPrompts, registerResources, registerTools };
|