Skip to main content
Glama
j5ik2o

Shared Knowledge MCP Server

by j5ik2o

共享知识 MCP 服务器

这是一个知识库 MCP 服务器,可与各种 AI 助手(CLINE、Cursor、Windsurf、Claude Desktop)通用。利用检索增强生成 (RAG) 可以实现高效的信息检索和利用。在多个 AI 助手工具之间共享知识库,以提供一致的信息访问。

特征

  • 一个通用知识库可供多个人工智能助手使用

  • 使用 RAG 进行高精度信息检索

  • 使用 TypeScript 的类型安全实现

  • 支持多种向量存储(HNSWLib、Chroma、Pinecone、Milvus)

  • 通过抽象接口实现扩展

Related MCP server: Confluence MCP Server

安装

git clone https://github.com/yourusername/shared-knowledge-mcp.git
cd shared-knowledge-mcp
npm install

环境

MCP 服务器设置被添加到每个 AI 助手的配置文件中。

VSCode(用于 CLINE/Cursor)

~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json

{
  "mcpServers": {
    "shared-knowledge-base": {
      "command": "node",
      "args": ["/path/to/shared-knowledge-mcp/dist/index.js"],
      "env": {
        "KNOWLEDGE_BASE_PATH": "/path/to/your/rules",
        "OPENAI_API_KEY": "your-openai-api-key",
        "SIMILARITY_THRESHOLD": "0.7",
        "CHUNK_SIZE": "1000",
        "CHUNK_OVERLAP": "200",
        "VECTOR_STORE_TYPE": "hnswlib"
      }
    }
  }
}

使用 Pinecone 的示例

{
  "mcpServers": {
    "shared-knowledge-base": {
      "command": "node",
      "args": ["/path/to/shared-knowledge-mcp/dist/index.js"],
      "env": {
        "KNOWLEDGE_BASE_PATH": "/path/to/your/rules",
        "OPENAI_API_KEY": "your-openai-api-key",
        "VECTOR_STORE_TYPE": "pinecone",
        "VECTOR_STORE_CONFIG": "{\"apiKey\":\"your-pinecone-api-key\",\"environment\":\"your-environment\",\"index\":\"your-index-name\"}"
      }
    }
  }
}

克劳德桌面

~/Library/Application Support/Claude/claude_desktop_config.json

使用 HNSWLib 的示例(默认)

