@aniketbiswas/obsidian-mcp-server 1.0.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/LICENSE +21 -0
- package/README.md +232 -0
- package/build/index.d.ts +26 -0
- package/build/index.d.ts.map +1 -0
- package/build/index.js +148 -0
- package/build/index.js.map +1 -0
- package/build/prompts/index.d.ts +33 -0
- package/build/prompts/index.d.ts.map +1 -0
- package/build/prompts/index.js +152 -0
- package/build/prompts/index.js.map +1 -0
- package/build/prompts/obsidian.d.ts +17 -0
- package/build/prompts/obsidian.d.ts.map +1 -0
- package/build/prompts/obsidian.js +305 -0
- package/build/prompts/obsidian.js.map +1 -0
- package/build/resources/index.d.ts +31 -0
- package/build/resources/index.d.ts.map +1 -0
- package/build/resources/index.js +111 -0
- package/build/resources/index.js.map +1 -0
- package/build/resources/obsidian.d.ts +19 -0
- package/build/resources/obsidian.d.ts.map +1 -0
- package/build/resources/obsidian.js +246 -0
- package/build/resources/obsidian.js.map +1 -0
- package/build/tools/_template.d.ts +23 -0
- package/build/tools/_template.d.ts.map +1 -0
- package/build/tools/_template.js +124 -0
- package/build/tools/_template.js.map +1 -0
- package/build/tools/calculator.d.ts +32 -0
- package/build/tools/calculator.d.ts.map +1 -0
- package/build/tools/calculator.js +130 -0
- package/build/tools/calculator.js.map +1 -0
- package/build/tools/daily-notes.d.ts +19 -0
- package/build/tools/daily-notes.d.ts.map +1 -0
- package/build/tools/daily-notes.js +469 -0
- package/build/tools/daily-notes.js.map +1 -0
- package/build/tools/greeting.d.ts +23 -0
- package/build/tools/greeting.d.ts.map +1 -0
- package/build/tools/greeting.js +111 -0
- package/build/tools/greeting.js.map +1 -0
- package/build/tools/index.d.ts +28 -0
- package/build/tools/index.d.ts.map +1 -0
- package/build/tools/index.js +46 -0
- package/build/tools/index.js.map +1 -0
- package/build/tools/links.d.ts +19 -0
- package/build/tools/links.d.ts.map +1 -0
- package/build/tools/links.js +467 -0
- package/build/tools/links.js.map +1 -0
- package/build/tools/metadata.d.ts +18 -0
- package/build/tools/metadata.d.ts.map +1 -0
- package/build/tools/metadata.js +447 -0
- package/build/tools/metadata.js.map +1 -0
- package/build/tools/navigation.d.ts +19 -0
- package/build/tools/navigation.d.ts.map +1 -0
- package/build/tools/navigation.js +378 -0
- package/build/tools/navigation.js.map +1 -0
- package/build/tools/notes.d.ts +19 -0
- package/build/tools/notes.d.ts.map +1 -0
- package/build/tools/notes.js +622 -0
- package/build/tools/notes.js.map +1 -0
- package/build/tools/search.d.ts +19 -0
- package/build/tools/search.d.ts.map +1 -0
- package/build/tools/search.js +418 -0
- package/build/tools/search.js.map +1 -0
- package/build/tools/templates.d.ts +18 -0
- package/build/tools/templates.d.ts.map +1 -0
- package/build/tools/templates.js +581 -0
- package/build/tools/templates.js.map +1 -0
- package/build/tools/vault.d.ts +19 -0
- package/build/tools/vault.d.ts.map +1 -0
- package/build/tools/vault.js +403 -0
- package/build/tools/vault.js.map +1 -0
- package/build/types/index.d.ts +11 -0
- package/build/types/index.d.ts.map +1 -0
- package/build/types/index.js +11 -0
- package/build/types/index.js.map +1 -0
- package/build/types/obsidian.d.ts +329 -0
- package/build/types/obsidian.d.ts.map +1 -0
- package/build/types/obsidian.js +38 -0
- package/build/types/obsidian.js.map +1 -0
- package/build/utils/client.d.ts +201 -0
- package/build/utils/client.d.ts.map +1 -0
- package/build/utils/client.js +656 -0
- package/build/utils/client.js.map +1 -0
- package/build/utils/config.d.ts +43 -0
- package/build/utils/config.d.ts.map +1 -0
- package/build/utils/config.js +117 -0
- package/build/utils/config.js.map +1 -0
- package/build/utils/frontmatter.d.ts +90 -0
- package/build/utils/frontmatter.d.ts.map +1 -0
- package/build/utils/frontmatter.js +306 -0
- package/build/utils/frontmatter.js.map +1 -0
- package/build/utils/index.d.ts +13 -0
- package/build/utils/index.d.ts.map +1 -0
- package/build/utils/index.js +13 -0
- package/build/utils/index.js.map +1 -0
- package/build/utils/markdown.d.ts +134 -0
- package/build/utils/markdown.d.ts.map +1 -0
- package/build/utils/markdown.js +330 -0
- package/build/utils/markdown.js.map +1 -0
- package/package.json +60 -0
|
@@ -0,0 +1,403 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ============================================================================
|
|
3
|
+
* OBSIDIAN MCP - Vault Tools
|
|
4
|
+
* ============================================================================
|
|
5
|
+
*
|
|
6
|
+
* Tools for exploring and managing the Obsidian vault structure.
|
|
7
|
+
* Includes listing files/folders, getting vault statistics, and file operations.
|
|
8
|
+
* ============================================================================
|
|
9
|
+
*/
|
|
10
|
+
import { z } from "zod";
|
|
11
|
+
import { ObsidianApiError } from "../types/obsidian.js";
|
|
12
|
+
/**
|
|
13
|
+
* Register vault-related tools with the MCP server.
|
|
14
|
+
*
|
|
15
|
+
* @param server - The MCP server instance
|
|
16
|
+
* @param client - The Obsidian API client
|
|
17
|
+
*/
|
|
18
|
+
export function registerVaultTools(server, client) {
|
|
19
|
+
// ---------------------------------------------------------------------------
|
|
20
|
+
// TOOL: vault_status
|
|
21
|
+
// ---------------------------------------------------------------------------
|
|
22
|
+
// Check the connection status and get basic vault information.
|
|
23
|
+
// ---------------------------------------------------------------------------
|
|
24
|
+
server.tool("vault_status", "Check the connection to Obsidian and get server status information. " +
|
|
25
|
+
"Use this to verify the MCP server can communicate with Obsidian.", {}, async () => {
|
|
26
|
+
try {
|
|
27
|
+
const status = await client.getServerStatus();
|
|
28
|
+
return {
|
|
29
|
+
content: [
|
|
30
|
+
{
|
|
31
|
+
type: "text",
|
|
32
|
+
text: JSON.stringify({
|
|
33
|
+
success: true,
|
|
34
|
+
connected: status.authenticated,
|
|
35
|
+
obsidianVersion: status.versions.obsidian,
|
|
36
|
+
apiVersion: status.versions.self,
|
|
37
|
+
service: status.service,
|
|
38
|
+
}, null, 2),
|
|
39
|
+
},
|
|
40
|
+
],
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
catch (error) {
|
|
44
|
+
const message = error instanceof ObsidianApiError
|
|
45
|
+
? error.message
|
|
46
|
+
: "Failed to connect to Obsidian";
|
|
47
|
+
return {
|
|
48
|
+
content: [
|
|
49
|
+
{
|
|
50
|
+
type: "text",
|
|
51
|
+
text: JSON.stringify({
|
|
52
|
+
success: false,
|
|
53
|
+
error: message,
|
|
54
|
+
hint: "Make sure Obsidian is running and the Local REST API plugin is enabled.",
|
|
55
|
+
}, null, 2),
|
|
56
|
+
},
|
|
57
|
+
],
|
|
58
|
+
isError: true,
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
// ---------------------------------------------------------------------------
|
|
63
|
+
// TOOL: list_files
|
|
64
|
+
// ---------------------------------------------------------------------------
|
|
65
|
+
// List files and folders in the vault or a specific directory.
|
|
66
|
+
// ---------------------------------------------------------------------------
|
|
67
|
+
server.tool("list_files", "List files and folders in the Obsidian vault. " +
|
|
68
|
+
"Can list the root directory or a specific folder. " +
|
|
69
|
+
"Returns names of files and directories (directories end with /).", {
|
|
70
|
+
path: z
|
|
71
|
+
.string()
|
|
72
|
+
.optional()
|
|
73
|
+
.describe("Directory path relative to vault root. Leave empty for root directory."),
|
|
74
|
+
}, async ({ path }) => {
|
|
75
|
+
try {
|
|
76
|
+
const files = await client.listDirectory(path);
|
|
77
|
+
// Separate files and directories
|
|
78
|
+
const directories = files.filter((f) => f.endsWith("/"));
|
|
79
|
+
const regularFiles = files.filter((f) => !f.endsWith("/"));
|
|
80
|
+
return {
|
|
81
|
+
content: [
|
|
82
|
+
{
|
|
83
|
+
type: "text",
|
|
84
|
+
text: JSON.stringify({
|
|
85
|
+
success: true,
|
|
86
|
+
path: path || "/",
|
|
87
|
+
directories: directories.map((d) => d.slice(0, -1)),
|
|
88
|
+
files: regularFiles,
|
|
89
|
+
totalItems: files.length,
|
|
90
|
+
}, null, 2),
|
|
91
|
+
},
|
|
92
|
+
],
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
catch (error) {
|
|
96
|
+
const message = error instanceof ObsidianApiError ? error.message : String(error);
|
|
97
|
+
return {
|
|
98
|
+
content: [
|
|
99
|
+
{
|
|
100
|
+
type: "text",
|
|
101
|
+
text: `Error listing files: ${message}`,
|
|
102
|
+
},
|
|
103
|
+
],
|
|
104
|
+
isError: true,
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
// ---------------------------------------------------------------------------
|
|
109
|
+
// TOOL: list_all_files
|
|
110
|
+
// ---------------------------------------------------------------------------
|
|
111
|
+
// Recursively list all files in the vault.
|
|
112
|
+
// ---------------------------------------------------------------------------
|
|
113
|
+
server.tool("list_all_files", "Recursively list all files in the Obsidian vault. " +
|
|
114
|
+
"Can start from a specific directory and filter by file extension. " +
|
|
115
|
+
"Useful for getting a complete view of vault structure.", {
|
|
116
|
+
path: z
|
|
117
|
+
.string()
|
|
118
|
+
.optional()
|
|
119
|
+
.describe("Starting directory path. Leave empty for entire vault."),
|
|
120
|
+
extensions: z
|
|
121
|
+
.array(z.string())
|
|
122
|
+
.optional()
|
|
123
|
+
.describe("File extensions to filter by (e.g., ['md', 'pdf']). Leave empty for all files."),
|
|
124
|
+
maxDepth: z
|
|
125
|
+
.number()
|
|
126
|
+
.int()
|
|
127
|
+
.min(1)
|
|
128
|
+
.max(20)
|
|
129
|
+
.optional()
|
|
130
|
+
.default(10)
|
|
131
|
+
.describe("Maximum depth to recurse into subdirectories (default: 10)."),
|
|
132
|
+
}, async ({ path, extensions, maxDepth }) => {
|
|
133
|
+
try {
|
|
134
|
+
const items = await client.listAllFiles(path || "", maxDepth || 10);
|
|
135
|
+
// Filter by extension if specified
|
|
136
|
+
let filteredItems = items;
|
|
137
|
+
if (extensions && extensions.length > 0) {
|
|
138
|
+
const extSet = new Set(extensions.map((e) => e.toLowerCase()));
|
|
139
|
+
filteredItems = items.filter((item) => item.type === "directory" ||
|
|
140
|
+
(item.extension && extSet.has(item.extension.toLowerCase())));
|
|
141
|
+
}
|
|
142
|
+
// Organize by type
|
|
143
|
+
const directories = filteredItems
|
|
144
|
+
.filter((i) => i.type === "directory")
|
|
145
|
+
.map((i) => i.path);
|
|
146
|
+
const files = filteredItems
|
|
147
|
+
.filter((i) => i.type === "file")
|
|
148
|
+
.map((i) => ({
|
|
149
|
+
path: i.path,
|
|
150
|
+
extension: i.extension,
|
|
151
|
+
}));
|
|
152
|
+
// Get extension statistics
|
|
153
|
+
const extensionCounts = {};
|
|
154
|
+
for (const file of files) {
|
|
155
|
+
const ext = file.extension || "no-extension";
|
|
156
|
+
extensionCounts[ext] = (extensionCounts[ext] || 0) + 1;
|
|
157
|
+
}
|
|
158
|
+
return {
|
|
159
|
+
content: [
|
|
160
|
+
{
|
|
161
|
+
type: "text",
|
|
162
|
+
text: JSON.stringify({
|
|
163
|
+
success: true,
|
|
164
|
+
basePath: path || "/",
|
|
165
|
+
totalDirectories: directories.length,
|
|
166
|
+
totalFiles: files.length,
|
|
167
|
+
extensionCounts,
|
|
168
|
+
directories: directories.slice(0, 100), // Limit output
|
|
169
|
+
files: files.slice(0, 200), // Limit output
|
|
170
|
+
truncated: directories.length > 100 || files.length > 200
|
|
171
|
+
? "Results truncated. Use path filter for specific directories."
|
|
172
|
+
: undefined,
|
|
173
|
+
}, null, 2),
|
|
174
|
+
},
|
|
175
|
+
],
|
|
176
|
+
};
|
|
177
|
+
}
|
|
178
|
+
catch (error) {
|
|
179
|
+
const message = error instanceof ObsidianApiError ? error.message : String(error);
|
|
180
|
+
return {
|
|
181
|
+
content: [
|
|
182
|
+
{
|
|
183
|
+
type: "text",
|
|
184
|
+
text: `Error listing files: ${message}`,
|
|
185
|
+
},
|
|
186
|
+
],
|
|
187
|
+
isError: true,
|
|
188
|
+
};
|
|
189
|
+
}
|
|
190
|
+
});
|
|
191
|
+
// ---------------------------------------------------------------------------
|
|
192
|
+
// TOOL: get_vault_structure
|
|
193
|
+
// ---------------------------------------------------------------------------
|
|
194
|
+
// Get a tree-like structure of the vault.
|
|
195
|
+
// ---------------------------------------------------------------------------
|
|
196
|
+
server.tool("get_vault_structure", "Get a tree-like structure of folders in the Obsidian vault. " +
|
|
197
|
+
"Useful for understanding the vault organization. " +
|
|
198
|
+
"Only shows directories, not individual files.", {
|
|
199
|
+
path: z
|
|
200
|
+
.string()
|
|
201
|
+
.optional()
|
|
202
|
+
.describe("Starting directory path. Leave empty for entire vault."),
|
|
203
|
+
maxDepth: z
|
|
204
|
+
.number()
|
|
205
|
+
.int()
|
|
206
|
+
.min(1)
|
|
207
|
+
.max(10)
|
|
208
|
+
.optional()
|
|
209
|
+
.default(5)
|
|
210
|
+
.describe("Maximum depth to show (default: 5)."),
|
|
211
|
+
}, async ({ path, maxDepth }) => {
|
|
212
|
+
try {
|
|
213
|
+
const items = await client.listAllFiles(path || "", maxDepth || 5);
|
|
214
|
+
// Build tree structure
|
|
215
|
+
const tree = buildDirectoryTree(items.filter((i) => i.type === "directory"), path || "");
|
|
216
|
+
// Format as tree string
|
|
217
|
+
const treeString = formatTree(tree, "");
|
|
218
|
+
return {
|
|
219
|
+
content: [
|
|
220
|
+
{
|
|
221
|
+
type: "text",
|
|
222
|
+
text: `Vault Structure:\n\n${treeString || "(empty)"}`,
|
|
223
|
+
},
|
|
224
|
+
],
|
|
225
|
+
};
|
|
226
|
+
}
|
|
227
|
+
catch (error) {
|
|
228
|
+
const message = error instanceof ObsidianApiError ? error.message : String(error);
|
|
229
|
+
return {
|
|
230
|
+
content: [
|
|
231
|
+
{
|
|
232
|
+
type: "text",
|
|
233
|
+
text: `Error getting vault structure: ${message}`,
|
|
234
|
+
},
|
|
235
|
+
],
|
|
236
|
+
isError: true,
|
|
237
|
+
};
|
|
238
|
+
}
|
|
239
|
+
});
|
|
240
|
+
// ---------------------------------------------------------------------------
|
|
241
|
+
// TOOL: get_file_stats
|
|
242
|
+
// ---------------------------------------------------------------------------
|
|
243
|
+
// Get statistics about files in a directory.
|
|
244
|
+
// ---------------------------------------------------------------------------
|
|
245
|
+
server.tool("get_file_stats", "Get statistics about files in the vault or a specific directory. " +
|
|
246
|
+
"Shows file counts by extension, total files, and directory counts.", {
|
|
247
|
+
path: z
|
|
248
|
+
.string()
|
|
249
|
+
.optional()
|
|
250
|
+
.describe("Directory path to analyze. Leave empty for entire vault."),
|
|
251
|
+
}, async ({ path }) => {
|
|
252
|
+
try {
|
|
253
|
+
const items = await client.listAllFiles(path || "", 15);
|
|
254
|
+
const files = items.filter((i) => i.type === "file");
|
|
255
|
+
const directories = items.filter((i) => i.type === "directory");
|
|
256
|
+
// Count by extension
|
|
257
|
+
const extensionCounts = {};
|
|
258
|
+
for (const file of files) {
|
|
259
|
+
const ext = file.extension || "no-extension";
|
|
260
|
+
extensionCounts[ext] = (extensionCounts[ext] || 0) + 1;
|
|
261
|
+
}
|
|
262
|
+
// Sort extensions by count
|
|
263
|
+
const sortedExtensions = Object.entries(extensionCounts)
|
|
264
|
+
.sort((a, b) => b[1] - a[1])
|
|
265
|
+
.reduce((obj, [k, v]) => {
|
|
266
|
+
obj[k] = v;
|
|
267
|
+
return obj;
|
|
268
|
+
}, {});
|
|
269
|
+
// Count markdown files
|
|
270
|
+
const markdownCount = extensionCounts["md"] || 0;
|
|
271
|
+
return {
|
|
272
|
+
content: [
|
|
273
|
+
{
|
|
274
|
+
type: "text",
|
|
275
|
+
text: JSON.stringify({
|
|
276
|
+
success: true,
|
|
277
|
+
path: path || "/",
|
|
278
|
+
statistics: {
|
|
279
|
+
totalFiles: files.length,
|
|
280
|
+
totalDirectories: directories.length,
|
|
281
|
+
markdownNotes: markdownCount,
|
|
282
|
+
otherFiles: files.length - markdownCount,
|
|
283
|
+
},
|
|
284
|
+
byExtension: sortedExtensions,
|
|
285
|
+
}, null, 2),
|
|
286
|
+
},
|
|
287
|
+
],
|
|
288
|
+
};
|
|
289
|
+
}
|
|
290
|
+
catch (error) {
|
|
291
|
+
const message = error instanceof ObsidianApiError ? error.message : String(error);
|
|
292
|
+
return {
|
|
293
|
+
content: [
|
|
294
|
+
{
|
|
295
|
+
type: "text",
|
|
296
|
+
text: `Error getting file stats: ${message}`,
|
|
297
|
+
},
|
|
298
|
+
],
|
|
299
|
+
isError: true,
|
|
300
|
+
};
|
|
301
|
+
}
|
|
302
|
+
});
|
|
303
|
+
// ---------------------------------------------------------------------------
|
|
304
|
+
// TOOL: delete_file
|
|
305
|
+
// ---------------------------------------------------------------------------
|
|
306
|
+
// Delete a file from the vault.
|
|
307
|
+
// ---------------------------------------------------------------------------
|
|
308
|
+
server.tool("delete_file", "Delete a file from the Obsidian vault. " +
|
|
309
|
+
"WARNING: This permanently removes the file. Use with caution.", {
|
|
310
|
+
path: z.string().describe("Path to the file to delete (relative to vault root)."),
|
|
311
|
+
confirm: z
|
|
312
|
+
.boolean()
|
|
313
|
+
.describe("Set to true to confirm deletion. Required safety check."),
|
|
314
|
+
}, async ({ path, confirm }) => {
|
|
315
|
+
if (!confirm) {
|
|
316
|
+
return {
|
|
317
|
+
content: [
|
|
318
|
+
{
|
|
319
|
+
type: "text",
|
|
320
|
+
text: "Deletion not confirmed. Set confirm=true to delete the file.",
|
|
321
|
+
},
|
|
322
|
+
],
|
|
323
|
+
isError: true,
|
|
324
|
+
};
|
|
325
|
+
}
|
|
326
|
+
try {
|
|
327
|
+
await client.deleteFile(path);
|
|
328
|
+
return {
|
|
329
|
+
content: [
|
|
330
|
+
{
|
|
331
|
+
type: "text",
|
|
332
|
+
text: JSON.stringify({
|
|
333
|
+
success: true,
|
|
334
|
+
message: `File deleted: ${path}`,
|
|
335
|
+
}, null, 2),
|
|
336
|
+
},
|
|
337
|
+
],
|
|
338
|
+
};
|
|
339
|
+
}
|
|
340
|
+
catch (error) {
|
|
341
|
+
const message = error instanceof ObsidianApiError ? error.message : String(error);
|
|
342
|
+
return {
|
|
343
|
+
content: [
|
|
344
|
+
{
|
|
345
|
+
type: "text",
|
|
346
|
+
text: `Error deleting file: ${message}`,
|
|
347
|
+
},
|
|
348
|
+
],
|
|
349
|
+
isError: true,
|
|
350
|
+
};
|
|
351
|
+
}
|
|
352
|
+
});
|
|
353
|
+
}
|
|
354
|
+
/**
|
|
355
|
+
* Build a tree structure from a flat list of directories.
|
|
356
|
+
*/
|
|
357
|
+
function buildDirectoryTree(directories, basePath) {
|
|
358
|
+
const root = [];
|
|
359
|
+
const nodeMap = new Map();
|
|
360
|
+
// Sort directories by path depth
|
|
361
|
+
const sortedDirs = directories.sort((a, b) => {
|
|
362
|
+
const depthA = a.path.split("/").length;
|
|
363
|
+
const depthB = b.path.split("/").length;
|
|
364
|
+
return depthA - depthB;
|
|
365
|
+
});
|
|
366
|
+
for (const dir of sortedDirs) {
|
|
367
|
+
const node = {
|
|
368
|
+
name: dir.name,
|
|
369
|
+
path: dir.path,
|
|
370
|
+
children: [],
|
|
371
|
+
};
|
|
372
|
+
nodeMap.set(dir.path, node);
|
|
373
|
+
// Find parent
|
|
374
|
+
const pathParts = dir.path.split("/");
|
|
375
|
+
pathParts.pop();
|
|
376
|
+
const parentPath = pathParts.join("/");
|
|
377
|
+
if (parentPath && nodeMap.has(parentPath)) {
|
|
378
|
+
nodeMap.get(parentPath).children.push(node);
|
|
379
|
+
}
|
|
380
|
+
else if (!parentPath || parentPath === basePath.replace(/\/$/, "")) {
|
|
381
|
+
root.push(node);
|
|
382
|
+
}
|
|
383
|
+
}
|
|
384
|
+
return root;
|
|
385
|
+
}
|
|
386
|
+
/**
|
|
387
|
+
* Format a tree structure as a string.
|
|
388
|
+
*/
|
|
389
|
+
function formatTree(nodes, prefix) {
|
|
390
|
+
const lines = [];
|
|
391
|
+
for (let i = 0; i < nodes.length; i++) {
|
|
392
|
+
const node = nodes[i];
|
|
393
|
+
const isLast = i === nodes.length - 1;
|
|
394
|
+
const connector = isLast ? "└── " : "├── ";
|
|
395
|
+
const childPrefix = isLast ? " " : "│ ";
|
|
396
|
+
lines.push(`${prefix}${connector}📁 ${node.name}`);
|
|
397
|
+
if (node.children.length > 0) {
|
|
398
|
+
lines.push(formatTree(node.children, prefix + childPrefix));
|
|
399
|
+
}
|
|
400
|
+
}
|
|
401
|
+
return lines.join("\n");
|
|
402
|
+
}
|
|
403
|
+
//# sourceMappingURL=vault.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vault.js","sourceRoot":"","sources":["../../src/tools/vault.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ============================================================================
|
|
3
|
+
* OBSIDIAN MCP - Types Index
|
|
4
|
+
* ============================================================================
|
|
5
|
+
*
|
|
6
|
+
* Central export point for all type definitions.
|
|
7
|
+
* Import from this file to access any type in the project.
|
|
8
|
+
* ============================================================================
|
|
9
|
+
*/
|
|
10
|
+
export * from "./obsidian.js";
|
|
11
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,cAAc,eAAe,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ============================================================================
|
|
3
|
+
* OBSIDIAN MCP - Types Index
|
|
4
|
+
* ============================================================================
|
|
5
|
+
*
|
|
6
|
+
* Central export point for all type definitions.
|
|
7
|
+
* Import from this file to access any type in the project.
|
|
8
|
+
* ============================================================================
|
|
9
|
+
*/
|
|
10
|
+
export * from "./obsidian.js";
|
|
11
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,cAAc,eAAe,CAAC"}
|