Skip to main content
Glama

Asistente MCP de TxtAI

Implementación de un servidor de Protocolo de Contexto de Modelo (MCP) para búsqueda semántica y gestión de memoria mediante txtai . Este servidor proporciona una API robusta para almacenar, recuperar y gestionar memorias basadas en texto con capacidades de búsqueda semántica.

Acerca de txtai

Este proyecto se basa en txtai , un excelente motor de búsqueda de código abierto impulsado por IA creado por NeuML . txtai proporciona:

  • 🔍 Solución de búsqueda semántica todo en uno

  • 🧠 Búsqueda neuronal con transformadores

  • Clasificación de texto de disparo cero

  • 🔄 Extracción e incrustaciones de texto

  • 🌐 Soporte multilingüe

  • 🚀 Alto rendimiento y escalabilidad

Ampliamos las capacidades de txtai integrándolo con el Protocolo de Contexto de Modelo (MCP), lo que permite a asistentes de IA como Claude y Cline aprovechar sus potentes capacidades de búsqueda semántica. Agradecemos especialmente al equipo de txtai por crear una herramienta tan potente y flexible.

Related MCP server: Lspace MCP Server

Características

  • 🔍 Búsqueda semántica en los recuerdos almacenados

  • 💾 Almacenamiento persistente con backend basado en archivos

  • 🏷️ Organización y recuperación de memoria basada en etiquetas

  • 📊 Estadísticas de memoria y monitorización de la salud

  • 🔄 Persistencia automática de datos

  • 📝 Registro completo

  • 🔒 Ajustes CORS configurables

  • 🤖 Integración con Claude y Cline AI

Prerrequisitos

  • Python 3.8 o superior

  • pip (instalador de paquetes de Python)

  • virtualenv (recomendado)

Instalación

  1. Clonar este repositorio:

git clone https://github.com/yourusername/txtai-assistant-mcp.git cd txtai-assistant-mcp
  1. Ejecute el script de inicio:

./scripts/start.sh

El guión hará lo siguiente:

  • Crear un entorno virtual

  • Instalar las dependencias necesarias

  • Configurar los directorios necesarios

  • Crear un archivo de configuración a partir de una plantilla

  • Iniciar el servidor

Configuración

El servidor se puede configurar mediante variables de entorno en el archivo .env . Se proporciona una plantilla en .env.template :

# Server Configuration HOST=0.0.0.0 PORT=8000 # CORS Configuration CORS_ORIGINS=* # Logging Configuration LOG_LEVEL=DEBUG # Memory Configuration MAX_MEMORIES=0

Integración con Claude y Cline AI

Este asistente TxtAI se puede utilizar como servidor MCP con Claude y Cline AI para mejorar sus capacidades con memoria semántica y funcionalidad de búsqueda.

Configuración para Claude

Para usar este servidor con Claude, agréguelo al archivo de configuración MCP de Claude (normalmente ubicado en ~/Library/Application Support/Claude/claude_desktop_config.json en macOS):

{ "mcpServers": { "txtai-assistant": { "command": "path/to/txtai-assistant-mcp/scripts/start.sh", "env": {} } } }

Configuración para Cline

Para usar con Cline, agregue la configuración del servidor al archivo de configuración MCP de Cline (normalmente ubicado en ~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json ):

{ "mcpServers": { "txtai-assistant": { "command": "path/to/txtai-assistant-mcp/scripts/start.sh", "env": {} } } }

Herramientas MCP disponibles

Una vez configuradas, las siguientes herramientas estarán disponibles para Claude y Cline:

  1. store_memory : Almacena nuevo contenido de memoria con metadatos y etiquetas

{ "content": "Memory content to store", "metadata": { "source": "conversation", "timestamp": "2023-01-01T00:00:00Z" }, "tags": ["important", "context"], "type": "conversation" }
  1. retrieve_memory : Recupera recuerdos basándose en la búsqueda semántica

