Token导航 LogoToken导航TokenDH.com
MCP Qdrant Semantic Search logo
搜索检索未说明官方级别未说明来源级核验

MCP Qdrant Semantic Search

MCP Server

一个基于Qdrant向量数据库的语义搜索服务,为Claude提供持久性语义记忆功能,支持信息存储、语义检索和智能搜索。

工具数

7

提示词数

0

GitHub Stars

9

资源数

0
搜索JavaScriptClaude向量数据库Claude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

muhammedehab35

提供方

muhammedehab35

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

🧠 MCP Qdrant语义搜索

A. 模型上下文协议(MCP) 通过Qdrant(一种高性能的向量数据库)为Claude提供持久语义记忆的服务器。

🎯 这是什么?

此MCP服务器允许Claude:

  • 💾 门店信息 具有语义搜索功能
  • 🔍 检索内容 基于含义,而不仅仅是关键字
  • 🧠 记住 对话、代码、文档
  • 🎯 智能搜索 通过知识库

真实世界用例

  • 语义代码搜索:“查找处理JWT身份验证的代码”
  • 团队知识库:存储和检索程序、最佳做法
  • 会话记忆:克劳德记得偏好和背景
  • 智能文档:即使使用不同的措辞,也能检索文档

✨ 特性

7种可用的MCP工具

工具说明
store_memory使用语义索引存储信息
search_memory按语义相似度搜索
delete_memory按ID删除内存
get_memory检索特定内存
list_memories列出所有带分页的内存
get_stats获取收藏统计信息
clear_all_memories删除所有记忆

🏗️ 建筑

┌─────────────┐         ┌──────────────┐         ┌─────────────┐
│   Claude    │ ◄─MCP──►│  MCP Server  │ ◄─────► │   Qdrant    │
│   Desktop   │         │  (TypeScript)│         │  Vector DB  │
└─────────────┘         └──────────────┘         └─────────────┘
                              │
                              ▼
                        ┌──────────────┐
                        │    OpenAI    │
                        │  Embeddings  │
                        └──────────────┘

🚀 快速开始

先决条件

  • Node.js 18+
  • 码头工人
  • OpenAI API密钥
  • 克劳德桌面版

安装

# 1. Install dependencies
npm install

# 2. Configure environment
cp .env.example .env
# Edit .env and add your OPENAI_API_KEY

# 3. Start Qdrant
docker-compose up -d

# 4. Build the project
npm run build

# 5. Configure Claude Desktop
# See INSTALL.md for details

有关完整安装,请参阅 安装.md.

📖 用法

Claude Desktop中的示例

1.店铺信息

Store this information: "Our API uses JWT for authentication.
Tokens expire after 24h and must be renewed via /refresh-token"

答复:

{
  "success": true,
  "message": "Memory stored successfully",
  "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "content": "Our API uses JWT for authentication..."
}

2.语义搜索

Search for how to handle user sessions

克劳德将使用 search_memory 即使单词不匹配,也能找到JWT信息!

3.使用元数据存储代码

Store this code with tags "authentication" and "nodejs":

function validateToken(token) {
  try {
    return jwt.verify(token, process.env.JWT_SECRET);
  } catch (error) {
    throw new Error('Invalid token');
  }
}

4.使用过滤器进行高级搜索

Search for authentication code, only JavaScript snippets

克劳德可以使用过滤器来优化搜索。

5.获取统计数据

Show me my semantic memory stats

答复:

{
  "success": true,
  "stats": {
    "name": "semantic_memory",
    "points_count": 42,
    "status": "green"
  },
  "embedding_model": "text-embedding-3-large",
  "embedding_dimensions": 1536
}

🎓 关键概念

嵌入(向量)

嵌入将文本转换为数字向量,以捕获 语义含义.

# Conceptual
"JWT authentication" → [0.234, -0.567, 0.891, ..., 0.123]
"Token security"     → [0.219, -0.543, 0.876, ..., 0.134]
# These two vectors are close = similar meaning!

余弦相似度

Qdrant使用余弦相似度来衡量两个向量之间的“语义接近度”。

  • 得分1.0:相同
  • 得分0.8-0.9:非常相似
  • 得分0.7:类似(默认阈值)
  • 得分\<0.7:不太相似

集合

集合类似于数据库表,但针对向量进行了优化。

🔧 配置

环境变量

