mcp-grampsweb 1.0.1 → 1.1.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/dist/constants.d.ts +7 -0
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +8 -0
- package/dist/constants.js.map +1 -1
- package/dist/index.js +28 -1
- package/dist/index.js.map +1 -1
- package/dist/prompts/index.d.ts +26 -0
- package/dist/prompts/index.d.ts.map +1 -0
- package/dist/prompts/index.js +310 -0
- package/dist/prompts/index.js.map +1 -0
- package/dist/schemas/entities.d.ts +20 -20
- package/dist/tools/analysis.d.ts.map +1 -1
- package/dist/tools/analysis.js +141 -61
- package/dist/tools/analysis.js.map +1 -1
- package/dist/tools/create.d.ts.map +1 -1
- package/dist/tools/create.js +126 -27
- package/dist/tools/create.js.map +1 -1
- package/dist/tools/search.d.ts.map +1 -1
- package/dist/tools/search.js +67 -24
- package/dist/tools/search.js.map +1 -1
- package/dist/utils/response.d.ts +34 -0
- package/dist/utils/response.d.ts.map +1 -0
- package/dist/utils/response.js +71 -0
- package/dist/utils/response.js.map +1 -0
- package/package.json +1 -1
package/dist/tools/create.js
CHANGED
|
@@ -4,6 +4,8 @@
|
|
|
4
4
|
import { grampsClient } from "../client.js";
|
|
5
5
|
import { API_ENDPOINTS } from "../constants.js";
|
|
6
6
|
import { createPersonSchema, createFamilySchema, createEventSchema, createPlaceSchema, createSourceSchema, createCitationSchema, createNoteSchema, createMediaSchema, createRepositorySchema, } from "../schemas/entities.js";
|
|
7
|
+
import { formatCreatedEntity } from "../utils/response.js";
|
|
8
|
+
import { formatPersonName } from "../utils/formatting.js";
|
|
7
9
|
// Gender string to number mapping
|
|
8
10
|
function mapGender(gender) {
|
|
9
11
|
if (!gender)
|
|
@@ -51,7 +53,19 @@ export async function grampsCreatePerson(params) {
|
|
|
51
53
|
private: validated.private,
|
|
52
54
|
};
|
|
53
55
|
const response = await grampsClient.post(API_ENDPOINTS.PEOPLE, person);
|
|
54
|
-
|
|
56
|
+
const genderMap = {
|
|
57
|
+
0: "female",
|
|
58
|
+
1: "male",
|
|
59
|
+
2: "unknown",
|
|
60
|
+
};
|
|
61
|
+
const mappedGender = mapGender(validated.gender);
|
|
62
|
+
const genderStr = mappedGender !== undefined ? genderMap[mappedGender] : "unknown";
|
|
63
|
+
return formatCreatedEntity("person", formatPersonName(validated.primary_name), {
|
|
64
|
+
handle: response.handle,
|
|
65
|
+
gramps_id: response.gramps_id,
|
|
66
|
+
name: formatPersonName(validated.primary_name),
|
|
67
|
+
gender: genderStr,
|
|
68
|
+
}, `Use handle "${response.handle}" to link this person to families or events with gramps_create_family.`);
|
|
55
69
|
}
|
|
56
70
|
/**
|
|
57
71
|
* Create a family
|
|
@@ -83,7 +97,23 @@ export async function grampsCreateFamily(params) {
|
|
|
83
97
|
private: validated.private,
|
|
84
98
|
};
|
|
85
99
|
const response = await grampsClient.post(API_ENDPOINTS.FAMILIES, family);
|
|
86
|
-
|
|
100
|
+
const members = [];
|
|
101
|
+
if (validated.father_handle)
|
|
102
|
+
members.push("father");
|
|
103
|
+
if (validated.mother_handle)
|
|
104
|
+
members.push("mother");
|
|
105
|
+
if (validated.child_ref_list?.length)
|
|
106
|
+
members.push(`${validated.child_ref_list.length} child(ren)`);
|
|
107
|
+
return formatCreatedEntity("family", response.gramps_id, {
|
|
108
|
+
handle: response.handle,
|
|
109
|
+
gramps_id: response.gramps_id,
|
|
110
|
+
father_handle: validated.father_handle || null,
|
|
111
|
+
mother_handle: validated.mother_handle || null,
|
|
112
|
+
children_count: validated.child_ref_list?.length || 0,
|
|
113
|
+
type: validated.type || "Unknown",
|
|
114
|
+
}, members.length > 0
|
|
115
|
+
? `Family links ${members.join(", ")}. Add marriage/events with gramps_create_event.`
|
|
116
|
+
: "Add family members by updating with person handles.");
|
|
87
117
|
}
|
|
88
118
|
/**
|
|
89
119
|
* Create an event
|
|
@@ -108,7 +138,14 @@ export async function grampsCreateEvent(params) {
|
|
|
108
138
|
private: validated.private,
|
|
109
139
|
};
|
|
110
140
|
const response = await grampsClient.post(API_ENDPOINTS.EVENTS, event);
|
|
111
|
-
return
|
|
141
|
+
return formatCreatedEntity("event", `${validated.type} (${response.gramps_id})`, {
|
|
142
|
+
handle: response.handle,
|
|
143
|
+
gramps_id: response.gramps_id,
|
|
144
|
+
type: validated.type,
|
|
145
|
+
date: validated.date || null,
|
|
146
|
+
place_handle: validated.place || null,
|
|
147
|
+
description: validated.description || null,
|
|
148
|
+
}, `Link this event to a person or family using event_ref_list with handle "${response.handle}".`);
|
|
112
149
|
}
|
|
113
150
|
/**
|
|
114
151
|
* Create a place
|
|
@@ -137,7 +174,14 @@ export async function grampsCreatePlace(params) {
|
|
|
137
174
|
private: validated.private,
|
|
138
175
|
};
|
|
139
176
|
const response = await grampsClient.post(API_ENDPOINTS.PLACES, place);
|
|
140
|
-
|
|
177
|
+
const placeName = validated.name?.value || validated.title || response.gramps_id;
|
|
178
|
+
return formatCreatedEntity("place", placeName, {
|
|
179
|
+
handle: response.handle,
|
|
180
|
+
gramps_id: response.gramps_id,
|
|
181
|
+
name: placeName,
|
|
182
|
+
type: validated.place_type || null,
|
|
183
|
+
coordinates: validated.lat && validated.long ? { lat: validated.lat, long: validated.long } : null,
|
|
184
|
+
}, `Use handle "${response.handle}" when creating events to link them to this place.`);
|
|
141
185
|
}
|
|
142
186
|
/**
|
|
143
187
|
* Create a source
|
|
@@ -161,7 +205,13 @@ export async function grampsCreateSource(params) {
|
|
|
161
205
|
private: validated.private,
|
|
162
206
|
};
|
|
163
207
|
const response = await grampsClient.post(API_ENDPOINTS.SOURCES, source);
|
|
164
|
-
return
|
|
208
|
+
return formatCreatedEntity("source", validated.title, {
|
|
209
|
+
handle: response.handle,
|
|
210
|
+
gramps_id: response.gramps_id,
|
|
211
|
+
title: validated.title,
|
|
212
|
+
author: validated.author || null,
|
|
213
|
+
publication: validated.pubinfo || null,
|
|
214
|
+
}, `Create citations referencing this source with gramps_create_citation using source_handle "${response.handle}".`);
|
|
165
215
|
}
|
|
166
216
|
/**
|
|
167
217
|
* Create a citation
|
|
@@ -181,7 +231,20 @@ export async function grampsCreateCitation(params) {
|
|
|
181
231
|
private: validated.private,
|
|
182
232
|
};
|
|
183
233
|
const response = await grampsClient.post(API_ENDPOINTS.CITATIONS, citation);
|
|
184
|
-
|
|
234
|
+
const confidenceMap = {
|
|
235
|
+
0: "Very Low",
|
|
236
|
+
1: "Low",
|
|
237
|
+
2: "Normal",
|
|
238
|
+
3: "High",
|
|
239
|
+
4: "Very High",
|
|
240
|
+
};
|
|
241
|
+
return formatCreatedEntity("citation", response.gramps_id, {
|
|
242
|
+
handle: response.handle,
|
|
243
|
+
gramps_id: response.gramps_id,
|
|
244
|
+
source_handle: validated.source_handle,
|
|
245
|
+
page: validated.page || null,
|
|
246
|
+
confidence: validated.confidence !== undefined ? confidenceMap[validated.confidence] || "Normal" : "Normal",
|
|
247
|
+
}, `Add this citation to entities using citation_list with handle "${response.handle}".`);
|
|
185
248
|
}
|
|
186
249
|
/**
|
|
187
250
|
* Create a note
|
|
@@ -198,7 +261,13 @@ export async function grampsCreateNote(params) {
|
|
|
198
261
|
private: validated.private,
|
|
199
262
|
};
|
|
200
263
|
const response = await grampsClient.post(API_ENDPOINTS.NOTES, note);
|
|
201
|
-
|
|
264
|
+
const preview = validated.text.length > 50 ? validated.text.substring(0, 50) + "..." : validated.text;
|
|
265
|
+
return formatCreatedEntity("note", response.gramps_id, {
|
|
266
|
+
handle: response.handle,
|
|
267
|
+
gramps_id: response.gramps_id,
|
|
268
|
+
type: validated.type || "General",
|
|
269
|
+
preview,
|
|
270
|
+
}, `Attach this note to entities using note_list with handle "${response.handle}".`);
|
|
202
271
|
}
|
|
203
272
|
/**
|
|
204
273
|
* Create a media object
|
|
@@ -222,7 +291,14 @@ export async function grampsCreateMedia(params) {
|
|
|
222
291
|
private: validated.private,
|
|
223
292
|
};
|
|
224
293
|
const response = await grampsClient.post(API_ENDPOINTS.MEDIA, media);
|
|
225
|
-
|
|
294
|
+
const displayName = validated.desc || validated.path;
|
|
295
|
+
return formatCreatedEntity("media", displayName, {
|
|
296
|
+
handle: response.handle,
|
|
297
|
+
gramps_id: response.gramps_id,
|
|
298
|
+
path: validated.path,
|
|
299
|
+
mime_type: validated.mime || null,
|
|
300
|
+
description: validated.desc || null,
|
|
301
|
+
}, `Link this media to entities using media_list with handle "${response.handle}".`);
|
|
226
302
|
}
|
|
227
303
|
/**
|
|
228
304
|
* Create a repository
|
|
@@ -244,14 +320,21 @@ export async function grampsCreateRepository(params) {
|
|
|
244
320
|
private: validated.private,
|
|
245
321
|
};
|
|
246
322
|
const response = await grampsClient.post(API_ENDPOINTS.REPOSITORIES, repository);
|
|
247
|
-
return
|
|
323
|
+
return formatCreatedEntity("repository", validated.name, {
|
|
324
|
+
handle: response.handle,
|
|
325
|
+
gramps_id: response.gramps_id,
|
|
326
|
+
name: validated.name,
|
|
327
|
+
type: validated.type || null,
|
|
328
|
+
}, `Link sources to this repository using reporef_list with handle "${response.handle}".`);
|
|
248
329
|
}
|
|
249
330
|
// Tool definitions for MCP
|
|
250
331
|
export const createTools = {
|
|
251
332
|
gramps_create_person: {
|
|
252
333
|
name: "gramps_create_person",
|
|
253
|
-
description: "Create a new person record
|
|
254
|
-
"
|
|
334
|
+
description: "Create a new person record. " +
|
|
335
|
+
"REQUIRED: primary_name with first_name or surname. " +
|
|
336
|
+
"RETURNS: handle (for linking) and gramps_id (display ID). " +
|
|
337
|
+
"NEXT STEP: Use handle with gramps_create_family to add relationships.",
|
|
255
338
|
inputSchema: {
|
|
256
339
|
type: "object",
|
|
257
340
|
properties: {
|
|
@@ -285,8 +368,10 @@ export const createTools = {
|
|
|
285
368
|
},
|
|
286
369
|
gramps_create_family: {
|
|
287
370
|
name: "gramps_create_family",
|
|
288
|
-
description: "Create a
|
|
289
|
-
"
|
|
371
|
+
description: "Create a family linking parents and children. " +
|
|
372
|
+
"USE FOR: Connecting existing people into family relationships. " +
|
|
373
|
+
"REQUIRED: At least one of father_handle, mother_handle, or child_ref_list. " +
|
|
374
|
+
"NEXT STEP: Add marriage event with gramps_create_event.",
|
|
290
375
|
inputSchema: {
|
|
291
376
|
type: "object",
|
|
292
377
|
properties: {
|
|
@@ -326,8 +411,10 @@ export const createTools = {
|
|
|
326
411
|
},
|
|
327
412
|
gramps_create_event: {
|
|
328
413
|
name: "gramps_create_event",
|
|
329
|
-
description: "Create a
|
|
330
|
-
"
|
|
414
|
+
description: "Create a life event (Birth, Death, Marriage, Burial, Baptism, etc.). " +
|
|
415
|
+
"REQUIRED: type (event type string). " +
|
|
416
|
+
"OPTIONAL: date, place handle, description. " +
|
|
417
|
+
"NEXT STEP: Link to person/family via their event_ref_list.",
|
|
331
418
|
inputSchema: {
|
|
332
419
|
type: "object",
|
|
333
420
|
properties: {
|
|
@@ -366,8 +453,10 @@ export const createTools = {
|
|
|
366
453
|
},
|
|
367
454
|
gramps_create_place: {
|
|
368
455
|
name: "gramps_create_place",
|
|
369
|
-
description: "Create a
|
|
370
|
-
"
|
|
456
|
+
description: "Create a location (city, country, address, cemetery, etc.). " +
|
|
457
|
+
"OPTIONAL: title, name, coordinates (lat/long), place_type. " +
|
|
458
|
+
"USE FOR: Linking to events via place handle. " +
|
|
459
|
+
"RETURNS: handle to use when creating events.",
|
|
371
460
|
inputSchema: {
|
|
372
461
|
type: "object",
|
|
373
462
|
properties: {
|
|
@@ -405,8 +494,10 @@ export const createTools = {
|
|
|
405
494
|
},
|
|
406
495
|
gramps_create_source: {
|
|
407
496
|
name: "gramps_create_source",
|
|
408
|
-
description: "Create a
|
|
409
|
-
"
|
|
497
|
+
description: "Create a source documenting where information comes from (books, websites, records). " +
|
|
498
|
+
"REQUIRED: title. " +
|
|
499
|
+
"OPTIONAL: author, pubinfo, abbrev. " +
|
|
500
|
+
"NEXT STEP: Create citations referencing this source.",
|
|
410
501
|
inputSchema: {
|
|
411
502
|
type: "object",
|
|
412
503
|
properties: {
|
|
@@ -437,8 +528,10 @@ export const createTools = {
|
|
|
437
528
|
},
|
|
438
529
|
gramps_create_citation: {
|
|
439
530
|
name: "gramps_create_citation",
|
|
440
|
-
description: "Create a
|
|
441
|
-
"
|
|
531
|
+
description: "Create a citation pointing to a specific location within a source. " +
|
|
532
|
+
"REQUIRED: source_handle (from gramps_create_source). " +
|
|
533
|
+
"OPTIONAL: page, confidence level. " +
|
|
534
|
+
"USE FOR: Attaching proof to facts via entity citation_list.",
|
|
442
535
|
inputSchema: {
|
|
443
536
|
type: "object",
|
|
444
537
|
properties: {
|
|
@@ -465,8 +558,10 @@ export const createTools = {
|
|
|
465
558
|
},
|
|
466
559
|
gramps_create_note: {
|
|
467
560
|
name: "gramps_create_note",
|
|
468
|
-
description: "Create a
|
|
469
|
-
"
|
|
561
|
+
description: "Create a text note that can be attached to any entity. " +
|
|
562
|
+
"REQUIRED: text content. " +
|
|
563
|
+
"OPTIONAL: type (General, Research, Transcript), format. " +
|
|
564
|
+
"USE FOR: Adding research notes, transcripts, or comments to records.",
|
|
470
565
|
inputSchema: {
|
|
471
566
|
type: "object",
|
|
472
567
|
properties: {
|
|
@@ -493,8 +588,10 @@ export const createTools = {
|
|
|
493
588
|
},
|
|
494
589
|
gramps_create_media: {
|
|
495
590
|
name: "gramps_create_media",
|
|
496
|
-
description: "Create a
|
|
497
|
-
"
|
|
591
|
+
description: "Create a media object reference (photo, document, audio, video). " +
|
|
592
|
+
"REQUIRED: path (file path or URL). " +
|
|
593
|
+
"OPTIONAL: mime type, description. " +
|
|
594
|
+
"USE FOR: Attaching images/documents to people, events, etc.",
|
|
498
595
|
inputSchema: {
|
|
499
596
|
type: "object",
|
|
500
597
|
properties: {
|
|
@@ -521,8 +618,10 @@ export const createTools = {
|
|
|
521
618
|
},
|
|
522
619
|
gramps_create_repository: {
|
|
523
620
|
name: "gramps_create_repository",
|
|
524
|
-
description: "Create a
|
|
525
|
-
"
|
|
621
|
+
description: "Create a repository where sources are stored (library, archive, website). " +
|
|
622
|
+
"REQUIRED: name. " +
|
|
623
|
+
"OPTIONAL: type (Library, Archive, Website). " +
|
|
624
|
+
"USE FOR: Organizing sources by their holding institution.",
|
|
526
625
|
inputSchema: {
|
|
527
626
|
type: "object",
|
|
528
627
|
properties: {
|
package/dist/tools/create.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../src/tools/create.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../src/tools/create.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/tools/search.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/tools/search.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAajF;;GAEG;AACH,wBAAsB,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAmCxF;AASD;;GAEG;AACH,wBAAsB,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAwBpF;AAED;;GAEG;AACH,wBAAsB,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CA0CxF;AAGD,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2FvB,CAAC"}
|
package/dist/tools/search.js
CHANGED
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
* Search and retrieval tools
|
|
3
3
|
*/
|
|
4
4
|
import { grampsClient } from "../client.js";
|
|
5
|
-
import { API_ENDPOINTS, ENTITY_ENDPOINT_MAP } from "../constants.js";
|
|
5
|
+
import { API_ENDPOINTS, ENTITY_ENDPOINT_MAP, MESSAGES } from "../constants.js";
|
|
6
6
|
import { searchSchema, findSchema, getEntitySchema } from "../schemas/search.js";
|
|
7
|
-
import {
|
|
7
|
+
import { formatToolResponse, formatEntityList } from "../utils/response.js";
|
|
8
8
|
/**
|
|
9
9
|
* GQL-based search for entities
|
|
10
10
|
*/
|
|
@@ -15,19 +15,36 @@ export async function grampsSearch(params) {
|
|
|
15
15
|
throw new Error(`Unknown entity type: ${entity_type}`);
|
|
16
16
|
}
|
|
17
17
|
const response = await grampsClient.get(endpoint, {
|
|
18
|
-
|
|
18
|
+
gql: query,
|
|
19
19
|
page,
|
|
20
20
|
pagesize,
|
|
21
21
|
});
|
|
22
22
|
// Format response
|
|
23
23
|
if (!response || (Array.isArray(response) && response.length === 0)) {
|
|
24
|
-
return
|
|
24
|
+
return formatToolResponse({
|
|
25
|
+
status: "empty",
|
|
26
|
+
summary: MESSAGES.NO_RESULTS(entity_type, query),
|
|
27
|
+
details: "GQL syntax: property operator value. Examples: gender = 1, primary_name.first_name ~ John",
|
|
28
|
+
});
|
|
25
29
|
}
|
|
26
|
-
const
|
|
27
|
-
|
|
28
|
-
|
|
30
|
+
const entities = Array.isArray(response) ? response : [response];
|
|
31
|
+
const formattedEntities = entities.map((obj) => ({
|
|
32
|
+
handle: obj.handle,
|
|
33
|
+
gramps_id: obj.gramps_id,
|
|
34
|
+
// Include type-specific summary field
|
|
35
|
+
...(entity_type === "people" && { name: formatPersonSummary(obj) }),
|
|
36
|
+
...(entity_type === "places" && { name: obj.name?.value || obj.title }),
|
|
37
|
+
...(entity_type === "sources" && { title: obj.title }),
|
|
38
|
+
...(entity_type === "events" && { type: obj.type }),
|
|
29
39
|
}));
|
|
30
|
-
return
|
|
40
|
+
return formatEntityList(entity_type, formattedEntities);
|
|
41
|
+
}
|
|
42
|
+
function formatPersonSummary(person) {
|
|
43
|
+
const p = person;
|
|
44
|
+
if (!p.primary_name)
|
|
45
|
+
return "Unknown";
|
|
46
|
+
const parts = [p.primary_name.first_name, p.primary_name.surname].filter(Boolean);
|
|
47
|
+
return parts.join(" ") || "Unknown";
|
|
31
48
|
}
|
|
32
49
|
/**
|
|
33
50
|
* Full-text search across all entities
|
|
@@ -40,13 +57,18 @@ export async function grampsFind(params) {
|
|
|
40
57
|
pagesize,
|
|
41
58
|
});
|
|
42
59
|
if (!response.data || response.data.length === 0) {
|
|
43
|
-
return
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
60
|
+
return formatToolResponse({
|
|
61
|
+
status: "empty",
|
|
62
|
+
summary: MESSAGES.NO_RESULTS("records", query),
|
|
63
|
+
details: MESSAGES.SEARCH_HINT,
|
|
64
|
+
});
|
|
48
65
|
}
|
|
49
|
-
|
|
66
|
+
const formattedResults = response.data.map((item) => ({
|
|
67
|
+
type: item.object_type,
|
|
68
|
+
handle: item.object.handle,
|
|
69
|
+
gramps_id: item.object.gramps_id,
|
|
70
|
+
}));
|
|
71
|
+
return formatEntityList("records", formattedResults, response.total_count);
|
|
50
72
|
}
|
|
51
73
|
/**
|
|
52
74
|
* Get a specific entity by handle or ID
|
|
@@ -60,7 +82,12 @@ export async function grampsGet(params) {
|
|
|
60
82
|
// Try to get by handle first
|
|
61
83
|
try {
|
|
62
84
|
const response = await grampsClient.get(`${endpoint}${handle}`);
|
|
63
|
-
return
|
|
85
|
+
return formatToolResponse({
|
|
86
|
+
status: "success",
|
|
87
|
+
summary: `Found ${entity_type.replace(/s$/, "")} ${response.gramps_id}`,
|
|
88
|
+
data: response,
|
|
89
|
+
details: `Handle: ${response.handle} - use this handle to reference in other operations.`,
|
|
90
|
+
});
|
|
64
91
|
}
|
|
65
92
|
catch (error) {
|
|
66
93
|
// If not found by handle, try searching by gramps_id
|
|
@@ -69,8 +96,19 @@ export async function grampsGet(params) {
|
|
|
69
96
|
gramps: `gramps_id=${handle}`,
|
|
70
97
|
});
|
|
71
98
|
if (searchResponse && searchResponse.length > 0) {
|
|
72
|
-
|
|
99
|
+
const entity = searchResponse[0];
|
|
100
|
+
return formatToolResponse({
|
|
101
|
+
status: "success",
|
|
102
|
+
summary: `Found ${entity_type.replace(/s$/, "")} ${entity.gramps_id}`,
|
|
103
|
+
data: entity,
|
|
104
|
+
details: `Handle: ${entity.handle} - use this handle to reference in other operations.`,
|
|
105
|
+
});
|
|
73
106
|
}
|
|
107
|
+
return formatToolResponse({
|
|
108
|
+
status: "empty",
|
|
109
|
+
summary: MESSAGES.NOT_FOUND(entity_type.replace(/s$/, ""), handle),
|
|
110
|
+
details: "Use gramps_find to search for the correct handle or ID.",
|
|
111
|
+
});
|
|
74
112
|
}
|
|
75
113
|
throw error;
|
|
76
114
|
}
|
|
@@ -79,9 +117,11 @@ export async function grampsGet(params) {
|
|
|
79
117
|
export const searchTools = {
|
|
80
118
|
gramps_search: {
|
|
81
119
|
name: "gramps_search",
|
|
82
|
-
description: "Search
|
|
83
|
-
"
|
|
84
|
-
"
|
|
120
|
+
description: "Search using GQL (Gramps Query Language) for structured queries. " +
|
|
121
|
+
"USE FOR: Finding entities by attributes (name, date, gender, etc.). " +
|
|
122
|
+
"SYNTAX: property operator value, combined with 'and'/'or'. " +
|
|
123
|
+
"EXAMPLES: primary_name.surname_list[0].surname ~ Smith, gender = 1 (male=1, female=0). " +
|
|
124
|
+
"RETURNS: List of handles - use handles with gramps_get for full details.",
|
|
85
125
|
inputSchema: {
|
|
86
126
|
type: "object",
|
|
87
127
|
properties: {
|
|
@@ -111,9 +151,10 @@ export const searchTools = {
|
|
|
111
151
|
},
|
|
112
152
|
gramps_find: {
|
|
113
153
|
name: "gramps_find",
|
|
114
|
-
description: "Full-text search across
|
|
115
|
-
"
|
|
116
|
-
"
|
|
154
|
+
description: "Full-text search across ALL entity types at once. " +
|
|
155
|
+
"USE FOR: Quick lookup by name, keyword, or ID when you don't know the entity type. " +
|
|
156
|
+
"RETURNS: Mixed results (people, places, sources, etc.) with handles. " +
|
|
157
|
+
"NEXT STEP: Use gramps_get with handle to retrieve full entity details.",
|
|
117
158
|
inputSchema: {
|
|
118
159
|
type: "object",
|
|
119
160
|
properties: {
|
|
@@ -138,8 +179,10 @@ export const searchTools = {
|
|
|
138
179
|
},
|
|
139
180
|
gramps_get: {
|
|
140
181
|
name: "gramps_get",
|
|
141
|
-
description: "
|
|
142
|
-
"
|
|
182
|
+
description: "Retrieve complete details of a specific entity by handle or Gramps ID. " +
|
|
183
|
+
"USE FOR: Getting full record after finding entity in search results. " +
|
|
184
|
+
"REQUIRED: entity_type and handle (from search results). " +
|
|
185
|
+
"RETURNS: Complete entity data including all relationships and attributes.",
|
|
143
186
|
inputSchema: {
|
|
144
187
|
type: "object",
|
|
145
188
|
properties: {
|
package/dist/tools/search.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/tools/search.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/tools/search.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Structured response formatting for LLM consumption
|
|
3
|
+
*/
|
|
4
|
+
export interface ToolResponseOptions {
|
|
5
|
+
status: "success" | "empty" | "error";
|
|
6
|
+
summary: string;
|
|
7
|
+
data?: Record<string, unknown>;
|
|
8
|
+
details?: string;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Format a tool response with consistent structure for LLM parsing.
|
|
12
|
+
*
|
|
13
|
+
* Output format:
|
|
14
|
+
* **Status:** success|empty|error
|
|
15
|
+
* **Summary:** Brief description of what happened
|
|
16
|
+
*
|
|
17
|
+
* **Data:**
|
|
18
|
+
* ```json
|
|
19
|
+
* { ... structured data ... }
|
|
20
|
+
* ```
|
|
21
|
+
*
|
|
22
|
+
* **Details:**
|
|
23
|
+
* Additional context or next steps
|
|
24
|
+
*/
|
|
25
|
+
export declare function formatToolResponse(opts: ToolResponseOptions): string;
|
|
26
|
+
/**
|
|
27
|
+
* Format a list of entities for LLM consumption
|
|
28
|
+
*/
|
|
29
|
+
export declare function formatEntityList(entityType: string, entities: Array<Record<string, unknown>>, totalCount?: number): string;
|
|
30
|
+
/**
|
|
31
|
+
* Format a created entity response with actionable next steps
|
|
32
|
+
*/
|
|
33
|
+
export declare function formatCreatedEntity(entityType: string, displayName: string, entityData: Record<string, unknown>, nextSteps?: string): string;
|
|
34
|
+
//# sourceMappingURL=response.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"response.d.ts","sourceRoot":"","sources":["../../src/utils/response.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,SAAS,GAAG,OAAO,GAAG,OAAO,CAAC;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,mBAAmB,GAAG,MAAM,CAepE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EACxC,UAAU,CAAC,EAAE,MAAM,GAClB,MAAM,CA2BR;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnC,SAAS,CAAC,EAAE,MAAM,GACjB,MAAM,CAOR"}
|