AutomationFlowsAI & RAG › Webhook Profile Management with Qdrant

Webhook Profile Management with Qdrant

Original n8n title: Astro Mcp

Astro-Mcp. Uses n8n-nodes-qdrant. Webhook trigger; 6 nodes.

Webhook trigger★★☆☆☆ complexity6 nodesN8N Nodes Qdrant
AI & RAG Trigger: Webhook Nodes: 6 Complexity: ★★☆☆☆ Added:

The workflow JSON

Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →

Download .json
{
  "nodes": [
    {
      "parameters": {
        "httpMethod": "POST",
        "path": "astrologer-storage",
        "authentication": "headerAuth",
        "options": {}
      },
      "id": "ba933d0b-9f23-473d-82c0-c3dfa93950dd",
      "name": "Webhook Trigger",
      "type": "n8n-nodes-base.webhook",
      "typeVersion": 1,
      "position": [
        -500,
        -40
      ],
      "credentials": {
        "httpHeaderAuth": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "dataType": "string",
        "value1": "={{ $json.action }}",
        "rules": {
          "rules": [
            {
              "value2": "store_profile"
            },
            {
              "value2": "get_profile",
              "output": 1
            },
            {
              "value2": "set_active_session",
              "output": 2
            }
          ]
        }
      },
      "id": "01cbb0d5-5041-49b1-b06a-9c1958efab77",
      "name": "Action Router",
      "type": "n8n-nodes-base.switch",
      "typeVersion": 1,
      "position": [
        -280,
        -240
      ]
    },
    {
      "parameters": {
        "resource": "point",
        "operation": "upsertPoints",
        "collectionName": {
          "__rl": true,
          "value": "astro_profiles",
          "mode": "list",
          "cachedResultName": "astro_profiles"
        },
        "points": "=[\n  {\n    \"id\": \"{{ $json.payload.profile_id }}\",\n    \"vector\": [0.1, 0.2, 0.3, 0.4, 0.5],\n    \"payload\": {{ $json.payload }}\n  }\n]",
        "requestOptions": {}
      },
      "id": "ea54e0ce-2351-4b6e-a499-c78b1393c4da",
      "name": "Upsert Profile",
      "type": "n8n-nodes-qdrant.qdrant",
      "typeVersion": 1,
      "position": [
        -60,
        -240
      ],
      "credentials": {
        "qdrantRestApi": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "resource": "search",
        "operation": "queryPoints",
        "collectionName": {
          "__rl": true,
          "value": "astro_profiles",
          "mode": "list",
          "cachedResultName": "astro_profiles"
        },
        "query": "={\n  \"vector\": [0.1, 0.2, 0.3, 0.4, 0.5],\n  \"limit\": 1\n}",
        "filter": "={\n  \"must\": [\n    {\n      \"key\": \"profile_id\",\n      \"match\": {\n        \"value\": \"{{ $json.payload.profile_id }}\"\n      }\n    }\n  ]\n}",
        "requestOptions": {}
      },
      "id": "196af20a-ed68-4f09-b9d6-354e82847271",
      "name": "Query Profile",
      "type": "n8n-nodes-qdrant.qdrant",
      "typeVersion": 1,
      "position": [
        -60,
        -40
      ],
      "credentials": {
        "qdrantRestApi": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "resource": "point",
        "operation": "upsertPoints",
        "collectionName": {
          "__rl": true,
          "value": "astro_sessions",
          "mode": "list",
          "cachedResultName": "astro_sessions"
        },
        "points": "=[\n  {\n    \"id\": \"{{ $json.payload.session_id || 'default_session' }}\",\n    \"vector\": [0.2, 0.3, 0.4, 0.5, 0.6],\n    \"payload\": {\n      \"session_id\": \"{{ $json.payload.session_id }}\",\n      \"profile_id\": \"{{ $json.payload.profile_id }}\",\n      \"updated_at\": \"{{ new Date().toISOString() }}\"\n    }\n  }\n]",
        "requestOptions": {}
      },
      "id": "8647f327-ce90-484a-a6a7-45fe5ab2d90e",
      "name": "Upsert Session",
      "type": "n8n-nodes-qdrant.qdrant",
      "typeVersion": 1,
      "position": [
        -60,
        180
      ],
      "credentials": {
        "qdrantRestApi": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "respondWith": "json",
        "responseBody": "={\n  \"status\": \"success\",\n  \"action\": \"{{ $('Webhook Trigger').item.json.action }}\",\n  \"result\": {{ $json }},\n  \"profile\": {{ $json && $json[0] ? $json[0].payload : undefined }},\n  \"timestamp\": \"{{ new Date().toISOString() }}\"\n}",
        "options": {}
      },
      "id": "acdf2bd2-1c47-4a5b-bb7c-1ae1072e2317",
      "name": "Response",
      "type": "n8n-nodes-base.respondToWebhook",
      "typeVersion": 1,
      "position": [
        160,
        -40
      ]
    }
  ],
  "connections": {
    "Webhook Trigger": {
      "main": [
        [
          {
            "node": "Action Router",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Action Router": {
      "main": [
        [
          {
            "node": "Upsert Profile",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Query Profile",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Upsert Session",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Upsert Profile": {
      "main": [
        [
          {
            "node": "Response",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Query Profile": {
      "main": [
        [
          {
            "node": "Response",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Upsert Session": {
      "main": [
        [
          {
            "node": "Response",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "meta": {
    "templateCredsSetupCompleted": true
  }
}

Credentials you'll need

Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.

Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

About this workflow

Astro-Mcp. Uses n8n-nodes-qdrant. Webhook trigger; 6 nodes.

Source: https://github.com/iamjr15/astrology-mcp-puchai/blob/ef6c70bf5c4ce438cc6693a88e219606acfa234d/n8n/astro-mcp.json — original creator credit. Request a take-down →

More AI & RAG workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

AI & RAG

main_workflow. Uses agent, n8n-nodes-upstage, documentDefaultDataLoader, textSplitterCharacterTextSplitter. Webhook trigger; 63 nodes.

Agent, N8N Nodes Upstage, Document Default Data Loader +4
AI & RAG

This pipeline is the first part of "Hybrid Search with Qdrant & n8n, Legal AI"*. The second part, "Hybrid Search with Qdrant & n8n, Legal AI: Retrieval", covers retrieval and simple evaluation.*

N8N Nodes Qdrant, HTTP Request
AI & RAG

This is the second part of "Hybrid Search with Qdrant & n8n, Legal AI."* The first part, "Indexing", covers preparing and uploading the dataset to Qdrant.*

HTTP Request, N8N Nodes Qdrant
AI & RAG

Chatbot-Query-Qdrant. Uses httpRequest, postgres. Webhook trigger; 7 nodes.

HTTP Request, Postgres
AI & RAG

Calendar Event Auto-tag. Uses stickyNote, textSplitterCharacterTextSplitter, embeddingsOpenAi, vectorStoreWeaviate. Webhook trigger; 12 nodes.

Text Splitter Character Text Splitter, OpenAI Embeddings, Weaviate Vector Store +6