{"id":31447935,"url":"https://github.com/qdrant/code-along-grounded-vibe-coding","last_synced_at":"2025-10-01T02:14:43.806Z","repository":{"id":308364019,"uuid":"1032488974","full_name":"qdrant/code-along-grounded-vibe-coding","owner":"qdrant","description":"Grounded Vibe Coding with Model Context Protocol and Qdrant","archived":false,"fork":false,"pushed_at":"2025-08-05T13:41:51.000Z","size":666,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-09-26T10:49:03.593Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/qdrant.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-08-05T11:33:17.000Z","updated_at":"2025-08-05T19:01:48.000Z","dependencies_parsed_at":"2025-08-05T15:31:45.882Z","dependency_job_id":"16c42647-aad1-4cdb-ab8f-fc63528c1b96","html_url":"https://github.com/qdrant/code-along-grounded-vibe-coding","commit_stats":null,"previous_names":["qdrant/code-along-grounded-vibe-coding"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/qdrant/code-along-grounded-vibe-coding","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qdrant%2Fcode-along-grounded-vibe-coding","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qdrant%2Fcode-along-grounded-vibe-coding/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qdrant%2Fcode-along-grounded-vibe-coding/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qdrant%2Fcode-along-grounded-vibe-coding/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/qdrant","download_url":"https://codeload.github.com/qdrant/code-along-grounded-vibe-coding/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qdrant%2Fcode-along-grounded-vibe-coding/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":277782799,"owners_count":25876209,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-01T02:00:09.286Z","response_time":88,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-10-01T02:14:39.647Z","updated_at":"2025-10-01T02:14:43.801Z","avatar_url":"https://github.com/qdrant.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Grounded Vibe Coding with Model Context Protocol and Qdrant\n\nAI coding assistants are becoming increasingly popular, but we still take their output with a grain of salt. Vibe coding an app over a weekend is hard, but possible. Still, the quality of the generated code might be below expectations, as your applications may use outdated versions of the libraries - the ones the underlying LLM was trained on. That's where Qdrant's MCP server comes in handy, as it can act as a knowledge base, providing the right code examples just in time when you need them. Thanks to the Model Context Protocol, it integrates with the most popular AI coding assistants, including Cursor, Claude Code, and Windsurf.\n\nIn this code-along, Kacper Łukawski, a Senior Developer Advocate at Qdrant, will teach you how to rapidly build a Retrieval Augmented Generation system based on the Qdrant vector database. He will present an end-to-end setup for using your favourite AI coding assistant to speed development with the help of the MCP server that will be acting as a knowledge base for the libraries we will need, and how to use it to implement a RAG system faster than you ever could.\n\n## Prerequisites\n\nPlease make sure to have the following tools installed on your machine:\n\n- [uv](https://docs.astral.sh/uv/) - a Python package manager\n- [Docker](https://www.docker.com/) - a platform for running applications in containers\n\nYou should follow the installation guidelines specific to your platform. For the most recent instructions, please refer to the tools' official websites.\n\nSince this session focuses on AI-assisted coding, you also need a code editor that provides that functionality and supports MCP servers. Some of the most popular options include [Cursor](https://cursor.com), [Windsurf](Windsurf), [Claude Code](https://www.anthropic.com/claude-code), and [Augment Code](https://www.augmentcode.com/).\n\n## Setting up the workspace\n\nThe following list of steps summarizes what has to be done in order to configure your AI coding assistant so you can follow our code-along session:\n\n1. Open the AI code editor of your choice. \n2. Run Qdrant in a Docker container using the `scripts/01-run-qdrant-in-docker.sh` script.\n3. Import the `snapshots/qdrant-snippets.snapshot` snapshot to a `qdrant-snippets` collection in the [Qdrant's Web UI](http://localhost:6333).\n4. Run the [mcp-server-qdrant](https://github.com/qdrant/mcp-server-qdrant) using the `scripts/02-run-mcp-server-qdrant.sh` script.\n5. Check the settings of the selected IDE to enable the MPC server usage.\n6. Make sure your coding agent uses the rules specified. If you use Cursor, they should be applied automatically.\n\n## Creating the application\n\nVibe coding with LLMs is hardly reproducible, so it's impossible to ensure a specific sequence of prompts will build the application correctly. However, the following list of prompts should take you close to our target solution:\n\n### Basic application structure\n\n```\nLet's create a basic structure for a CLI application that will support two commands: \n1. Storing some information\n2. Asking a question and getting answer to it\n```\n\n### Create a Qdrant connector class\n\n```\nWe'll use Qdrant as a search backend. Let's create a new file for all the logic related to Qdrant. There should be a connector class that we'll iteratively build. Let's create it and add a constructor that will connect to Qdrant.\n```\n\n### Implement adding logic\n\n```\nOur connector should accept a collection name and the model used to vectorize the data. Extend the initializer.\n```\n\n### Use FastEmbed\n\n```\nI'll be using FastEmbed as a library for creating the vectors. Since we already have a model name, let's create a model instance in the connector initializer.\n```\n\n### Create store and search methods\n\n```\nCreate store and search methods. Both should accept a string that we'll either save or use as a query. Use the same model for both.\n```\n\n### Connect to Qdrant in the app\n\n```\nConnect to Qdrant in the CLI app. Please use one of the available models, and assume you connect to local Qdrant running in a Docker container.\n```\n\n### Finalize the RAG pipeline\n\n```\nPlease extend the ask_command function, so it takes the extracted texts and send them to Claude API along with the original question, so the model can answer it based on the facts from the database. Please use web search to find how to do that with Claude in Python.\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fqdrant%2Fcode-along-grounded-vibe-coding","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fqdrant%2Fcode-along-grounded-vibe-coding","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fqdrant%2Fcode-along-grounded-vibe-coding/lists"}