Knowledge Base MCP
Knowledge Base MCP
Ein projektübergreifender Knowledge-Base-MCP-Server, der eine dreistufige Suche (Textabgleich / TF-IDF / semantische Vektoren) unterstützt und eine Web-UI zur Verwaltung bietet.
Funktionen
8 MCP-Tools — kb_write / kb_read / kb_search / kb_search_semantic / kb_list / kb_delete / kb_update / kb_outline
Dreistufige Sucharchitektur — P0 Textabgleich + P1 TF-IDF + P2 mehrsprachige semantische Vektoren, gewichtete Fusionssortierung
Mehrsprachige semantische Suche — Basierend auf
paraphrase-multilingual-MiniLM-L12-v2, unterstützt sprachübergreifende Suche in über 50 SprachenZwei Übertragungsmodi — Stdio (lokaler MCP-Client) + HTTP (StreamableHTTP / SSE / REST API)
Web UI — Vite 6 + React 18 + Zustand + Tailwind + Ant Design
Schnelleinstieg
npx One-Click-Start (empfohlen)
Kein Klonen des Repositorys erforderlich, einfach ausführen:
# Stdio 模式
npx @dyyz1993/kb-mcp --stdio
# HTTP 模式
npx @dyyz1993/kb-mcp --http --port 19877Globale Installation (optional)
npm install -g @dyyz1993/kb-mcp
kb-mcp --stdioAus dem Quellcode bauen
git clone https://github.com/dyyz1993/knowledge-base-mcp.git
cd knowledge-base-mcp
bun installBei der ersten Verwendung der semantischen Suche muss das Embedding-Modell vorab heruntergeladen werden:
bun run -e '
import { pipeline, env } from "@huggingface/transformers"
import { join } from "node:path"
import { homedir } from "node:os"
env.localModelPath = join(homedir(), ".cache/huggingface/local-models")
env.allowLocalModels = true
await pipeline("feature-extraction", "Xenova/paraphrase-multilingual-MiniLM-L12-v2", { dtype: "fp32" })
console.log("Model downloaded")
'Wenn das Modell nicht heruntergeladen wird, ist die semantische Suche (P2) nicht verfügbar, aber der Textabgleich (P0) und TF-IDF (P1) funktionieren weiterhin normal.
OpenCode-Konfiguration
Stdio-Modus (empfohlen für lokale Nutzung)
Bearbeiten Sie ~/.config/opencode/opencode.json und fügen Sie Folgendes unter mcp.servers hinzu:
{
"mcp": {
"servers": {
"knowledge-base": {
"type": "local",
"command": ["npx", "@dyyz1993/kb-mcp", "--stdio"]
}
}
}
}Kein manueller Start erforderlich, OpenCode verwaltet den Prozesslebenszyklus automatisch.
StreamableHTTP-Modus (Remote-Server)
Starten Sie zuerst den Dienst:
npx @dyyz1993/kb-mcp --http --port 19877Konfiguration:
{
"mcp": {
"servers": {
"knowledge-base": {
"type": "streamable-http",
"url": "http://your-server:19877/mcp"
}
}
}
}SSE-Modus (ältere Clients)
{
"mcp": {
"servers": {
"knowledge-base": {
"type": "sse",
"url": "http://your-server:19877/sse"
}
}
}
}Web UI
# 先启动 HTTP 服务
npx @dyyz1993/kb-mcp --http --port 19877
# 启动 Web UI
cd web
bun install
bun run devBesuchen Sie http://localhost:5180, API-Anfragen werden automatisch an :19877 weitergeleitet.
MCP-Tools
Tool | Beschreibung |
| Speichert Wissensdokumente, unterstützt Metadaten wie Tags, Schlüsselwörter, Quellprojekte usw. |
| Liest Dokumentinhalte, automatische Kürzung ab 50 Zeilen |
| Mehrdimensionale Suche nach Text + Schlüsselwörtern + Tags |
| Semantische Vektorsuche, unterstützt sprachübergreifende Suche |
| Durchsuchen der Dokumentenliste, Filterung nach Tags oder Projekten |
| Löscht Dokumente, aktualisiert den Index synchron |
| Aktualisiert Dokumenttext, Titel, Tags, Schlüsselwörter |
| Ruft die Dokumentgliederung für ein angegebenes Projekt ab |
kb_write Parameter
{
title: string // 文档标题
content: string // 正文(Markdown)
tags: string[] // 标签:tutorial / document / analysis / guide / snippet / best-practice / reference / architecture / troubleshooting / decision
keywords: string[] // 关键词,用于检索
intent: string // 创建意图或使用场景
project_description: string // 当前项目简要描述
source_project?: string // 来源项目路径(自动填充)
source_worktree?: string // 来源 worktree 路径(自动填充)
}REST API
Die folgenden Endpunkte sind nur im HTTP-Modus verfügbar.
Methode | Pfad | Beschreibung |
GET |
| Gesundheitsprüfung |
GET |
| Alle Dokumente auflisten |
GET |
| Bestimmtes Dokument lesen |
POST |
| Umfassende Suche (dreistufige Fusion) |
POST |
| Semantische Suche |
GET |
| Projektgliederung abrufen |
Sucharchitektur
查询 → ┌─ P0: 文本匹配(标题/关键词/意图) ──── 权重 0.2
├─ P1: TF-IDF(加权词频 + 余弦相似度) ── 权重 0.3
└─ P2: 语义向量(384维 embedding + 余弦相似度) ── 权重 0.5
↓
加权融合 → 排序返回 TopKEbene | Algorithmus | Merkmale | Szenario |
P0 | Teilstring-Abgleich + Feldgewichtung | Präzise, schnell | Bekannte Schlüsselwörter |
P1 | TF-IDF + Kosinus-Ähnlichkeit | Chinesische Bigram-Segmentierung, gewichtete Felder | Fuzzy-Matching |
P2 | multilingual-MiniLM + Kosinus-Ähnlichkeit | Sprachübergreifender semantischer Abgleich (50+ Sprachen) | Natürlichsprachliche Abfragen |
kb_search verwendet P0, kb_search_semantic verwendet P2, HTTP /api/search verwendet die dreistufige Fusion.
Speicherstruktur
Alle Daten werden unter ~/.knowledge/ gespeichert (kann über die Umgebungsvariable KB_DIR angepasst werden):
~/.knowledge/
├── index.json # 文档索引
├── vectors.json # 语义向量缓存
├── outlines/ # 项目大纲
│ └── {project-slug}.json
├── {id}-{title-slug}.md # 文档文件(YAML frontmatter + Markdown 正文)
└── ...Beispiel für eine einzelne Dokumentdatei:
---
id: "abc123xyz"
title: "React Hooks 最佳实践"
tags: ["best-practice"]
keywords: ["react", "hooks", "useEffect"]
intent: "React 开发中 hooks 的常见模式和陷阱"
project_description: "前端组件库项目"
source_project: "/Users/x/project-frontend"
created_at: 1746012345678
---
## 使用 useEffect 的注意事项
...Testen
bun testUmgebungsvariablen
Variable | Standardwert | Beschreibung |
|
| Speicherverzeichnis der Wissensdatenbank |
|
| Port für den HTTP-Modus (auch über |
Lizenz
MIT
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
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/dyyz1993/knowledge-base-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server