qdrant-neo4j-crawl4ai-mcp์(๋) ๋ฌด์์ ํ๋์?
๐ง Qdrant, Neo4j, Crawl4AI MCP ์๋ฒ๋ก AI ํ์ ์ ๊ฐํํ์ฌ ๋ฒกํฐ ๊ฒ์, ์ง์ ๊ทธ๋ํ, ์น ์ธํ ๋ฆฌ์ ์ค๋ฅผ ์ต์ ์ ์ฑ๋ฅ์ผ๋ก ๊ฒฐํฉํฉ๋๋ค.
๊ฐ์
์ด MCP ์๋ฒ๋ AI ์์ด์ ํธ๊ฐ Qdrant(๋ฒกํฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค), Neo4j(๊ทธ๋ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค), Crawl4AI(์น ์คํฌ๋ํ)์ ๊ธฐ๋ฅ์ ํ๋์ ํตํฉ๋ ์ธํฐํ์ด์ค๋ฅผ ํตํด ์ฌ์ฉํ ์ ์๋๋ก ํฉ๋๋ค. ๊ฐ ๊ตฌ์ฑ ์์๋ ๊ฐ๋ณ MCP ๋๊ตฌ๋ก ์ ๊ณต๋๋ฉฐ, ์์ด์ ํธ๋ ์ํฉ์ ๋ฐ๋ผ ์ ์ ํ ๋๊ตฌ๋ฅผ ํธ์ถํ์ฌ ๋ณตํฉ์ ์ธ ์์ ์ ์ํํ ์ ์์ต๋๋ค.
์ฃผ์ ๊ธฐ๋ฅ
- Qdrant ๋ฒกํฐ ๊ฒ์: ์๋ฏธ๋ก ์ ์ ์ฌ๋ ๊ธฐ๋ฐ ๊ฒ์, ์๋ฒ ๋ฉ ์ ์ฅ ๋ฐ ๊ด๋ฆฌ
- Neo4j ์ง์ ๊ทธ๋ํ: ์ํฐํฐ ๊ด๊ณ ์ ์ฅ, ๊ทธ๋ํ ์ฟผ๋ฆฌ, ํจํด ๋งค์นญ
- Crawl4AI ์น ์ธํ ๋ฆฌ์ ์ค: ๋์ ์น ํ์ด์ง ์คํฌ๋ํ, ์ฝํ ์ธ ์ถ์ถ, ๋งํฌ ๋ถ์
- ๊ฒฐํฉ ์ํฌํ๋ก์ฐ: ์น ๋ฐ์ดํฐ๋ฅผ ๋ฒกํฐํํ์ฌ Qdrant์ ์ ์ฅํ๊ณ , Neo4j์์ ๊ด๊ณ๋ฅผ ๊ตฌ์ถํ๋ ๋ฑ ๋ค๋จ๊ณ ์์ ์ง์
์ง์ ํ๋ซํผ
- Claude Code
- Cursor
- Codex
- ๊ธฐํ MCP(MCP(Model Context Protocol)) ํธํ ํด๋ผ์ด์ธํธ
๋น ๋ฅธ ์์
1. ์ ์ฅ์ ํด๋ก
git clone https://github.com/Hyperkorn/qdrant-neo4j-crawl4ai-mcp.git
cd qdrant-neo4j-crawl4ai-mcp
2. ํ๊ฒฝ ๋ณ์ ์ค์
.env ํ์ผ์ ์์ฑํ๊ณ ๋ค์ ๋ณ์๋ฅผ ์ค์ ํ์ธ์:
# Qdrant
QDRANT_URL=http://localhost:6333
QDRANT_API_KEY=your_qdrant_api_key
# Neo4j
NEO4J_URI=bolt://localhost:7687
NEO4J_USER=neo4j
NEO4J_PASSWORD=your_password
# Crawl4AI
CRAWL4AI_API_KEY=your_crawl4ai_key
3. ์๋ฒ ์คํ
pip install -r requirements.txt
python server.py
๋๋ Docker ์ฌ์ฉ:
docker-compose up
4. MCP ํด๋ผ์ด์ธํธ์์ ์ฌ์ฉ
MCP ํด๋ผ์ด์ธํธ ์ค์ ์ ๋ค์์ ์ถ๊ฐํ์ธ์:
{
"mcpServers": {
"qdrant-neo4j-crawl4ai": {
"command": "python",
"args": ["path/to/server.py"],
"env": {}
}
}
}
์ฌ์ฉ ์์
์์ 1: ์น ํ์ด์ง ์คํฌ๋ํ ํ Qdrant์ ์ ์ฅ
์ฌ์ฉ์: "https://example.com/article๋ฅผ ์คํฌ๋ํํ๊ณ ์ฃผ์ ๋ด์ฉ์ Qdrant์ ์ ์ฅํด์ค."
์์ด์ ํธ: Crawl4AI ๋๊ตฌ๋ฅผ ์ฌ์ฉํ์ฌ ํ์ด์ง ์ฝํ
์ธ ๋ฅผ ๊ฐ์ ธ์จ ํ, Qdrant ๋๊ตฌ๋ฅผ ์ฌ์ฉํ์ฌ ์๋ฒ ๋ฉ์ ์์ฑํ๊ณ ์ ์ฅํฉ๋๋ค.
์์ 2: Neo4j์์ ์ง์ ๊ทธ๋ํ ์ฟผ๋ฆฌ
์ฌ์ฉ์: "AI์ ๋จธ์ ๋ฌ๋ ์ฌ์ด์ ๊ด๊ณ๋ฅผ Neo4j์์ ์ฐพ์์ค."
์์ด์ ํธ: Cypher ์ฟผ๋ฆฌ๋ฅผ ์คํํ์ฌ ๊ด๋ จ ๋
ธ๋์ ๊ด๊ณ๋ฅผ ๋ฐํํฉ๋๋ค.
์์ 3: ๊ฒฐํฉ ์ํฌํ๋ก์ฐ
์ฌ์ฉ์: "์น์์ ์ต์ AI ๋ด์ค๋ฅผ ์์งํ๊ณ , ์ด๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ง์ ๊ทธ๋ํ๋ฅผ ์
๋ฐ์ดํธํ ํ, ๊ด๋ จ ๋ฌธ์๋ฅผ ๊ฒ์ํ ์ ์๊ฒ ํด์ค."
์์ด์ ํธ: Crawl4AI๋ก ๋ด์ค๋ฅผ ์คํฌ๋ํ โ ํ
์คํธ๋ฅผ ์ฒญํฌ๋ก ๋ถํ โ Qdrant์ ๋ฒกํฐ ์ ์ฅ โ Neo4j์ ์ํฐํฐ์ ๊ด๊ณ ์์ฑ.
๋๊ตฌ ๋ชฉ๋ก
Qdrant ๋๊ตฌ
qdrant_store_vectors- ๋ฒกํฐ ์ ์ฅqdrant_search- ๋ฒกํฐ ๊ฒ์qdrant_delete_vectors- ๋ฒกํฐ ์ญ์
Neo4j ๋๊ตฌ
neo4j_query- Cypher ์ฟผ๋ฆฌ ์คํneo4j_create_node- ๋ ธ๋ ์์ฑneo4j_create_relationship- ๊ด๊ณ ์์ฑ
Crawl4AI ๋๊ตฌ
crawl4ai_scrape- ๋จ์ผ ํ์ด์ง ์คํฌ๋ํcrawl4ai_crawl- ์ฌ๋ฌ ํ์ด์ง ํฌ๋กค๋งcrawl4ai_extract- ๊ตฌ์กฐํ๋ ๋ฐ์ดํฐ ์ถ์ถ
๋ผ์ด์ ์ค
MIT
๊ธฐ์ฌ
์ด์์ ํ ๋ฆฌํ์คํธ๋ฅผ ํ์ํฉ๋๋ค! ์์ธํ ๋ด์ฉ์ CONTRIBUTING.md๋ฅผ ์ฐธ์กฐํ์ธ์.