@pairsystems/n8n-nodes-goodmem
v1.0.0
Published
n8n community node for Goodmem semantic memory API
Keywords
Readme
n8n-nodes-goodmem
This is an n8n community node that integrates with Goodmem, a semantic memory and knowledge storage platform. It enables n8n workflows to store, retrieve, and manage semantic memories with powerful embedding and search capabilities.

Features
- Spaces Management - Create and delete memory spaces (containers for organizing memories)
- Memory Operations - Full CRUD operations for storing and retrieving memories
- Semantic Search - Retrieve memories using natural language queries with relevance scoring
- Flexible Chunking - Configure recursive, sentence-based, or custom chunking strategies
- Advanced Retrieval - Post-processing with reranking, LLM generation, and relevance filtering
- Metadata Support - Tag memories and spaces with custom labels and metadata for filtering
Table of Contents
- Prerequisites
- Installation
- Credentials
- Operations
- Usage Examples
- Chunking Strategies
- Advanced Retrieval Options
- Development
- Resources
- License
Prerequisites
- n8n version 1.60.0 or later
- A Goodmem account with API access
- Goodmem API key and server URL
Installation
Goodmem Installation
Configure a goodmem server to connect to before using the node. Visit https://goodmem.ai/quick-start for more instructions. Consider using the Railway or Fly.io installation for quick access to the Goodmem API over the internet.
Community Nodes (Recommended)
- Open your n8n instance
- Go to Settings > Community Nodes
- Select Install
- Enter
n8n-nodes-goodmemand click Install
Manual Installation
cd ~/.n8n/nodes
npm install n8n-nodes-goodmemThen restart your n8n instance.
Credentials
Before using the node, configure your Goodmem credentials:
- In n8n, go to Credentials > New
- Search for Goodmem API
- Enter the following:
- Goodmem Server: Your Goodmem API server URL
- Goodmem API Key: Your API key for authentication
Operations
Spaces
| Operation | Description | |-----------|-------------| | Create | Create a new semantic memory space with custom embedders and chunking configuration | | Delete | Remove an existing space and all its memories |
Memories
| Operation | Description | |-----------|-------------| | Create | Store new content as a memory with optional chunking and metadata | | Get | Retrieve a memory's metadata and optionally its content and processing history | | Delete | Remove a specific memory from a space | | Download Content | Retrieve the original content of a stored memory | | Retrieve | Perform semantic search across one or more spaces with natural language |
Usage Examples
Creating a Memory Space
Configure a space to store knowledge base documents:
- Add the Goodmem node to your workflow
- Select Space as the resource and Create as the operation
- Enter a Space Name (e.g., "Product Documentation")
- Configure an embedder with ID and retrieval weight
- Optionally set labels for organization (e.g.,
environment: production)
Storing a Memory
Add content to your space:
- Select Memory as the resource and Create as the operation
- Provide the Space ID where the memory will be stored
- Enter the Content (text, markdown, etc.)
- Optionally configure chunking strategy:
- Recursive: Splits by separators with configurable chunk size and overlap
- Sentence: Splits on sentence boundaries
- None: Store content as a single chunk
Semantic Search
Retrieve relevant memories using natural language:
- Select Memory as the resource and Retrieve as the operation
- Enter your Message (search query)
- Optionally filter by:
- Specific Space IDs
- Filter expressions for metadata matching
- Relevance threshold (0-1)
- Configure post-processing:
- Reranker: Improve result relevance ordering
- LLM Generation: Generate responses based on retrieved context
Chunking Strategies
The node supports flexible chunking for optimal embedding and retrieval:
Recursive Chunking (Default)
Best for general-purpose document processing:
- Chunk Size: Target size for each chunk (default: 512)
- Chunk Overlap: Overlap between chunks for context continuity (default: 64)
- Separators: Custom separators for splitting (paragraphs, sentences, etc.)
- Length Unit: Characters or tokens
Sentence-Based Chunking
Preserves sentence boundaries:
- Max Chunk Size: Maximum characters/tokens per chunk
- Min Chunk Size: Minimum chunk size threshold
Custom JSON
For advanced configurations, provide a custom chunking strategy as JSON.
Advanced Retrieval Options
Fine-tune search results with post-processing:
| Option | Description | |--------|-------------| | Reranker ID | UUID of a reranker model to improve result ordering | | LLM ID | UUID of an LLM to generate contextual responses | | Relevance Threshold | Minimum score (0-1) for including results | | LLM Temperature | Creativity setting for LLM generation (0-2) | | Max Results | Limit the number of returned memories | | Chronological Resort | Reorder results by creation time |
Example Workflow: AI-Powered Q&A System
[Webhook Trigger] --> [Goodmem: Retrieve] --> [OpenAI: Generate Response] --> [Respond to Webhook]- Webhook Trigger: Receives a user question
- Goodmem Retrieve: Searches semantic memories for relevant context
- OpenAI: Generates an answer using the retrieved context
- Response: Returns the AI-generated answer
Development
Building
npm install
npm run buildLinting
npm run lint
npm run lintfixLocal Testing
Link the node to your local n8n installation:
npm link
cd ~/.n8n/nodes
npm link n8n-nodes-goodmemCompatibility
Compatible with n8n version 1.60.0 or later.
Resources
License
Author
Zaid Abdulrehman ([email protected])
