Skip to main content
Glama
Sachin-wish

MCP Knowledge Base Server

by Sachin-wish

MCP Knowledge Base Server

Un servidor MCP (Model Context Protocol) que ofrece a los asistentes de IA — Claude Desktop, Cursor o cualquier cliente MCP — acceso estructurado y consultable a la base de conocimiento interna de una empresa, compuesta por documentos Markdown.

Pregunta a tu asistente "¿cómo despliego en producción?" o "¿cuántos días de vacaciones tengo?" y buscará en la base de conocimiento, leerá los artículos relevantes y responderá con citas — en lugar de alucinar tus procesos internos.

Características

  • 6 herramientas — búsqueda por palabras clave con extractos, obtención del documento completo, listado filtrado, navegación por etiquetas, recarga en caliente y estadísticas

  • 2 tipos de recursos — navega por el índice completo o por cualquier documento directamente (kb://index, kb://documents/{doc_id})

  • 1 plantilla de promptanswer_from_knowledge_base fundamenta las respuestas en los resultados de búsqueda y obliga a citar las fuentes

  • Infraestructura cero — la base de conocimiento es solo una carpeta de archivos .md con frontmatter opcional; funciona muy bien respaldada por un repositorio Git

  • Dos transportes — stdio para clientes locales, HTTP para entornos compartidos o remotos

  • Pocas dependencias — FastMCP + un pequeño índice integrado de estilo TF-IDF; no requiere base de datos ni servicio de embeddings

Related MCP server: MCP Docs Server

Arquitectura

┌─────────────────┐   stdio / HTTP (JSON-RPC)   ┌──────────────────────────┐
│  MCP client     │ ───────────────────────────▶ │  FastMCP server          │
│  (Claude, …)    │ ◀─────────────────────────── │  ├─ tools (search, get…) │
└─────────────────┘                              │  ├─ resources (kb://…)   │
                                                 │  └─ prompts (answer…)   │
                                                 │          │             │
                                                 │  KnowledgeBaseIndex    │
                                                 │  (tokenize → TF-IDF)   │
                                                 └──────────┬─────────────┘
                                                            │ scans
                                                 ┌──────────▼─────────────┐
                                                 │ knowledge_base/        │
                                                 │  engineering/*.md      │
                                                 │  hr/*.md  product/*.md │
                                                 └────────────────────────┘

Inicio rápido

git clone <your-repo-url> mcp-knowledge-base-server
cd mcp-knowledge-base-server
pip install .

Apunta el servidor a tu propia documentación (o usa el corpus de ejemplo incluido):

export KB_DIR=/path/to/your/markdown/docs

Ejecutar la demo

pip install fastmcp          # only dependency the demo needs
python examples/demo_client.py

La demo lanza el servidor sobre stdio y ejercita todas las capacidades — búsqueda, obtención de documentos, listados, recursos y el prompt de respuesta fundamentada — imprimiendo las cargas útiles JSON-RPC exactas que vería un cliente real.

Conectar Claude Desktop

Añade esto a claude_desktop_config.json:

{
  "mcpServers": {
    "knowledge-base": {
      "command": "python",
      "args": ["-m", "mcp_knowledge_base.server"],
      "env": {
        "PYTHONPATH": "/absolute/path/to/mcp-knowledge-base-server/src",
        "KB_DIR": "/absolute/path/to/mcp-knowledge-base-server/knowledge_base"
      }
    }
  }
}

Reinicia Claude Desktop y luego pregunta: "Busca en nuestra base de conocimiento: ¿cuál es el procedimiento de reversión si falla un despliegue?"

Ejecutar sobre HTTP (entornos compartidos o remotos)

KB_DIR=/path/to/docs mcp-knowledge-base --transport http --port 8000
# → streamable HTTP endpoint at http://127.0.0.1:8000/mcp

Formato de los documentos

Cualquier carpeta de archivos .md es válida. Un frontmatter opcional enriquece los resultados:

---
title: Deploying to Production
tags: [deploy, production, runbook]
department: engineering
updated: 2025-11-02
---

# Deploying to Production
…

El doc_id de un documento es su ruta relativa a KB_DIR sin la extensión (p. ej., engineering/deploy-guide). Si no hay título, se usa el primer encabezado # y, si tampoco existe, el nombre del archivo.

Referencia de la API

Herramientas

Herramienta

Descripción

search_knowledge_base(query, limit=5, tag=None)

Búsqueda por palabras clave ordenada por relevancia; devuelve doc_id, title, tags, snippet y score

get_document(doc_id)

Contenido Markdown completo + metadatos de un artículo

list_documents(tag=None, department=None)

Lista todos los artículos, con filtro opcional

list_tags()

Todas las etiquetas con el número de documentos

reload_knowledge_base()

Vuelve a escanear KB_DIR para detectar cambios

stats()

Número de documentos, número de etiquetas y antigüedad del índice

Recursos

URI

Descripción

kb://index

Índice legible de todos los documentos

kb://documents/{doc_id}

Contenido completo de un documento

Prompts

Prompt

Descripción

answer_from_knowledge_base(question)

Busca en la base de conocimiento y luego le indica al modelo que responda únicamente a partir de los extractos y cite los doc_ids

Variables de entorno

Variable

Valor por defecto

Descripción

KB_DIR

./knowledge_base

Carpeta raíz de los documentos Markdown

KB_NAME

Company Knowledge Base

Nombre del servidor que verán los clientes MCP

Estructura del proyecto

├── knowledge_base/            # sample corpus (replace with your own)
│   ├── engineering/*.md
│   ├── hr/*.md
│   └── product/*.md
├── src/mcp_knowledge_base/
│   ├── server.py              # FastMCP server: tools, resources, prompts
│   └── index.py               # document loading + TF-IDF-style search
├── examples/
│   └── demo_client.py         # end-to-end demo over stdio
└── pyproject.toml

Ampliarlo

  • Mejor búsqueda: sustituye KnowledgeBaseIndex por embeddings + una base de datos vectorial (la interfaz de las herramientas sigue siendo idéntica).

  • Otras fuentes: indexa exportaciones de Confluence/Notion: cualquier cosa que acabe siendo Markdown funciona sin cambios.

  • Actualización: ejecuta reload_knowledge_base de forma programada o vigila KB_DIR con un observador de archivos.

Licencia

MIT — consulta LICENSE.

Install Server
A
license - permissive license
A
quality
C
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

View all related MCP servers

Related MCP Connectors

  • Search and reason over your Obsidian-style Markdown vault, right from ChatGPT.

  • Serve a folder of Markdown notes as an MCP server: hybrid search, reading, and sourced answers.

  • Connect AI assistants to your GitHub-hosted Obsidian vault to seamlessly access, search, and analy…

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/Sachin-wish/mcp-knowledge-base-server'

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