@naumu/mcp 0.2.0 → 0.3.1
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/index.js +28 -1
- package/dist/index.js.map +1 -1
- package/dist/tools/get-view.d.ts +3 -0
- package/dist/tools/get-view.js +17 -0
- package/dist/tools/get-view.js.map +1 -0
- package/dist/tools/index.js +4 -0
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/list-view-nodes.d.ts +3 -0
- package/dist/tools/list-view-nodes.js +29 -0
- package/dist/tools/list-view-nodes.js.map +1 -0
- package/dist/tools/search.js +1 -1
- package/dist/tools/search.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -10,10 +10,37 @@ if (!apiKey) {
|
|
|
10
10
|
console.error('Missing required environment variable: NAUMU_API_KEY');
|
|
11
11
|
process.exit(1);
|
|
12
12
|
}
|
|
13
|
+
const NAUMU_INSTRUCTIONS = `The Naumu MCP server gives structured access to Naumu knowledge graphs (also called spaces). Prefer these tools over WebFetch whenever the user mentions a naumu.ai URL — Naumu pages are client-rendered React, so WebFetch returns an empty shell with no data.
|
|
14
|
+
|
|
15
|
+
IMPORTANT: graphId is a UUID (e.g. "0464cbfa-60ca-41b3-ac8f-bbeb8243a193"). The value in the URL right after /spaces/ is a slug (e.g. "naumu-0464cbfa"), NOT the graphId. You must resolve the slug to a graphId first.
|
|
16
|
+
|
|
17
|
+
How to resolve a slug → graphId:
|
|
18
|
+
Call naumu_list_graphs and find the graph whose 'slug' field matches the URL segment. Use that graph's 'id' as graphId for every other tool. Cache it for the rest of the conversation; the user will likely paste more URLs for the same space.
|
|
19
|
+
|
|
20
|
+
URL → tool mapping (the value after /spaces/ is the slug — resolve it first):
|
|
21
|
+
- naumu.ai/spaces/{slug} → naumu_list_graphs (resolve), then naumu_get_schema for an overview
|
|
22
|
+
- naumu.ai/spaces/{slug}/views/{viewId} → naumu_list_graphs (resolve), then naumu_get_view, then naumu_list_view_nodes
|
|
23
|
+
- naumu.ai/spaces/{slug}/nodes/{nodeId} → naumu_list_graphs (resolve), then naumu_get_node
|
|
24
|
+
- naumu.ai/spaces/{slug}/chat/{threadId} → naumu_list_graphs (resolve), then naumu_get_ai_thread
|
|
25
|
+
- Other panel URLs (notes, canvases, conversations, members, settings, schema, heat, health, changelog) have no dedicated tool — fall back to naumu_get_node with the relevant id, or naumu_get_schema for the space-level question.
|
|
26
|
+
|
|
27
|
+
Recommended workflow when a user pastes a view URL:
|
|
28
|
+
1. naumu_list_graphs — find the graph whose slug matches the URL. Note its 'id' (the UUID) as graphId.
|
|
29
|
+
2. naumu_get_view {graphId, viewId} — read the returned 'summary' and 'filters'/'resultSets' to understand what the view returns. This is cheap.
|
|
30
|
+
3. naumu_list_view_nodes {graphId, viewId} — page through results.
|
|
31
|
+
- fields:"summary" (default) for {id, label, type} per node — best for browsing.
|
|
32
|
+
- fields:"id" for {id} only — best when you just need to count or iterate.
|
|
33
|
+
- fields:"full" for the complete node payload — only when you need every attribute.
|
|
34
|
+
- The response always includes totalCount, so you don't need to page through everything to get a count.
|
|
35
|
+
4. naumu_get_node {graphId, nodeId} for per-node detail when needed.
|
|
36
|
+
|
|
37
|
+
Localhost URLs (http://localhost:3000/spaces/{slug}/...) follow the same shape — resolve the slug the same way. The MCP backend host is configured separately via NAUMU_API_URL; the URL the user pastes is just for parsing structure.`;
|
|
13
38
|
const client = new NaumuClient(apiUrl, apiKey);
|
|
14
39
|
const server = new McpServer({
|
|
15
40
|
name: 'naumu',
|
|
16
|
-
version: '0.1
|
|
41
|
+
version: '0.3.1',
|
|
42
|
+
}, {
|
|
43
|
+
instructions: NAUMU_INSTRUCTIONS,
|
|
17
44
|
});
|
|
18
45
|
registerAllTools(server, client);
|
|
19
46
|
const transport = new StdioServerTransport();
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAEjF,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEpD,MAAM,eAAe,GAAG,kBAAkB,CAAC;AAE3C,MAAM,MAAM,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,eAAe,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;AACvF,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;AAEzC,IAAI,CAAC,MAAM,EAAE,CAAC;IACb,OAAO,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAC;IACtE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACjB,CAAC;AAED,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAE/C,MAAM,MAAM,GAAG,IAAI,SAAS,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAEjF,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEpD,MAAM,eAAe,GAAG,kBAAkB,CAAC;AAE3C,MAAM,MAAM,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,eAAe,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;AACvF,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;AAEzC,IAAI,CAAC,MAAM,EAAE,CAAC;IACb,OAAO,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAC;IACtE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACjB,CAAC;AAED,MAAM,kBAAkB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;wOAwB6M,CAAC;AAEzO,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAE/C,MAAM,MAAM,GAAG,IAAI,SAAS,CAC3B;IACC,IAAI,EAAE,OAAO;IACb,OAAO,EAAE,OAAO;CAChB,EACD;IACC,YAAY,EAAE,kBAAkB;CAChC,CACD,CAAC;AAEF,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAEjC,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;AAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export function registerGetView(server, client) {
|
|
3
|
+
server.registerTool('naumu_get_view', {
|
|
4
|
+
title: 'Get View',
|
|
5
|
+
description: 'Fetch a saved Naumu view\'s configuration plus a one-line natural-language summary of its filters. Call this BEFORE naumu_list_view_nodes whenever you encounter a view URL — the summary tells you what data the view returns so you can decide whether to page through it. Returns: id, name, description, summary, filters, resultSets, and table column config.',
|
|
6
|
+
inputSchema: z.object({
|
|
7
|
+
graphId: z.string().describe('The graph (space) ID. From naumu.ai URLs this is the value after /spaces/.'),
|
|
8
|
+
viewId: z.string().describe('The view ID (typically prefixed with "view_").'),
|
|
9
|
+
}),
|
|
10
|
+
}, async ({ graphId, viewId }) => {
|
|
11
|
+
const data = await client.get(`/api/graphs/${graphId}/views/${viewId}`);
|
|
12
|
+
return {
|
|
13
|
+
content: [{ type: 'text', text: JSON.stringify(data, null, 2) }],
|
|
14
|
+
};
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=get-view.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-view.js","sourceRoot":"","sources":["../../src/tools/get-view.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,MAAM,UAAU,eAAe,CAAC,MAAiB,EAAE,MAAmB;IACrE,MAAM,CAAC,YAAY,CAClB,gBAAgB,EAChB;QACC,KAAK,EAAE,UAAU;QACjB,WAAW,EACV,qWAAqW;QACtW,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACrB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4EAA4E,CAAC;YAC1G,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gDAAgD,CAAC;SAC7E,CAAC;KACF,EACD,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE;QAC7B,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,eAAe,OAAO,UAAU,MAAM,EAAE,CAAC,CAAC;QACxE,OAAO;YACN,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;SACzE,CAAC;IACH,CAAC,CACD,CAAC;AACH,CAAC"}
|
package/dist/tools/index.js
CHANGED
|
@@ -12,6 +12,8 @@ import { registerRemoveEdge } from './remove-edge.js';
|
|
|
12
12
|
import { registerAsk } from './ask.js';
|
|
13
13
|
import { registerGetAiThread } from './get-ai-thread.js';
|
|
14
14
|
import { registerTraverse } from './traverse.js';
|
|
15
|
+
import { registerGetView } from './get-view.js';
|
|
16
|
+
import { registerListViewNodes } from './list-view-nodes.js';
|
|
15
17
|
export function registerAllTools(server, client) {
|
|
16
18
|
registerListGraphs(server, client);
|
|
17
19
|
registerGetSchema(server, client);
|
|
@@ -19,6 +21,8 @@ export function registerAllTools(server, client) {
|
|
|
19
21
|
registerSemanticSearch(server, client);
|
|
20
22
|
registerFilter(server, client);
|
|
21
23
|
registerGetNode(server, client);
|
|
24
|
+
registerGetView(server, client);
|
|
25
|
+
registerListViewNodes(server, client);
|
|
22
26
|
registerAddNode(server, client);
|
|
23
27
|
registerUpdateNode(server, client);
|
|
24
28
|
registerAddEdge(server, client);
|
package/dist/tools/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAE7D,MAAM,UAAU,gBAAgB,CAAC,MAAiB,EAAE,MAAmB;IACtE,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClC,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,sBAAsB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,qBAAqB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5B,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAClC,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export function registerListViewNodes(server, client) {
|
|
3
|
+
server.registerTool('naumu_list_view_nodes', {
|
|
4
|
+
title: 'List View Nodes',
|
|
5
|
+
description: 'List nodes that match a saved view. Cursor-paginated. Pair with naumu_get_view first to read the view\'s filters and decide what payload size you need.\n\nResponse shape: { nodes, totalCount, nextCursor, hasMore }. Use totalCount to know how many results exist without paging through them. Use hasMore (boolean) to decide whether to fetch the next page; pass nextCursor back as `cursor` to do so.\n\nfields parameter:\n- "summary" (default): {id, label, type} — best for browsing.\n- "id": {id} only — use when you need to count or iterate cheaply.\n- "full": full node payload with all attributes — use when you need every property.\n\nDefault page size 25, max 100.',
|
|
6
|
+
inputSchema: z.object({
|
|
7
|
+
graphId: z.string().describe('The graph (space) ID.'),
|
|
8
|
+
viewId: z.string().describe('The view ID.'),
|
|
9
|
+
cursor: z.string().optional().describe('Opaque cursor from a previous response\'s nextCursor. Omit for the first page.'),
|
|
10
|
+
limit: z.number().int().min(1).max(100).optional().describe('Page size, default 25, max 100.'),
|
|
11
|
+
fields: z.enum(['id', 'summary', 'full']).optional().describe('How much detail per node. Default "summary".'),
|
|
12
|
+
}),
|
|
13
|
+
}, async ({ graphId, viewId, cursor, limit, fields }) => {
|
|
14
|
+
const params = new URLSearchParams();
|
|
15
|
+
if (cursor)
|
|
16
|
+
params.set('cursor', cursor);
|
|
17
|
+
if (limit !== undefined)
|
|
18
|
+
params.set('limit', String(limit));
|
|
19
|
+
if (fields)
|
|
20
|
+
params.set('fields', fields);
|
|
21
|
+
const qs = params.toString();
|
|
22
|
+
const path = `/api/graphs/${graphId}/views/${viewId}/nodes${qs ? `?${qs}` : ''}`;
|
|
23
|
+
const data = await client.get(path);
|
|
24
|
+
return {
|
|
25
|
+
content: [{ type: 'text', text: JSON.stringify(data, null, 2) }],
|
|
26
|
+
};
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=list-view-nodes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-view-nodes.js","sourceRoot":"","sources":["../../src/tools/list-view-nodes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,MAAM,UAAU,qBAAqB,CAAC,MAAiB,EAAE,MAAmB;IAC3E,MAAM,CAAC,YAAY,CAClB,uBAAuB,EACvB;QACC,KAAK,EAAE,iBAAiB;QACxB,WAAW,EACV,6pBAA6pB;QAC9pB,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACrB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;YACrD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;YAC3C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gFAAgF,CAAC;YACxH,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;YAC9F,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;SAC7G,CAAC;KACF,EACD,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE;QACpD,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;QACrC,IAAI,MAAM;YAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACzC,IAAI,KAAK,KAAK,SAAS;YAAE,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAC5D,IAAI,MAAM;YAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAEzC,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QAC7B,MAAM,IAAI,GAAG,eAAe,OAAO,UAAU,MAAM,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACjF,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAEpC,OAAO;YACN,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;SACzE,CAAC;IACH,CAAC,CACD,CAAC;AACH,CAAC"}
|
package/dist/tools/search.js
CHANGED
|
@@ -2,7 +2,7 @@ import { z } from 'zod';
|
|
|
2
2
|
export function registerSearch(server, client) {
|
|
3
3
|
server.registerTool('naumu_search', {
|
|
4
4
|
title: 'Search Graph',
|
|
5
|
-
description: '
|
|
5
|
+
description: 'Exact text pattern search over node labels, content, and types. Only use this when you know the exact name or keyword you\'re looking for. For exploratory searches, discovering related nodes, or when you\'re unsure of exact wording, use `naumu_semantic_search` instead — it understands meaning and returns richer context.',
|
|
6
6
|
inputSchema: z.object({
|
|
7
7
|
graphId: z.string().describe('The graph ID'),
|
|
8
8
|
query: z.string().describe('Search query text'),
|
package/dist/tools/search.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/tools/search.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,MAAM,UAAU,cAAc,CAAC,MAAiB,EAAE,MAAmB;IACpE,MAAM,CAAC,YAAY,CAClB,cAAc,EACd;QACC,KAAK,EAAE,cAAc;QACrB,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/tools/search.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,MAAM,UAAU,cAAc,CAAC,MAAiB,EAAE,MAAmB;IACpE,MAAM,CAAC,YAAY,CAClB,cAAc,EACd;QACC,KAAK,EAAE,cAAc;QACrB,WAAW,EAAE,mUAAmU;QAChV,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACrB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;YAC5C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;YAC/C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,6CAA6C,CAAC;SAChG,CAAC;KACF,EACD,KAAK,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE;QACnC,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,eAAe,OAAO,aAAa,kBAAkB,CAAC,KAAK,CAAC,UAAU,KAAK,EAAE,CAAC,CAAC;QAC7G,OAAO;YACN,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;SACzE,CAAC;IACH,CAAC,CACD,CAAC;AACH,CAAC"}
|
package/package.json
CHANGED