{
  "mcpServers": {
    "shared-knowledge-base": {
      "command": "node",
      "args": ["/path/to/shared-knowledge-mcp/dist/index.js"],
      "env": {
        "KNOWLEDGE_BASE_PATH": "/path/to/your/docs",
        "OPENAI_API_KEY": "your-openai-api-key",
        "SIMILARITY_THRESHOLD": "0.7",
        "CHUNK_SIZE": "1000",
        "CHUNK_OVERLAP": "200",
        "VECTOR_STORE_TYPE": "hnswlib",
        "VECTOR_STORE_CONFIG": "{}"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}

Weaviate 使用示例

{
  "mcpServers": {
    "shared-knowledge-base": {
      "command": "node",
      "args": ["/path/to/shared-knowledge-mcp/dist/index.js"],
      "env": {
        "KNOWLEDGE_BASE_PATH": "/path/to/your/docs",
        "OPENAI_API_KEY": "your-openai-api-key",
        "SIMILARITY_THRESHOLD": "0.7",
        "CHUNK_SIZE": "1000",
        "CHUNK_OVERLAP": "200",
        "VECTOR_STORE_TYPE": "weaviate",
        "VECTOR_STORE_CONFIG": "{\"url\":\"http://localhost:8080\",\"className\":\"Document\",\"textKey\":\"content\"}"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}

注意:如果您正在使用 Weaviate,则必须事先启动 Weaviate 服务器。您可以使用以下命令启动它:

./start-weaviate.sh

发展

启动开发服务器

npm run dev

建造

npm run build

生产运行

npm start

可用工具

rag_search

在知识库中搜索信息。

搜索请求

interface SearchRequest {
  // 検索クエリ(必須)
  query: string;
  
  // 返す結果の最大数(デフォルト: 5)
  limit?: number;
  
  // 検索のコンテキスト(オプション)
  context?: string;
  
  // フィルタリングオプション(オプション)
  filter?: {
    // ドキュメントの種類でフィルタリング(例: ["markdown", "code"])
    documentTypes?: string[];
    
    // ソースパスのパターンでフィルタリング(例: "*.md")
    sourcePattern?: string;
  };
  
  // 結果に含める情報(オプション)
  include?: {
    metadata?: boolean;   // メタデータを含める
    summary?: boolean;    // 要約を生成
    keywords?: boolean;   // キーワードを抽出
    relevance?: boolean;  // 関連性の説明を生成
  };
}

使用示例

基本搜索:

const result = await callTool("rag_search", {
  query: "コミットメッセージのフォーマット",
  limit: 3
});

高级搜索:

const result = await callTool("rag_search", {
  query: "コミットメッセージのフォーマット",
  context: "Gitの使い方について調査中",
  filter: {
    documentTypes: ["markdown"],
    sourcePattern: "git-*.md"
  },
  include: {
    summary: true,
    keywords: true,
    relevance: true
  }
});

搜索结果

interface SearchResult {
  // 検索クエリに関連する文書の内容
  content: string;
  
  // 類似度スコア(0-1)
  score: number;
  
  // ソースファイルのパス
  source: string;
  
  // 位置情報
  startLine?: number;     // 開始行
  endLine?: number;       // 終了行
  startColumn?: number;   // 開始桁
  endColumn?: number;     // 終了桁
  
  // ドキュメントの種類(例: "markdown", "code", "text")
  documentType?: string;
  
  // 追加情報(include オプションで指定した場合のみ)
  summary?: string;       // コンテンツの要約
  keywords?: string[];    // 関連キーワード
  relevance?: string;     // 関連性の説明
  metadata?: Record<string, unknown>; // メタデータ
}

响应示例

{
  "results": [
    {
      "content": "# コミットメッセージのフォーマット\n\n以下の形式でコミットメッセージを記述してください:\n\n```\n<type>(<scope>): <subject>\n\n<body>\n\n<footer>\n```\n\n...",
      "score": 0.92,
      "source": "/path/to/rules/git-conventions.md",
      "startLine": 1,
      "endLine": 10,
      "startColumn": 1,
      "endColumn": 35,
      "documentType": "markdown",
      "summary": "コミットメッセージのフォーマットについての説明文書",
      "keywords": ["commit", "message", "format", "type", "scope"],
      "relevance": "このドキュメントは検索クエリ \"コミットメッセージのフォーマット\" に関連する情報を含んでいます。類似度スコア: 0.92"
    }
  ]
}

这些增强的搜索功能将使 LLM 能够更准确、更高效地处理信息。位置、文档类型、摘要和关键词等附加信息有助于 LLM 更好地理解和适当地利用搜索结果。

结构

  1. 启动时,它会读取指定目录中的Markdown文件(.md,.mdx)和文本文件(.txt)。

  2. 将文档拆分成块并使用 OpenAI API 进行矢量化

  3. 使用选定的向量存储创建向量索引(默认值:HNSWLib)

  4. 返回与搜索查询高度相似的文档

支持的向量存储

  • HNSWLib :存储在本地文件系统上的快速向量存储(默认)

  • Chroma :一个开源矢量数据库

  • Pinecone :托管矢量数据库服务(需要 API 密钥)

  • Milvus :大型向量搜索引擎

  • Weaviate :模式优先的矢量数据库(需要 Docker)

每个向量存储都通过抽象接口公开,从而可以根据需要在它们之间轻松切换。

如何导航 Vector Store 环境

HNSWLib(默认)

HNSWLib 将向量存储保存在本地文件系统上,因此不需要特殊配置。

矢量存储重建:

./rebuild-vector-store-hnsw.sh

威维特

要使用 Weaviate,您需要 Docker。

  1. 启动 Weaviate 环境:

./start-weaviate.sh
  1. 矢量存储重建:

./rebuild-vector-store-weaviate.sh
  1. 检查 Weaviate 的状态:

curl http://localhost:8080/v1/.well-known/ready
  1. 停止 Weaviate 环境:

docker-compose down
  1. 彻底删除您的 Weaviate 数据(仅在必要时):

docker-compose down -v

Weaviate 配置在docker-compose.yml文件中进行管理。默认情况下,应用以下设置:

  • 端口:8080

  • 身份验证:启用匿名访问

  • 矢量化模块:无(使用外部填充)

  • 数据存储:Docker 卷( weaviate_data

配置选项

环境变量

解释

默认值

知识库路径

知识库路径(必填)

-

OPENAI_API_密钥

OpenAI API 密钥(必需)

-

相似度阈值

搜索的相似度分数阈值(0-1)

0.7

块大小

分割文本的块大小

1000

块重叠

块重叠大小

200

向量存储类型

要使用的矢量存储类型(“hnswlib”、“chroma”、“pinecone”、“milvus”)。

“hnswlib”

VECTOR_STORE_CONFIG

向量存储配置(JSON字符串)

{}

执照

国际学习中心

贡献

  1. 创建功能分支( git checkout -b feature/amazing-feature

  2. 提交更改( git commit -m 'Add some amazing feature'

  3. 推送到分支( git push origin feature/amazing-feature

  4. 创建拉取请求

F
license - not found
Not graded
quality - not tested
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • F
    license
    Not graded
    quality
    C
    maintenance
    Server that enhances the capabilities of the Cline coding agent. It provides intelligent code suggestions, reduces hallucinations, and documents the knowledge base by leveraging your project's documentation and detecting the technologies used in your codebase.
    15
  • F
    license
    A
    quality
    Not graded
    maintenance
    A local-first knowledge base server that enables AI clients to store, retrieve, and manage documents using semantic search. Provides privacy-focused, offline-capable memory for AI assistants with tools for ingesting, querying, updating, and deleting knowledge.
    7
    16
  • F
    license
    Not graded
    quality
    D
    maintenance
    A local document intelligence and knowledge management server for Claude Desktop that provides RAG-powered Q\&A, media transcription, and URL crawling. It features 11 tools for processing various file types and managing a persistent local vector store with zero infrastructure costs.
    1

View all related MCP servers

Related MCP Connectors

  • Driflyte MCP server which lets AI assistants query topic-specific knowledge from web and GitHub.

  • Connect your team's living knowledge base — docs, data, issues, CRM — to Claude and ChatGPT.

  • A personal RAG database you build from chat, so AI creates work that sounds like you.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/j5ik2o/shared-knowledge-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server