{ "query": "search query", "n_results": 5 }
  1. search_by_tag : Buscar recuerdos por etiquetas

{ "tags": ["important", "context"] }
  1. delete_memory : Elimina una memoria específica por hash de contenido

{ "content_hash": "hash_value" }
  1. get_stats : Obtener estadísticas de la base de datos

{}
  1. check_health : Verificar el estado de la base de datos y del modelo de incrustación

{}

Ejemplos de uso

En Claude o Cline, puedes utilizar estas herramientas a través del protocolo MCP:

# Store a memory <use_mcp_tool> <server_name>txtai-assistant</server_name> <tool_name>store_memory</tool_name> <arguments> { "content": "Important information to remember", "tags": ["important"] } </arguments> </use_mcp_tool> # Retrieve memories <use_mcp_tool> <server_name>txtai-assistant</server_name> <tool_name>retrieve_memory</tool_name> <arguments> { "query": "what was the important information?", "n_results": 5 } </arguments> </use_mcp_tool>

La IA utilizará automáticamente estas herramientas para mantener el contexto y recuperar información relevante durante las conversaciones.

Puntos finales de API

Memoria de la tienda

POST /store

Almacene una nueva memoria con metadatos y etiquetas opcionales.

Cuerpo de la solicitud:

{ "content": "Memory content to store", "metadata": { "source": "example", "timestamp": "2023-01-01T00:00:00Z" }, "tags": ["example", "memory"], "type": "general" }

Buscar recuerdos

POST /search

Buscar recuerdos usando la búsqueda semántica.

Cuerpo de la solicitud:

{ "query": "search query", "n_results": 5, "similarity_threshold": 0.7 }

Buscar por etiquetas

POST /search_tags

Buscar recuerdos por etiquetas.

Cuerpo de la solicitud:

{ "tags": ["example", "memory"] }

Borrar memoria

DELETE /memory/{content_hash}

Eliminar una memoria específica por su hash de contenido.

Obtener estadísticas

GET /stats

Obtenga estadísticas del sistema, incluidos recuentos de memoria y distribución de etiquetas.

Chequeo de salud

GET /health

Verifique el estado de salud del servidor.

Estructura del directorio

txtai-assistant-mcp/ ├── server/ │ ├── main.py # Main server implementation │ └── requirements.txt # Python dependencies ├── scripts/ │ └── start.sh # Server startup script ├── data/ # Data storage directory ├── logs/ # Log files directory ├── .env.template # Environment configuration template └── README.md # This file

Almacenamiento de datos

Las memorias y las etiquetas se almacenan en archivos JSON en el directorio data :

  • memories.json : Contiene todos los recuerdos almacenados

  • tags.json : Contiene el índice de etiquetas

Explotación florestal

Los registros se almacenan en el directorio logs . El archivo de registro predeterminado es server.log .

Desarrollo

Para contribuir a este proyecto:

  1. Bifurcar el repositorio

  2. Crear una rama de características

  3. Realiza tus cambios

  4. Enviar una solicitud de extracción

Manejo de errores

El servidor implementa un manejo integral de errores:

  • Las solicitudes no válidas devuelven códigos de estado HTTP apropiados

  • Los errores se registran con seguimientos de pila.

  • Se devuelven mensajes de error fáciles de usar en las respuestas.

Consideraciones de seguridad

  • Los ajustes de CORS se pueden configurar mediante variables de entorno

  • Las rutas de archivos se desinfectan para evitar el cruce de directorios

  • La validación de entrada se realiza en todos los puntos finales

Licencia

Este proyecto está licenciado bajo la licencia MIT: consulte el archivo de LICENCIA para obtener más detalles.

Contribuyendo

¡Agradecemos sus contribuciones! No dude en enviar una solicitud de incorporación de cambios.

Apoyo

Si encuentra algún problema o tiene preguntas, envíe un problema en el repositorio de GitHub.

-
security - not tested
F
license - not found
-
quality - not tested

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/rmtech1/txtai-assistant-mcp'

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