RAG Documentation MCP Server

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Integrations

  • Uses Ollama as the default embedding provider for local embeddings generation, supporting semantic documentation search and vector storage.

  • Provides OpenAI as a fallback embedding provider, using models like text-embedding-3-small for document embedding when Ollama is unavailable.

Documentación de RAG Servidor MCP

Una implementación de servidor MCP que proporciona herramientas para recuperar y procesar documentación a través de la búsqueda vectorial, lo que permite a los asistentes de IA aumentar sus respuestas con el contexto de la documentación relevante.

Tabla de contenido

Características

Herramientas

  1. búsqueda_documentación
    • Busque en la documentación utilizando la búsqueda vectorial
    • Devuelve fragmentos relevantes de documentación con información de origen
  2. lista_fuentes
    • Enumere todas las fuentes de documentación disponibles
    • Proporciona metadatos sobre cada fuente
  3. extraer_urls
    • Extrae las URL del texto y comprueba si ya están en la documentación
    • Útil para evitar documentación duplicada
  4. eliminar_documentación
    • Eliminar documentación de una fuente específica
    • Limpia documentación obsoleta o irrelevante
  5. cola_de_lista
    • Enumere todos los elementos en la cola de procesamiento
    • Muestra el estado del procesamiento de la documentación pendiente
  6. cola de ejecución
    • Procesar todos los elementos en la cola
    • Agrega automáticamente nueva documentación al almacén de vectores
  7. borrar_cola
    • Borrar todos los elementos de la cola de procesamiento
    • Útil para reiniciar el sistema.
  8. añadir_documentación
    • Agregar nueva documentación a la cola de procesamiento
    • Admite varios formatos y fuentes.

Inicio rápido

La herramienta de documentación RAG está diseñada para:

  • Mejorar las respuestas de la IA con documentación relevante
  • Creación de asistentes de IA que reconocen la documentación
  • Creación de herramientas sensibles al contexto para desarrolladores
  • Implementación de la búsqueda de documentación semántica
  • Ampliar las bases de conocimientos existentes

Configuración de Docker Compose

El proyecto incluye un archivo docker-compose.yml para facilitar la implementación en contenedores. Para iniciar los servicios:

docker-compose up -d

Para detener los servicios:

docker-compose down

Interfaz web

El sistema incluye una interfaz web a la que se puede acceder después de iniciar los servicios de Docker Compose:

  1. Abra su navegador y navegue a: http://localhost:3030
  2. La interfaz proporciona:
    • Monitoreo de colas en tiempo real
    • Gestión de fuentes de documentación
    • Interfaz de búsqueda para probar consultas
    • Estado del sistema y comprobaciones de salud

Configuración

Configuración de incrustaciones

El sistema utiliza Ollama como proveedor de incrustaciones predeterminado para la generación local de incrustaciones, con OpenAI disponible como alternativa. Esta configuración prioriza el procesamiento local a la vez que mantiene la fiabilidad gracias a la alternativa en la nube.

Variables de entorno

  • EMBEDDING_PROVIDER : Elija el proveedor de incrustación principal ('ollama' o 'openai', predeterminado: 'ollama')
  • EMBEDDING_MODEL : especifica el modelo a utilizar (opcional)
    • Para OpenAI: el valor predeterminado es 'text-embedding-3-small'
    • Para Ollama: el valor predeterminado es 'nomic-embed-text'
  • OPENAI_API_KEY : Obligatorio cuando se utiliza OpenAI como proveedor
  • FALLBACK_PROVIDER : Proveedor de respaldo opcional ('ollama' o 'openai')
  • FALLBACK_MODEL : Modelo opcional para el proveedor de respaldo

Configuración de Cline

Agregue esto a su cline_mcp_settings.json :

{ "mcpServers": { "rag-docs": { "command": "node", "args": ["/path/to/your/mcp-ragdocs/build/index.js"], "env": { "EMBEDDING_PROVIDER": "ollama", // default "EMBEDDING_MODEL": "nomic-embed-text", // optional "OPENAI_API_KEY": "your-api-key-here", // required for fallback "FALLBACK_PROVIDER": "openai", // recommended for reliability "FALLBACK_MODEL": "nomic-embed-text", // optional "QDRANT_URL": "http://localhost:6333" }, "disabled": false, "autoApprove": [ "search_documentation", "list_sources", "extract_urls", "remove_documentation", "list_queue", "run_queue", "clear_queue", "add_documentation" ] } } }

Configuración del escritorio de Claude

Agregue esto a su claude_desktop_config.json :

{ "mcpServers": { "rag-docs": { "command": "node", "args": ["/path/to/your/mcp-ragdocs/build/index.js"], "env": { "EMBEDDING_PROVIDER": "ollama", // default "EMBEDDING_MODEL": "nomic-embed-text", // optional "OPENAI_API_KEY": "your-api-key-here", // required for fallback "FALLBACK_PROVIDER": "openai", // recommended for reliability "FALLBACK_MODEL": "nomic-embed-text", // optional "QDRANT_URL": "http://localhost:6333" } } } }

Configuración predeterminada

El sistema utiliza Ollama por defecto para una generación eficiente de incrustaciones locales. Para una fiabilidad óptima:

  1. Instalar y ejecutar Ollama localmente
  2. Configurar OpenAI como respaldo (recomendado):
    { // Ollama is used by default, no need to specify EMBEDDING_PROVIDER "EMBEDDING_MODEL": "nomic-embed-text", // optional "FALLBACK_PROVIDER": "openai", "FALLBACK_MODEL": "text-embedding-3-small", "OPENAI_API_KEY": "your-api-key-here" }

Esta configuración garantiza:

  • Generación rápida de incrustaciones locales con Ollama
  • Retorno automático a OpenAI si Ollama falla
  • No se permiten llamadas a API externas a menos que sea necesario

Nota: El sistema utilizará automáticamente las dimensiones vectoriales adecuadas según el proveedor:

  • Ollama (texto incrustado nómico): 768 dimensiones
  • OpenAI (text-embedding-3-small): 1536 dimensiones

Expresiones de gratitud

Este proyecto es una bifurcación de qpd-v/mcp-ragdocs , desarrollado originalmente por qpd-v. El proyecto original sentó las bases para esta implementación.

Agradecimiento especial al creador original, qpd-v, por su trabajo innovador en la versión inicial de este servidor MCP. Esta bifurcación ha sido mejorada con características y mejoras adicionales por Rahul Retnan.

Solución de problemas

El servidor no se inicia (conflicto de puerto)

Si el servidor MCP no puede iniciarse debido a un conflicto de puerto, siga estos pasos:

  1. Identificar y matar el proceso usando el puerto 3030:
npx kill-port 3030
  1. Reiniciar el servidor MCP
  2. Si el problema persiste, verifique si hay otros procesos que utilizan el puerto:
lsof -i :3030
  1. También puede cambiar el puerto predeterminado en la configuración si es necesario.
-
security - not tested
F
license - not found
-
quality - not tested

Permite a los asistentes de IA mejorar sus respuestas con documentación relevante a través de una búsqueda vectorial semántica, ofreciendo herramientas para gestionar y procesar la documentación de manera eficiente.

  1. Table of Contents
    1. Features
      1. Tools
    2. Quick Start
      1. Docker Compose Setup
        1. Web Interface
          1. Configuration
            1. Embeddings Configuration
            2. Cline Configuration
            3. Claude Desktop Configuration
            4. Default Configuration
          2. Acknowledgments
            1. Troubleshooting
              1. Server Not Starting (Port Conflict)
            ID: co522bhy31