变量描述默认值
OPENAI_API_KEYOpenAI API密钥(必需)-
QDRANT_URLQdrant服务器URLhttp://localhost:6333
QDRANT_API_KEYQdrant Cloud API密钥(可选)-
QDRANT_COLLECTION收藏名称semantic_memory
EMBEDDING_MODELOpenAI模型text-embedding-3-large
EMBEDDING_DIMENSIONS矢量维度1536

可用的嵌入模型

型号尺寸成本精度
text-embedding-3-small1536$⭐⭐⭐
text-embedding-3-large3072$$$⭐⭐⭐⭐⭐

📊 MCP API

store_memory

{
  content: string,      // Content to store
  metadata?: {          // Optional metadata
    tags?: string[],
    category?: string,
    source?: string,
    // ... other fields
  }
}

search_memory

{
  query: string,        // Natural language query
  limit?: number,       // Number of results (default: 5)
  threshold?: number,   // Min score 0-1 (default: 0.7)
  filter?: object       // Metadata filters
}

删除记忆

{
  id: string           // Memory ID
}

get_memory

{
  id: string           // Memory ID
}

list_memories

{
  limit?: number,      // Number of results (default: 10)
  offset?: string      // Starting ID for pagination
}

get_stats

没有参数。返回集合统计信息。

清除所有记忆

{
  confirm: boolean     // Must be true to confirm
}

🧪 高级示例

1.团队知识库

Store these:

1. "Staging server accessible via staging.example.com,
    port 3000, credentials in 1Password"

2. "To deploy to production, use 'npm run deploy:prod'
    after tests pass and PR approval"

3. "Rate limiting is 1000 req/min per API key,
    10000/min for enterprise clients"

然后搜索:

How do I deploy to production?
What are the API limits?

2.语义代码搜索

Store this code:

// Metadata: language=javascript, topic=authentication
async function authenticateUser(email, password) {
  const user = await db.users.findByEmail(email);
  if (!user) throw new Error('User not found');

  const valid = await bcrypt.compare(password, user.passwordHash);
  if (!valid) throw new Error('Invalid credentials');

  return generateJWT(user);
}

搜索:

How to verify user credentials?
Show me login code

3.会话记忆

Store my preferences:
- I prefer TypeScript over JavaScript
- I use React 18 with hooks
- My code style follows Airbnb ESLint
- I want JSDoc comments on public functions

克劳德会在以后的谈话中记住这一点!

🔍 高级功能

混合搜索(矢量+过滤器)

// In Claude
Search for authentication code,
only Python snippets created after 2024-01-01

服务器可以将语义搜索与元数据过滤器相结合。

大型文档的分块

对于存储大型文档,请拆分为块:

const chunkSize = 500; // words
const chunks = splitIntoChunks(document, chunkSize);

for (const chunk of chunks) {
  await storeMemory({
    content: chunk,
    metadata: {
      document_id: "doc-123",
      chunk_index: i,
      total_chunks: chunks.length
    }
  });
}

🐛 故障排除

错误:“OPENAI_API_KEY是必需的”

检查API密钥是否在Claude Desktop配置文件中定义。

Qdrant连接错误

# Check if Qdrant is running
docker ps | grep qdrant

# Restart if needed
docker-compose restart

空搜索结果

  • 降低 threshold (例如,0.5而不是0.7)
  • 检查是否有数据: get_stats
  • 重新表述查询

OpenAI成本高

  • 使用 text-embedding-3-small (便宜5倍)
  • 将尺寸减小到512或1024
  • 缓存频繁嵌入

🚀 未来改进

  • \[\]支持Ollama(免费本地嵌入)
  • \[\]用于可视化记忆的Web界面
  • \[\]收款导出/导入
  • \[\]多模式支持(图像+文本)
  • \[\]基于历史的建议
  • \[\]自动内存聚类
  • \[\]分析和搜索见解

📚 资源

🤝 贡献

欢迎投稿!请随意:

  • 未解决的错误或建议问题
  • 提交拉取请求
  • 改进文档

📄 许可证

MIT许可证-请参阅 许可证 了解详情。

🙏 致谢

______________________________________________________________________

备注:该项目用于教育和示范目的。对于生产使用,请考虑安全性、可扩展性和成本。

由...制作❤️ 学习MCP和语义搜索

目录标签

目录标签

搜索JavaScriptClaude向量数据库语义搜索本地部署知识管理智能检索对话记忆

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

api-key

工具数量(toolCount,工具数)

7

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明api-key部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP