@hskksk/mem-ai-mcp-server 0.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.
Files changed (79) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +215 -0
  3. package/dist/client/mem-api-client.d.ts +63 -0
  4. package/dist/client/mem-api-client.d.ts.map +1 -0
  5. package/dist/client/mem-api-client.js +169 -0
  6. package/dist/client/mem-api-client.js.map +1 -0
  7. package/dist/config/env.d.ts +24 -0
  8. package/dist/config/env.d.ts.map +1 -0
  9. package/dist/config/env.js +16 -0
  10. package/dist/config/env.js.map +1 -0
  11. package/dist/index.d.ts +3 -0
  12. package/dist/index.d.ts.map +1 -0
  13. package/dist/index.js +25 -0
  14. package/dist/index.js.map +1 -0
  15. package/dist/server.d.ts +43 -0
  16. package/dist/server.d.ts.map +1 -0
  17. package/dist/server.js +91 -0
  18. package/dist/server.js.map +1 -0
  19. package/dist/tools/base-tool.d.ts +26 -0
  20. package/dist/tools/base-tool.d.ts.map +1 -0
  21. package/dist/tools/base-tool.js +64 -0
  22. package/dist/tools/base-tool.js.map +1 -0
  23. package/dist/tools/collections/create-collection.d.ts +10 -0
  24. package/dist/tools/collections/create-collection.d.ts.map +1 -0
  25. package/dist/tools/collections/create-collection.js +19 -0
  26. package/dist/tools/collections/create-collection.js.map +1 -0
  27. package/dist/tools/collections/delete-collection.d.ts +10 -0
  28. package/dist/tools/collections/delete-collection.d.ts.map +1 -0
  29. package/dist/tools/collections/delete-collection.js +18 -0
  30. package/dist/tools/collections/delete-collection.js.map +1 -0
  31. package/dist/tools/collections/get-collection.d.ts +10 -0
  32. package/dist/tools/collections/get-collection.d.ts.map +1 -0
  33. package/dist/tools/collections/get-collection.js +18 -0
  34. package/dist/tools/collections/get-collection.js.map +1 -0
  35. package/dist/tools/collections/list-collections.d.ts +10 -0
  36. package/dist/tools/collections/list-collections.d.ts.map +1 -0
  37. package/dist/tools/collections/list-collections.js +15 -0
  38. package/dist/tools/collections/list-collections.js.map +1 -0
  39. package/dist/tools/collections/search-collections.d.ts +10 -0
  40. package/dist/tools/collections/search-collections.d.ts.map +1 -0
  41. package/dist/tools/collections/search-collections.js +20 -0
  42. package/dist/tools/collections/search-collections.js.map +1 -0
  43. package/dist/tools/mem-it.d.ts +10 -0
  44. package/dist/tools/mem-it.d.ts.map +1 -0
  45. package/dist/tools/mem-it.js +21 -0
  46. package/dist/tools/mem-it.js.map +1 -0
  47. package/dist/tools/notes/create-note.d.ts +10 -0
  48. package/dist/tools/notes/create-note.d.ts.map +1 -0
  49. package/dist/tools/notes/create-note.js +23 -0
  50. package/dist/tools/notes/create-note.js.map +1 -0
  51. package/dist/tools/notes/delete-note.d.ts +10 -0
  52. package/dist/tools/notes/delete-note.d.ts.map +1 -0
  53. package/dist/tools/notes/delete-note.js +18 -0
  54. package/dist/tools/notes/delete-note.js.map +1 -0
  55. package/dist/tools/notes/get-note.d.ts +10 -0
  56. package/dist/tools/notes/get-note.d.ts.map +1 -0
  57. package/dist/tools/notes/get-note.js +18 -0
  58. package/dist/tools/notes/get-note.js.map +1 -0
  59. package/dist/tools/notes/list-notes.d.ts +10 -0
  60. package/dist/tools/notes/list-notes.d.ts.map +1 -0
  61. package/dist/tools/notes/list-notes.js +15 -0
  62. package/dist/tools/notes/list-notes.js.map +1 -0
  63. package/dist/tools/notes/search-notes.d.ts +10 -0
  64. package/dist/tools/notes/search-notes.d.ts.map +1 -0
  65. package/dist/tools/notes/search-notes.js +20 -0
  66. package/dist/tools/notes/search-notes.js.map +1 -0
  67. package/dist/types/api.d.ts +81 -0
  68. package/dist/types/api.d.ts.map +1 -0
  69. package/dist/types/api.js +5 -0
  70. package/dist/types/api.js.map +1 -0
  71. package/dist/types/tools.d.ts +41 -0
  72. package/dist/types/tools.d.ts.map +1 -0
  73. package/dist/types/tools.js +2 -0
  74. package/dist/types/tools.js.map +1 -0
  75. package/dist/utils/error-handler.d.ts +41 -0
  76. package/dist/utils/error-handler.d.ts.map +1 -0
  77. package/dist/utils/error-handler.js +65 -0
  78. package/dist/utils/error-handler.js.map +1 -0
  79. package/package.json +55 -0
