RocketRide
RocketRide is an open-source AI development environment and runtime for building, running, and integrating AI systems. Pipelines are portable JSON and execute on a multithreaded C++ engine. You can compose them in the visual IDE, run them from the CLI, integrate them through Python or TypeScript SDKs, or expose them as tools over MCP.
RocketRide’s native Qdrant node stores embedded documents, retrieves context for retrieval-augmented generation (RAG), and gives agents tools for searching and updating a Qdrant collection. It supports both Qdrant Cloud and self-hosted deployments.
Run the RAG example
RocketRide includes a complete Qdrant RAG pipeline with separate ingestion and query flows:
Ingestion: webhook -> parse -> chunk -> embed -> Qdrant
Query: chat -> embed -> Qdrant -> prompt -> LLM -> response
First, install RocketRide by following its Quick Start, and start Qdrant by following the Qdrant Quickstart. Then download the example pipeline:
curl -O https://raw.githubusercontent.com/rocketride-org/rocketride-server/develop/examples/rag-pipeline.pipe
Set the values used by the example:
export ROCKETRIDE_QDRANT_HOST=localhost
export ROCKETRIDE_COLLECTION_NAME=rocketride_docs
export ROCKETRIDE_OPENAI_KEY=your-openai-api-key
The example uses a local MiniLM embedding model and OpenAI for answer generation. Start it from the RocketRide CLI:
rocketride start --pipeline ./rag-pipeline.pipe
You can also open the same .pipe file in the RocketRide IDE extension or start it through the Python or TypeScript SDK.
Configure the Qdrant node
For a self-hosted Qdrant server, use the local profile. This is the ingestion-side Qdrant node from the example:
{
"id": "qdrant_1",
"provider": "qdrant",
"config": {
"profile": "local",
"local": {
"host": "${ROCKETRIDE_QDRANT_HOST}",
"port": 6333,
"collection": "${ROCKETRIDE_COLLECTION_NAME}"
},
"parameters": {}
},
"input": [
{ "lane": "documents", "from": "embedding_transformer_1" }
]
}
For Qdrant Cloud, select the cloud profile and supply your cluster host and API key:
{
"profile": "cloud",
"cloud": {
"host": "${ROCKETRIDE_QDRANT_HOST}",
"port": 6333,
"apikey": "${ROCKETRIDE_QDRANT_API_KEY}",
"collection": "${ROCKETRIDE_COLLECTION_NAME}"
}
}
The Qdrant node creates the collection on the first write and infers its vector dimensions from the first batch of embeddings. Use the same embedding model for every write to a collection.
How retrieval works
The example uses two Qdrant nodes pointed at the same collection:
- The ingestion node receives document chunks after the embedding step and writes them to Qdrant.
- The query node receives an embedded question, retrieves matching chunks, and sends both the question and retrieved context to the prompt and LLM nodes.
The pipeline can be edited visually without hand-writing its JSON, but the same file is version-controllable and can be run from the CLI or either SDK. Once running, it can also be exposed as a tool to an MCP-compatible assistant.
Use Qdrant from an agent
The Qdrant node can also connect to a RocketRide agent through its tool interface. By default, it exposes three namespaced tools:
| Tool | Purpose |
|---|---|
qdrant.search | Run semantic search and return matching content, scores, and metadata. |
qdrant.upsert | Add or update documents, using the node’s configured embedding provider when vectors are not supplied. |
qdrant.delete | Delete documents by object ID. |
This lets an agent decide when to retrieve context or update its knowledge base during a reasoning loop. The tool namespace can be changed when a pipeline contains more than one Qdrant connection.