MCP Knowledge Base
Un servidor de base de conocimiento que procesa documentos locales (PDF, DOCX, TXT, HTML) y responde preguntas basadas en su contenido mediante búsqueda por similitud.
GitHubPrueba este MCPPatrocinado
Documentación
Servidor MCP Knowledge Base
Este es un servidor de base de conocimiento basado en el Protocolo de Contexto de Modelo (MCP) que puede procesar documentos locales y responder preguntas según el contenido de los documentos.
Características
- Soporta múltiples formatos de documentos: PDF, DOCX, TXT, HTML
- Indexación y búsqueda automática de documentos
- Recuperación de documentos basada en similitud
- Soporte completo del protocolo MCP
- Soporte para procesamiento de documentos en chino
Configuración del servicio ModelScope MCP
{
"name": "mcp-knowledge-base",
"version": "1.0.0",
"description": "基于本地文档的知识库问答MCP服务器",
"author": "yjy",
"license": "MIT",
"repository": {
"type": "git",
"url": "https://github.com/ikungsjl/mcp-knowledge-base.git"
},
"keywords": ["mcp", "knowledge-base", "document-processing", "qa"],
"main": "dist/index.js",
"type": "module",
"scripts": {
"build": "tsc",
"start": "node dist/index.js",
"dev": "tsx src/index.ts"
},
"dependencies": {
"@modelcontextprotocol/sdk": "^0.4.0",
"pdf-parse": "^1.1.1",
"mammoth": "^1.6.0",
"cheerio": "^1.0.0-rc.12",
"natural": "^6.10.4",
"fs-extra": "^11.2.0",
"glob": "^10.3.10"
},
"devDependencies": {
"@types/node": "^20.10.0",
"@types/fs-extra": "^11.0.4",
"@types/natural": "^5.1.5",
"@types/pdf-parse": "^1.1.4",
"typescript": "^5.3.0",
"tsx": "^4.6.0"
},
"mcp": {
"server": {
"command": "node",
"args": ["dist/index.js"],
"env": {}
},
"tools": [
{
"name": "add_document",
"description": "添加单个文档到知识库",
"inputSchema": {
"type": "object",
"properties": {
"file_path": {
"type": "string",
"description": "文档文件路径"
}
},
"required": ["file_path"]
}
},
{
"name": "add_directory",
"description": "添加目录中的所有文档到知识库",
"inputSchema": {
"type": "object",
"properties": {
"directory_path": {
"type": "string",
"description": "目录路径"
}
},
"required": ["directory_path"]
}
},
{
"name": "query_knowledge_base",
"description": "查询知识库",
"inputSchema": {
"type": "object",
"properties": {
"question": {
"type": "string",
"description": "查询问题"
},
"max_results": {
"type": "number",
"description": "最大返回结果数",
"default": 5
},
"threshold": {
"type": "number",
"description": "相似度阈值",
"default": 0.1
}
},
"required": ["question"]
}
},
{
"name": "list_documents",
"description": "列出知识库中的所有文档",
"inputSchema": {
"type": "object",
"properties": {}
}
},
{
"name": "get_document",
"description": "获取特定文档信息",
"inputSchema": {
"type": "object",
"properties": {
"document_id": {
"type": "string",
"description": "文档ID"
}
},
"required": ["document_id"]
}
},
{
"name": "remove_document",
"description": "从知识库中移除文档",
"inputSchema": {
"type": "object",
"properties": {
"document_id": {
"type": "string",
"description": "文档ID"
}
},
"required": ["document_id"]
}
},
{
"name": "clear_knowledge_base",
"description": "清空知识库",
"inputSchema": {
"type": "object",
"properties": {}
}
},
{
"name": "get_stats",
"description": "获取知识库统计信息",
"inputSchema": {
"type": "object",
"properties": {}
}
}
]
}
}
Instalación
- Clonar el proyecto e instalar las dependencias:
npm install
- Compilar el proyecto:
npm run build
Uso
1. Iniciar el servidor
npm start
2. Configurar en el cliente MCP
Agregue lo siguiente en el archivo de configuración de su cliente MCP:
{
"mcpServers": {
"knowledge-base": {
"command": "node",
"args": ["dist/index.js"],
"env": {}
}
}
}
3. Herramientas disponibles
Agregar documentos
add_document: Agregar un documento individual a la base de conocimientoadd_directory: Agregar todos los documentos de un directorio a la base de conocimiento
Consultar la base de conocimiento
query_knowledge_base: Consultar la base de conocimiento y obtener respuestas
Gestionar documentos
list_documents: Listar todos los documentosget_document: Obtener información de un documento específicoremove_document: Eliminar un documentoclear_knowledge_base: Vaciar la base de conocimientoget_stats: Obtener estadísticas
Configuración
El servidor crea automáticamente los siguientes directorios:
documents/: Almacena archivos de documentosindex/: Almacena datos de índice
Desarrollo
# 开发模式
npm run dev
# 测试
npm test
Estructura del proyecto
src/
├── types.ts # 类型定义
├── document-processor.ts # 文档处理器
├── knowledge-base.ts # 知识库核心
├── mcp-server.ts # MCP 服务器
└── index.ts # 入口文件
Licencia
MIT