Pinecone Vector Store in N8n only supports
$eq
in metadata filters — why?
Hi team
I’m currently using the Pinecone Vector Store: Retrieve Documents (As Tool For AI Agent) node in a workflow to retrieve vectorized documents filtered by metadata. It works fine when using simple filters like:
json
CopiarEditar
{
"group_id": { "$eq": 3 }
}
However, I’ve hit a significant limitation: the node does not seem to support other valid Pinecone operators such as $in
, which are essential for my use case.
Versions:
- n8n version:
1.85.4
- Pinecone version:
2025-04
Real use case:
I need to retrieve documents for multiple groups at once, using a filter like:
json
CopiarEditar
{
"group_id": { "$in": [1, 2, 3, 4] }
}
This is a valid and supported filter according to Pinecone’s official documentation (link here). It works correctly when making direct API requests to Pinecone.
However, when using this filter in the N8n node, it’s either ignored entirely or causes an error — as if only $eq
is supported in the metadata field.
My questions:
- Is there a technical or architectural reason why the node only supports
$eq
in the metadata filter? - Are there any plans to support the full range of Pinecone filter operators such as:
$in
,$nin
$gt
,$gte
,$lt
,$lte
$exists
$and
,$or
?
Technical context:
I’m building an AI agent that performs semantic search over vector documents using contextual filters. Being restricted to $eq
severely limits the agent’s ability to retrieve relevant documents, particularly when filtering by multiple group memberships (group_ids
).
Happy to provide flow examples, debug logs, or even help with a pull request if this is something that could be extended.
Thanks for the incredible work on N8n — it’s an amazing platform
Information on your n8n setup
- n8n version: 1.85.4
- Database (default: SQLite): N/A
- n8n EXECUTIONS_PROCESS setting (default: own, main):
- **Running n8n via (Docker, npm, n8n cloud, desktop app):**Yes
- **Operating system:**Ubuntu 24.04