Skip to main content
Glama

get_all_memories

Retrieve all stored memories with options for pagination, sorting by date, and filtering by bucket, source type, or reference data for precise memory management.

Instructions

Retrieve all memories with pagination support

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
allNoGet all memories (overrides pagination, default: false)
bucket_idNoFilter to specific bucket
date_sortNoSort results by date (default: false)
include_reference_dataNoInclude reference data in response (default: false)
limitNoMaximum number of results to return (1-100, default: 10)
offsetNoNumber of results to skip for pagination (default: 0)
sort_orderNoSort order (default: 'desc')
source_typeNoFilter by source type

Implementation Reference

  • MCP tool handler for 'get_all_memories': parses input arguments, calls MemoryBoxClient.getAllMemories(), formats and returns the list of memories.
    case "get_all_memories": { const options = { all: Boolean(request.params.arguments?.all || false), bucketId: request.params.arguments?.bucket_id ? String(request.params.arguments.bucket_id) : undefined, sourceType: request.params.arguments?.source_type ? String(request.params.arguments.source_type) : undefined, limit: request.params.arguments?.limit ? Number(request.params.arguments.limit) : undefined, offset: request.params.arguments?.offset ? Number(request.params.arguments.offset) : undefined, includeReferenceData: Boolean(request.params.arguments?.include_reference_data || false), dateSort: Boolean(request.params.arguments?.date_sort || false), sortOrder: request.params.arguments?.sort_order as 'asc' | 'desc' | undefined }; // Get memories const result = await memoryBoxClient.getAllMemories(options); // Format the results let responseText = "All memories:\n\n"; if (result.items && result.items.length > 0) { result.items.forEach((memory: any, index: number) => { responseText += `${index + 1}. [${memory.bucket_id}] ${memory.text}\n\n`; }); } else { responseText += "No memories found."; } return { content: [{ type: "text", text: responseText }] }; }
  • MemoryBoxClient.getAllMemories(): API client method that fetches all memories from the Memory Box API using GET /api/v2/memory with query parameters.
    async getAllMemories(options?: { all?: boolean; bucketId?: string; sourceType?: string; limit?: number; offset?: number; includeReferenceData?: boolean; dateSort?: boolean; sortOrder?: 'asc' | 'desc'; }): Promise<any> { try { const params: any = {}; if (options) { if (options.all !== undefined) params.all = options.all; if (options.bucketId !== undefined) params.bucketId = options.bucketId; if (options.sourceType !== undefined) params.source_type = options.sourceType; if (options.limit !== undefined) params.limit = options.limit; if (options.offset !== undefined) params.offset = options.offset; if (options.includeReferenceData !== undefined) params.include_reference_data = options.includeReferenceData; if (options.dateSort !== undefined) params.date_sort = options.dateSort; if (options.sortOrder !== undefined) params.sort_order = options.sortOrder; } else { params.all = true; // Default behavior for backward compatibility } const response = await axios.get( `${this.baseUrl}/api/v2/memory`, { params, headers: { "Authorization": `Bearer ${this.token}` } } ); return response.data; } catch (error) { if (axios.isAxiosError(error)) { throw new McpError( ErrorCode.InternalError, `Failed to get all memories: ${error.response?.data?.detail || error.message}` ); } throw error; } }
  • src/index.ts:658-702 (registration)
    Tool registration in ListToolsRequestSchema handler: defines name, description, and inputSchema for get_all_memories.
    { name: "get_all_memories", description: "Retrieve all memories with pagination support", inputSchema: { type: "object", properties: { all: { type: "boolean", description: "Get all memories (overrides pagination, default: false)" }, bucket_id: { type: "string", description: "Filter to specific bucket" }, source_type: { type: "string", description: "Filter by source type" }, limit: { type: "integer", description: "Maximum number of results to return (1-100, default: 10)", minimum: 1, maximum: 100 }, offset: { type: "integer", description: "Number of results to skip for pagination (default: 0)", minimum: 0 }, include_reference_data: { type: "boolean", description: "Include reference data in response (default: false)" }, date_sort: { type: "boolean", description: "Sort results by date (default: false)" }, sort_order: { type: "string", description: "Sort order (default: 'desc')", enum: ["asc", "desc"] } } } },
  • Input schema definition for get_all_memories tool, specifying parameters for filtering, pagination, and sorting memories.
    inputSchema: { type: "object", properties: { all: { type: "boolean", description: "Get all memories (overrides pagination, default: false)" }, bucket_id: { type: "string", description: "Filter to specific bucket" }, source_type: { type: "string", description: "Filter by source type" }, limit: { type: "integer", description: "Maximum number of results to return (1-100, default: 10)", minimum: 1, maximum: 100 }, offset: { type: "integer", description: "Number of results to skip for pagination (default: 0)", minimum: 0 }, include_reference_data: { type: "boolean", description: "Include reference data in response (default: false)" }, date_sort: { type: "boolean", description: "Sort results by date (default: false)" }, sort_order: { type: "string", description: "Sort order (default: 'desc')", enum: ["asc", "desc"] } } }

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/amotivv/memory-box-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server