package/dist/server.js ADDED
@@ -0,0 +1,91 @@
1
+ import { Server } from '@modelcontextprotocol/sdk/server/index.js';
2
+ import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
3
+ import { CallToolRequestSchema, ListToolsRequestSchema, } from '@modelcontextprotocol/sdk/types.js';
4
+ import { MemAPIClient } from './client/mem-api-client.js';
5
+ import { MemItTool } from './tools/mem-it.js';
6
+ import { CreateNoteTool } from './tools/notes/create-note.js';
7
+ import { GetNoteTool } from './tools/notes/get-note.js';
8
+ import { DeleteNoteTool } from './tools/notes/delete-note.js';
9
+ import { ListNotesTool } from './tools/notes/list-notes.js';
10
+ import { SearchNotesTool } from './tools/notes/search-notes.js';
11
+ import { CreateCollectionTool } from './tools/collections/create-collection.js';
12
+ import { GetCollectionTool } from './tools/collections/get-collection.js';
13
+ import { DeleteCollectionTool } from './tools/collections/delete-collection.js';
14
+ import { ListCollectionsTool } from './tools/collections/list-collections.js';
15
+ import { SearchCollectionsTool } from './tools/collections/search-collections.js';
16
+ /**
17
+ * Create and configure the MCP server
18
+ */
19
+ export async function createServer(apiKey, baseURL) {
20
+ // Initialize API client
21
+ const client = new MemAPIClient(apiKey, baseURL);
22
+ // Initialize all tools
23
+ const tools = [
24
+ new MemItTool(client),
25
+ new CreateNoteTool(client),
26
+ new GetNoteTool(client),
27
+ new DeleteNoteTool(client),
28
+ new ListNotesTool(client),
29
+ new SearchNotesTool(client),
30
+ new CreateCollectionTool(client),
31
+ new GetCollectionTool(client),
32
+ new DeleteCollectionTool(client),
33
+ new ListCollectionsTool(client),
34
+ new SearchCollectionsTool(client),
35
+ ];
36
+ // Create tools map for quick lookup
37
+ const toolsMap = new Map(tools.map((tool) => [tool.name, tool]));
38
+ // Create MCP server
39
+ const server = new Server({
40
+ name: 'mem-ai-mcp-server',
41
+ version: '0.1.0',
42
+ }, {
43
+ capabilities: {
44
+ tools: {},
45
+ },
46
+ });
47
+ // Register ListTools handler
48
+ server.setRequestHandler(ListToolsRequestSchema, async () => ({
49
+ tools: tools.map((tool) => tool.toDefinition()),
50
+ }));
51
+ // Register CallTool handler
52
+ server.setRequestHandler(CallToolRequestSchema, async (request) => {
53
+ const tool = toolsMap.get(request.params.name);
54
+ if (!tool) {
55
+ throw new Error(`Unknown tool: ${request.params.name}`);
56
+ }
57
+ try {
58
+ const result = await tool.handle(request.params.arguments);
59
+ return result;
60
+ }
61
+ catch (error) {
62
+ // Return error response in MCP format
63
+ const errorMessage = error instanceof Error ? error.message : 'Unknown error';
64
+ const errorName = error instanceof Error ? error.name : 'Error';
65
+ return {
66
+ content: [
67
+ {
68
+ type: 'text',
69
+ text: JSON.stringify({
70
+ error: errorName,
71
+ message: errorMessage,
72
+ }, null, 2),
73
+ },
74
+ ],
75
+ isError: true,
76
+ };
77
+ }
78
+ });
79
+ return server;
80
+ }
81
+ /**
82
+ * Start the MCP server with stdio transport
83
+ */
84
+ export async function startServer(apiKey, baseURL) {
85
+ const server = await createServer(apiKey, baseURL);
86
+ const transport = new StdioServerTransport();
87
+ await server.connect(transport);
88
+ // Log to stderr (stdout is used for MCP communication)
89
+ console.error('mem.ai MCP server started successfully');
90
+ }
91
+ //# sourceMappingURL=server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import { z } from 'zod';
2
+ import type { ToolResponse, ToolDefinition } from '../types/tools.js';
3
+ import type { MemAPIClient } from '../client/mem-api-client.js';
4
+ /**
5
+ * Abstract base class for all MCP tools
6
+ */
7
+ export declare abstract class BaseTool {
8
+ name: string;
9
+ description: string;
10
+ schema: z.ZodType<unknown>;
11
+ protected client: MemAPIClient;
12
+ constructor(name: string, description: string, schema: z.ZodType<unknown>, client: MemAPIClient);
13
+ /**
14
+ * Handle tool execution with parameter validation and error handling
15
+ */
16
+ handle(params: unknown): Promise<ToolResponse>;
17
+ /**
18
+ * Convert tool to MCP tool definition
19
+ */
20
+ toDefinition(): ToolDefinition;
21
+ /**
22
+ * Execute the tool logic (to be implemented by subclasses)
23
+ */
24
+ protected abstract execute(params: unknown): Promise<unknown>;
25
+ }
26
+ //# sourceMappingURL=base-tool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-tool.d.ts","sourceRoot":"","sources":["../../src/tools/base-tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACtE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEhE;;GAEG;AACH,8BAAsB,QAAQ;IAInB,IAAI,EAAE,MAAM;IACZ,WAAW,EAAE,MAAM;IACnB,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IALnC,SAAS,CAAC,MAAM,EAAE,YAAY,CAAC;gBAGtB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EACjC,MAAM,EAAE,YAAY;IAKtB;;OAEG;IACG,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC;IA4BpD;;OAEG;IACH,YAAY,IAAI,cAAc;IAgB9B;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;CAC9D"}
@@ -0,0 +1,64 @@
1
+ import { z } from 'zod';
2
+ import { zodToJsonSchema } from 'zod-to-json-schema';
3
+ import { ValidationError } from '../utils/error-handler.js';
4
+ /**
5
+ * Abstract base class for all MCP tools
6
+ */
7
+ export class BaseTool {
8
+ name;
9
+ description;
10
+ schema;
11
+ client;
12
+ constructor(name, description, schema, client) {
13
+ this.name = name;
14
+ this.description = description;
15
+ this.schema = schema;
16
+ this.client = client;
17
+ }
18
+ /**
19
+ * Handle tool execution with parameter validation and error handling
20
+ */
21
+ async handle(params) {
22
+ try {
23
+ // Validate parameters
24
+ const validated = this.schema.parse(params);
25
+ // Execute tool logic
26
+ const result = await this.execute(validated);
27
+ // Return successful response
28
+ return {
29
+ content: [
30
+ {
31
+ type: 'text',
32
+ text: JSON.stringify(result, null, 2),
33
+ },
34
+ ],
35
+ };
36
+ }
37
+ catch (error) {
38
+ // Handle validation errors
39
+ if (error instanceof z.ZodError) {
40
+ throw new ValidationError('Invalid parameters', error.issues);
41
+ }
42
+ // Re-throw other errors to be handled by server
43
+ throw error;
44
+ }
45
+ }
46
+ /**
47
+ * Convert tool to MCP tool definition
48
+ */
49
+ toDefinition() {
50
+ const jsonSchema = zodToJsonSchema(this.schema, {
51
+ $refStrategy: 'none',
52
+ });
53
+ return {
54
+ name: this.name,
55
+ description: this.description,
56
+ inputSchema: {
57
+ type: 'object',
58
+ properties: jsonSchema.properties || {},
59
+ required: jsonSchema.required,
60
+ },
61
+ };
62
+ }
63
+ }
64
+ //# sourceMappingURL=base-tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-tool.js","sourceRoot":"","sources":["../../src/tools/base-tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAI5D;;GAEG;AACH,MAAM,OAAgB,QAAQ;IAInB;IACA;IACA;IALC,MAAM,CAAe;IAE/B,YACS,IAAY,EACZ,WAAmB,EACnB,MAA0B,EACjC,MAAoB;QAHb,SAAI,GAAJ,IAAI,CAAQ;QACZ,gBAAW,GAAX,WAAW,CAAQ;QACnB,WAAM,GAAN,MAAM,CAAoB;QAGjC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,MAAe;QAC1B,IAAI,CAAC;YACH,sBAAsB;YACtB,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAE5C,qBAAqB;YACrB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAE7C,6BAA6B;YAC7B,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;qBACtC;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,2BAA2B;YAC3B,IAAI,KAAK,YAAY,CAAC,CAAC,QAAQ,EAAE,CAAC;gBAChC,MAAM,IAAI,eAAe,CAAC,oBAAoB,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;YAChE,CAAC;YAED,gDAAgD;YAChD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACH,YAAY;QACV,MAAM,UAAU,GAAG,eAAe,CAAC,IAAI,CAAC,MAAM,EAAE;YAC9C,YAAY,EAAE,MAAM;SACrB,CAAiF,CAAC;QAEnF,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE,UAAU,CAAC,UAAU,IAAI,EAAE;gBACvC,QAAQ,EAAE,UAAU,CAAC,QAAQ;aAC9B;SACF,CAAC;IACJ,CAAC;CAMF"}
@@ -0,0 +1,10 @@
1
+ import { BaseTool } from '../base-tool.js';
2
+ import type { MemAPIClient } from '../../client/mem-api-client.js';
3
+ /**
4
+ * Tool for creating a new collection
5
+ */
6
+ export declare class CreateCollectionTool extends BaseTool {
7
+ constructor(client: MemAPIClient);
8
+ protected execute(params: unknown): Promise<import("../../types/api.js").CreateCollectionResponse>;
9
+ }
10
+ //# sourceMappingURL=create-collection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-collection.d.ts","sourceRoot":"","sources":["../../../src/tools/collections/create-collection.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAOnE;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,QAAQ;gBACpC,MAAM,EAAE,YAAY;cAShB,OAAO,CAAC,MAAM,EAAE,OAAO;CAIxC"}
@@ -0,0 +1,19 @@
1
+ import { z } from 'zod';
2
+ import { BaseTool } from '../base-tool.js';
3
+ const createCollectionSchema = z.object({
4
+ title: z.string().describe('Collection title'),
5
+ description: z.string().optional().describe('Collection description'),
6
+ });
7
+ /**
8
+ * Tool for creating a new collection
9
+ */
10
+ export class CreateCollectionTool extends BaseTool {
11
+ constructor(client) {
12
+ super('create_collection', 'Create a new collection in mem.ai.', createCollectionSchema, client);
13
+ }
14
+ async execute(params) {
15
+ const validated = params;
16
+ return this.client.createCollection(validated);
17
+ }
18
+ }
19
+ //# sourceMappingURL=create-collection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-collection.js","sourceRoot":"","sources":["../../../src/tools/collections/create-collection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAG3C,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;IAC9C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;CACtE,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,OAAO,oBAAqB,SAAQ,QAAQ;IAChD,YAAY,MAAoB;QAC9B,KAAK,CACH,mBAAmB,EACnB,oCAAoC,EACpC,sBAAsB,EACtB,MAAM,CACP,CAAC;IACJ,CAAC;IAES,KAAK,CAAC,OAAO,CAAC,MAAe;QACrC,MAAM,SAAS,GAAG,MAAgD,CAAC;QACnE,OAAO,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;IACjD,CAAC;CACF"}
@@ -0,0 +1,10 @@
1
+ import { BaseTool } from '../base-tool.js';
2
+ import type { MemAPIClient } from '../../client/mem-api-client.js';
3
+ /**
4
+ * Tool for deleting a collection
5
+ */
6
+ export declare class DeleteCollectionTool extends BaseTool {
7
+ constructor(client: MemAPIClient);
8
+ protected execute(params: unknown): Promise<import("../../types/api.js").DeleteCollectionResponse>;
9
+ }
10
+ //# sourceMappingURL=delete-collection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-collection.d.ts","sourceRoot":"","sources":["../../../src/tools/collections/delete-collection.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAMnE;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,QAAQ;gBACpC,MAAM,EAAE,YAAY;cAShB,OAAO,CAAC,MAAM,EAAE,OAAO;CAIxC"}
@@ -0,0 +1,18 @@
1
+ import { z } from 'zod';
2
+ import { BaseTool } from '../base-tool.js';
3
+ const deleteCollectionSchema = z.object({
4
+ collection_id: z.string().uuid().describe('Collection ID to delete'),
5
+ });
6
+ /**
7
+ * Tool for deleting a collection
8
+ */
9
+ export class DeleteCollectionTool extends BaseTool {
10
+ constructor(client) {
11
+ super('delete_collection', 'Delete a collection from mem.ai.', deleteCollectionSchema, client);
12
+ }
13
+ async execute(params) {
14
+ const validated = params;
15
+ return this.client.deleteCollection(validated.collection_id);
16
+ }
17
+ }
18
+ //# sourceMappingURL=delete-collection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-collection.js","sourceRoot":"","sources":["../../../src/tools/collections/delete-collection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAG3C,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;CACrE,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,OAAO,oBAAqB,SAAQ,QAAQ;IAChD,YAAY,MAAoB;QAC9B,KAAK,CACH,mBAAmB,EACnB,kCAAkC,EAClC,sBAAsB,EACtB,MAAM,CACP,CAAC;IACJ,CAAC;IAES,KAAK,CAAC,OAAO,CAAC,MAAe;QACrC,MAAM,SAAS,GAAG,MAAgD,CAAC;QACnE,OAAO,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;IAC/D,CAAC;CACF"}
@@ -0,0 +1,10 @@
1
+ import { BaseTool } from '../base-tool.js';
2
+ import type { MemAPIClient } from '../../client/mem-api-client.js';
3
+ /**
4
+ * Tool for retrieving a specific collection by ID
5
+ */
6
+ export declare class GetCollectionTool extends BaseTool {
7
+ constructor(client: MemAPIClient);
8
+ protected execute(params: unknown): Promise<import("../../types/api.js").GetCollectionResponse>;
9
+ }
10
+ //# sourceMappingURL=get-collection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-collection.d.ts","sourceRoot":"","sources":["../../../src/tools/collections/get-collection.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAMnE;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,QAAQ;gBACjC,MAAM,EAAE,YAAY;cAShB,OAAO,CAAC,MAAM,EAAE,OAAO;CAIxC"}
@@ -0,0 +1,18 @@
1
+ import { z } from 'zod';
2
+ import { BaseTool } from '../base-tool.js';
3
+ const getCollectionSchema = z.object({
4
+ collection_id: z.string().uuid().describe('Collection ID to retrieve'),
5
+ });
6
+ /**
7
+ * Tool for retrieving a specific collection by ID
8
+ */
9
+ export class GetCollectionTool extends BaseTool {
10
+ constructor(client) {
11
+ super('get_collection', 'Retrieve a specific collection by its ID.', getCollectionSchema, client);
12
+ }
13
+ async execute(params) {
14
+ const validated = params;
15
+ return this.client.getCollection(validated.collection_id);
16
+ }
17
+ }
18
+ //# sourceMappingURL=get-collection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-collection.js","sourceRoot":"","sources":["../../../src/tools/collections/get-collection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAG3C,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;CACvE,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,OAAO,iBAAkB,SAAQ,QAAQ;IAC7C,YAAY,MAAoB;QAC9B,KAAK,CACH,gBAAgB,EAChB,2CAA2C,EAC3C,mBAAmB,EACnB,MAAM,CACP,CAAC;IACJ,CAAC;IAES,KAAK,CAAC,OAAO,CAAC,MAAe;QACrC,MAAM,SAAS,GAAG,MAA6C,CAAC;QAChE,OAAO,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;IAC5D,CAAC;CACF"}
@@ -0,0 +1,10 @@
1
+ import { BaseTool } from '../base-tool.js';
2
+ import type { MemAPIClient } from '../../client/mem-api-client.js';
3
+ /**
4
+ * Tool for listing all collections
5
+ */
6
+ export declare class ListCollectionsTool extends BaseTool {
7
+ constructor(client: MemAPIClient);
8
+ protected execute(_params: unknown): Promise<import("../../types/api.js").ListCollectionsResponse>;
9
+ }
10
+ //# sourceMappingURL=list-collections.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-collections.d.ts","sourceRoot":"","sources":["../../../src/tools/collections/list-collections.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAInE;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,QAAQ;gBACnC,MAAM,EAAE,YAAY;cAShB,OAAO,CAAC,OAAO,EAAE,OAAO;CAGzC"}
@@ -0,0 +1,15 @@
1
+ import { z } from 'zod';
2
+ import { BaseTool } from '../base-tool.js';
3
+ const listCollectionsSchema = z.object({});
4
+ /**
5
+ * Tool for listing all collections
6
+ */
7
+ export class ListCollectionsTool extends BaseTool {
8
+ constructor(client) {
9
+ super('list_collections', 'List all collections in mem.ai.', listCollectionsSchema, client);
10
+ }
11
+ async execute(_params) {
12
+ return this.client.listCollections();
13
+ }
14
+ }
15
+ //# sourceMappingURL=list-collections.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-collections.js","sourceRoot":"","sources":["../../../src/tools/collections/list-collections.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAG3C,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAE3C;;GAEG;AACH,MAAM,OAAO,mBAAoB,SAAQ,QAAQ;IAC/C,YAAY,MAAoB;QAC9B,KAAK,CACH,kBAAkB,EAClB,iCAAiC,EACjC,qBAAqB,EACrB,MAAM,CACP,CAAC;IACJ,CAAC;IAES,KAAK,CAAC,OAAO,CAAC,OAAgB;QACtC,OAAO,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;IACvC,CAAC;CACF"}
@@ -0,0 +1,10 @@
1
+ import { BaseTool } from '../base-tool.js';
2
+ import type { MemAPIClient } from '../../client/mem-api-client.js';
3
+ /**
4
+ * Tool for searching collections
5
+ */
6
+ export declare class SearchCollectionsTool extends BaseTool {
7
+ constructor(client: MemAPIClient);
8
+ protected execute(params: unknown): Promise<import("../../types/api.js").SearchCollectionsResponse>;
9
+ }
10
+ //# sourceMappingURL=search-collections.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search-collections.d.ts","sourceRoot":"","sources":["../../../src/tools/collections/search-collections.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAQnE;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,QAAQ;gBACrC,MAAM,EAAE,YAAY;cAShB,OAAO,CAAC,MAAM,EAAE,OAAO;CAIxC"}
@@ -0,0 +1,20 @@
1
+ import { z } from 'zod';
2
+ import { BaseTool } from '../base-tool.js';
3
+ const searchCollectionsSchema = z.object({
4
+ query: z.string().describe('Search query'),
5
+ limit: z.number().int().positive().max(100).optional().describe('Maximum number of results (max 100)'),
6
+ offset: z.number().int().nonnegative().optional().describe('Number of results to skip'),
7
+ });
8
+ /**
9
+ * Tool for searching collections
10
+ */
11
+ export class SearchCollectionsTool extends BaseTool {
12
+ constructor(client) {
13
+ super('search_collections', 'Search across all collections in mem.ai.', searchCollectionsSchema, client);
14
+ }
15
+ async execute(params) {
16
+ const validated = params;
17
+ return this.client.searchCollections(validated);
18
+ }
19
+ }
20
+ //# sourceMappingURL=search-collections.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search-collections.js","sourceRoot":"","sources":["../../../src/tools/collections/search-collections.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAG3C,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;IAC1C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC;IACtG,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;CACxF,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,OAAO,qBAAsB,SAAQ,QAAQ;IACjD,YAAY,MAAoB;QAC9B,KAAK,CACH,oBAAoB,EACpB,0CAA0C,EAC1C,uBAAuB,EACvB,MAAM,CACP,CAAC;IACJ,CAAC;IAES,KAAK,CAAC,OAAO,CAAC,MAAe;QACrC,MAAM,SAAS,GAAG,MAAiD,CAAC;QACpE,OAAO,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;IAClD,CAAC;CACF"}
@@ -0,0 +1,10 @@
1
+ import { BaseTool } from './base-tool.js';
2
+ import type { MemAPIClient } from '../client/mem-api-client.js';
3
+ /**
4
+ * Tool for remembering content intelligently using Mem It
5
+ */
6
+ export declare class MemItTool extends BaseTool {
7
+ constructor(client: MemAPIClient);
8
+ protected execute(params: unknown): Promise<import("../types/api.js").MemItResponse>;
9
+ }
10
+ //# sourceMappingURL=mem-it.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mem-it.d.ts","sourceRoot":"","sources":["../../src/tools/mem-it.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAShE;;GAEG;AACH,qBAAa,SAAU,SAAQ,QAAQ;gBACzB,MAAM,EAAE,YAAY;cAShB,OAAO,CAAC,MAAM,EAAE,OAAO;CAIxC"}
@@ -0,0 +1,21 @@
1
+ import { z } from 'zod';
2
+ import { BaseTool } from './base-tool.js';
3
+ const memItSchema = z.object({
4
+ input: z.string().max(1000000).describe('Content to remember (max ~1MB)'),
5
+ instructions: z.string().max(10000).optional().describe('Processing instructions'),
6
+ context: z.string().max(10000).optional().describe('Background context'),
7
+ timestamp: z.string().datetime().optional().describe('ISO 8601 timestamp'),
8
+ });
9
+ /**
10
+ * Tool for remembering content intelligently using Mem It
11
+ */
12
+ export class MemItTool extends BaseTool {
13
+ constructor(client) {
14
+ super('mem_it', 'Remember any content intelligently. This is the primary endpoint for saving information to mem.ai.', memItSchema, client);
15
+ }
16
+ async execute(params) {
17
+ const validated = params;
18
+ return this.client.memIt(validated);
19
+ }
20
+ }
21
+ //# sourceMappingURL=mem-it.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mem-it.js","sourceRoot":"","sources":["../../src/tools/mem-it.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAG1C,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,gCAAgC,CAAC;IACzE,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;IAClF,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC;IACxE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC;CAC3E,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,OAAO,SAAU,SAAQ,QAAQ;IACrC,YAAY,MAAoB;QAC9B,KAAK,CACH,QAAQ,EACR,oGAAoG,EACpG,WAAW,EACX,MAAM,CACP,CAAC;IACJ,CAAC;IAES,KAAK,CAAC,OAAO,CAAC,MAAe;QACrC,MAAM,SAAS,GAAG,MAAqC,CAAC;QACxD,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACtC,CAAC;CACF"}
@@ -0,0 +1,10 @@
1
+ import { BaseTool } from '../base-tool.js';
2
+ import type { MemAPIClient } from '../../client/mem-api-client.js';
3
+ /**
4
+ * Tool for creating a new note
5
+ */
6
+ export declare class CreateNoteTool extends BaseTool {
7
+ constructor(client: MemAPIClient);
8
+ protected execute(params: unknown): Promise<import("../../types/api.js").CreateNoteResponse>;
9
+ }
10
+ //# sourceMappingURL=create-note.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-note.d.ts","sourceRoot":"","sources":["../../../src/tools/notes/create-note.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAWnE;;GAEG;AACH,qBAAa,cAAe,SAAQ,QAAQ;gBAC9B,MAAM,EAAE,YAAY;cAShB,OAAO,CAAC,MAAM,EAAE,OAAO;CAIxC"}
@@ -0,0 +1,23 @@
1
+ import { z } from 'zod';
2
+ import { BaseTool } from '../base-tool.js';
3
+ const createNoteSchema = z.object({
4
+ content: z.string().max(200000).describe('Markdown formatted note content'),
5
+ id: z.string().uuid().optional().describe('Optional UUID for the note'),
6
+ collection_ids: z.array(z.string().uuid()).optional().describe('Collection IDs to add the note to'),
7
+ collection_titles: z.array(z.string()).optional().describe('Collection titles to add the note to'),
8
+ created_at: z.string().datetime().optional().describe('ISO 8601 creation timestamp'),
9
+ updated_at: z.string().datetime().optional().describe('ISO 8601 update timestamp'),
10
+ });
11
+ /**
12
+ * Tool for creating a new note
13
+ */
14
+ export class CreateNoteTool extends BaseTool {
15
+ constructor(client) {
16
+ super('create_note', 'Create a new note in mem.ai with markdown content.', createNoteSchema, client);
17
+ }
18
+ async execute(params) {
19
+ const validated = params;
20
+ return this.client.createNote(validated);
21
+ }
22
+ }
23
+ //# sourceMappingURL=create-note.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-note.js","sourceRoot":"","sources":["../../../src/tools/notes/create-note.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAG3C,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,iCAAiC,CAAC;IAC3E,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;IACvE,cAAc,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;IACnG,iBAAiB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;IAClG,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6BAA6B,CAAC;IACpF,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;CACnF,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,OAAO,cAAe,SAAQ,QAAQ;IAC1C,YAAY,MAAoB;QAC9B,KAAK,CACH,aAAa,EACb,oDAAoD,EACpD,gBAAgB,EAChB,MAAM,CACP,CAAC;IACJ,CAAC;IAES,KAAK,CAAC,OAAO,CAAC,MAAe;QACrC,MAAM,SAAS,GAAG,MAA0C,CAAC;QAC7D,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IAC3C,CAAC;CACF"}
@@ -0,0 +1,10 @@
1
+ import { BaseTool } from '../base-tool.js';
2
+ import type { MemAPIClient } from '../../client/mem-api-client.js';
3
+ /**
4
+ * Tool for deleting a note
5
+ */
6
+ export declare class DeleteNoteTool extends BaseTool {
7
+ constructor(client: MemAPIClient);
8
+ protected execute(params: unknown): Promise<import("../../types/api.js").DeleteNoteResponse>;
9
+ }
10
+ //# sourceMappingURL=delete-note.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-note.d.ts","sourceRoot":"","sources":["../../../src/tools/notes/delete-note.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAMnE;;GAEG;AACH,qBAAa,cAAe,SAAQ,QAAQ;gBAC9B,MAAM,EAAE,YAAY;cAShB,OAAO,CAAC,MAAM,EAAE,OAAO;CAIxC"}
@@ -0,0 +1,18 @@
1
+ import { z } from 'zod';
2
+ import { BaseTool } from '../base-tool.js';
3
+ const deleteNoteSchema = z.object({
4
+ note_id: z.string().uuid().describe('Note ID to delete'),
5
+ });
6
+ /**
7
+ * Tool for deleting a note
8
+ */
9
+ export class DeleteNoteTool extends BaseTool {
10
+ constructor(client) {
11
+ super('delete_note', 'Delete a note from mem.ai.', deleteNoteSchema, client);
12
+ }
13
+ async execute(params) {
14
+ const validated = params;
15
+ return this.client.deleteNote(validated.note_id);
16
+ }
17
+ }
18
+ //# sourceMappingURL=delete-note.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-note.js","sourceRoot":"","sources":["../../../src/tools/notes/delete-note.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAG3C,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;CACzD,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,OAAO,cAAe,SAAQ,QAAQ;IAC1C,YAAY,MAAoB;QAC9B,KAAK,CACH,aAAa,EACb,4BAA4B,EAC5B,gBAAgB,EAChB,MAAM,CACP,CAAC;IACJ,CAAC;IAES,KAAK,CAAC,OAAO,CAAC,MAAe;QACrC,MAAM,SAAS,GAAG,MAA0C,CAAC;QAC7D,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACnD,CAAC;CACF"}
@@ -0,0 +1,10 @@
1
+ import { BaseTool } from '../base-tool.js';
2
+ import type { MemAPIClient } from '../../client/mem-api-client.js';
3
+ /**
4
+ * Tool for retrieving a specific note by ID
5
+ */
6
+ export declare class GetNoteTool extends BaseTool {
7
+ constructor(client: MemAPIClient);
8
+ protected execute(params: unknown): Promise<import("../../types/api.js").GetNoteResponse>;
9
+ }
10
+ //# sourceMappingURL=get-note.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-note.d.ts","sourceRoot":"","sources":["../../../src/tools/notes/get-note.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAMnE;;GAEG;AACH,qBAAa,WAAY,SAAQ,QAAQ;gBAC3B,MAAM,EAAE,YAAY;cAShB,OAAO,CAAC,MAAM,EAAE,OAAO;CAIxC"}
@@ -0,0 +1,18 @@
1
+ import { z } from 'zod';
2
+ import { BaseTool } from '../base-tool.js';
3
+ const getNoteSchema = z.object({
4
+ note_id: z.string().uuid().describe('Note ID to retrieve'),
5
+ });
6
+ /**
7
+ * Tool for retrieving a specific note by ID
8
+ */
9
+ export class GetNoteTool extends BaseTool {
10
+ constructor(client) {
11
+ super('get_note', 'Retrieve a specific note by its ID.', getNoteSchema, client);
12
+ }
13
+ async execute(params) {
14
+ const validated = params;
15
+ return this.client.getNote(validated.note_id);
16
+ }
17
+ }
18
+ //# sourceMappingURL=get-note.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-note.js","sourceRoot":"","sources":["../../../src/tools/notes/get-note.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAG3C,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;CAC3D,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,OAAO,WAAY,SAAQ,QAAQ;IACvC,YAAY,MAAoB;QAC9B,KAAK,CACH,UAAU,EACV,qCAAqC,EACrC,aAAa,EACb,MAAM,CACP,CAAC;IACJ,CAAC;IAES,KAAK,CAAC,OAAO,CAAC,MAAe;QACrC,MAAM,SAAS,GAAG,MAAuC,CAAC;QAC1D,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAChD,CAAC;CACF"}
@@ -0,0 +1,10 @@
1
+ import { BaseTool } from '../base-tool.js';
2
+ import type { MemAPIClient } from '../../client/mem-api-client.js';
3
+ /**
4
+ * Tool for listing all notes
5
+ */
6
+ export declare class ListNotesTool extends BaseTool {
7
+ constructor(client: MemAPIClient);
8
+ protected execute(_params: unknown): Promise<import("../../types/api.js").ListNotesResponse>;
9
+ }
10
+ //# sourceMappingURL=list-notes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-notes.d.ts","sourceRoot":"","sources":["../../../src/tools/notes/list-notes.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAInE;;GAEG;AACH,qBAAa,aAAc,SAAQ,QAAQ;gBAC7B,MAAM,EAAE,YAAY;cAShB,OAAO,CAAC,OAAO,EAAE,OAAO;CAGzC"}
@@ -0,0 +1,15 @@
1
+ import { z } from 'zod';
2
+ import { BaseTool } from '../base-tool.js';
3
+ const listNotesSchema = z.object({});
4
+ /**
5
+ * Tool for listing all notes
6
+ */
7
+ export class ListNotesTool extends BaseTool {
8
+ constructor(client) {
9
+ super('list_notes', 'List all notes in mem.ai.', listNotesSchema, client);
10
+ }
11
+ async execute(_params) {
12
+ return this.client.listNotes();
13
+ }
14
+ }
15
+ //# sourceMappingURL=list-notes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-notes.js","sourceRoot":"","sources":["../../../src/tools/notes/list-notes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAG3C,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAErC;;GAEG;AACH,MAAM,OAAO,aAAc,SAAQ,QAAQ;IACzC,YAAY,MAAoB;QAC9B,KAAK,CACH,YAAY,EACZ,2BAA2B,EAC3B,eAAe,EACf,MAAM,CACP,CAAC;IACJ,CAAC;IAES,KAAK,CAAC,OAAO,CAAC,OAAgB;QACtC,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;IACjC,CAAC;CACF"}
@@ -0,0 +1,10 @@
1
+ import { BaseTool } from '../base-tool.js';
2
+ import type { MemAPIClient } from '../../client/mem-api-client.js';
3
+ /**
4
+ * Tool for searching notes
5
+ */
6
+ export declare class SearchNotesTool extends BaseTool {
7
+ constructor(client: MemAPIClient);
8
+ protected execute(params: unknown): Promise<import("../../types/api.js").SearchNotesResponse>;
9
+ }
10
+ //# sourceMappingURL=search-notes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search-notes.d.ts","sourceRoot":"","sources":["../../../src/tools/notes/search-notes.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAQnE;;GAEG;AACH,qBAAa,eAAgB,SAAQ,QAAQ;gBAC/B,MAAM,EAAE,YAAY;cAShB,OAAO,CAAC,MAAM,EAAE,OAAO;CAIxC"}