hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Integrations
Supports deployment using Docker and Docker Compose for containerized deployment
Built on Node.js with support for Node.js 18 or later
Provides integration with PostgreSQL databases for storing prompts, with export/import functionality and synchronization between file storage and database
Servidor de avisos MCP
Un servidor MCP para gestionar solicitudes y plantillas con capacidades de orquestación de proyectos. Forma parte del ecosistema del Protocolo de Contexto de Modelo.
Este servidor proporciona una forma sencilla de almacenar, recuperar y aplicar plantillas para indicaciones de IA, lo que facilita mantener patrones de indicaciones consistentes en todas sus aplicaciones de IA.
Tabla de contenido
- Características
- Instalación
- Configuración
- Uso
- Formato de solicitud
- Soporte de indicaciones multiformato
- Adaptadores de almacenamiento
- Implementación de Docker
- Desarrollo
- Proceso de liberación
- Registro de cambios
- Mejores prácticas
- Licencia
Características
- Almacenar y recuperar indicaciones
- Crear y utilizar plantillas con variables
- Lista de indicaciones con filtrado por etiquetas
- Aplicar variables a las plantillas
- Múltiples backends de almacenamiento (sistema de archivos, PostgreSQL y formato MDC)
- Fácil de usar con Claude y otros asistentes de IA.
- Capacidades de orquestación de proyectos
- Puntos finales de comprobación de estado
Instalación
Usando npx (recomendado)
Instalación global
Usando Docker
Verificación de la instalación
Después de la instalación, puedes verificar que el servidor esté funcionando:
- Abriendo Claude Desktop
- Escribir "/" en la entrada del chat para ver si aparecen mensajes del servidor
- Prueba con una simple llamada a herramienta:Copy
Configuración
El servidor se puede configurar mediante variables de entorno:
Variable de entorno | Descripción | Por defecto |
---|---|---|
NOMBRE DEL SERVIDOR | Nombre del servidor | Servidor de avisos MCP |
VERSIÓN DEL SERVIDOR | Versión del servidor | versión package.json |
TIPO DE ALMACENAMIENTO | Tipo de almacenamiento: 'archivo', 'postgres' o 'mdc' | archivo |
DIRECTORIO DE INSTRUCCIONES | Directorio para almacenar indicaciones | ~/mcp/datos/avisos |
DIRECCIÓN DE COPIAS DE SEGURIDAD | Directorio para copias de seguridad | ~/mcp/datos/copias de seguridad |
PUERTO | Puerto para servidor HTTP | 3003 |
NIVEL DE REGISTRO | Nivel de registro | información |
Servidor HTTP | Habilitar servidor HTTP | FALSO |
ANFITRIÓN | Host para servidor HTTP | 0.0.0.0 |
Configuración de PostgreSQL (obligatoria si STORAGE_TYPE=postgres)
Variable de entorno | Descripción | Por defecto |
---|---|---|
PG_HOST | Host de PostgreSQL | host local |
PG_PORT | Puerto PostgreSQL | 5432 |
BASE DE DATOS PG | Nombre de la base de datos PostgreSQL | indicaciones mcp |
PG_USER | Nombre de usuario de PostgreSQL | postgres |
CONTRASEÑA PG | Contraseña de PostgreSQL | |
PG_SSL | Utilice SSL para la conexión PostgreSQL | FALSO |
CADENA DE CONEXIÓN DE POSTGRES | Cadena de conexión PostgreSQL completa (anula las configuraciones individuales) |
Configuración de MDC (obligatoria si STORAGE_TYPE=mdc)
Variable de entorno | Descripción | Por defecto |
---|---|---|
DIRECTORIO DE REGLAS MDC | Directorio de normas del MDC | ./.cursor/reglas |
Uso
Usando con Claude
En la aplicación de escritorio Claude 3, puedes configurar el servidor de indicaciones de MCP en tu claude_desktop_config.json
:
Herramientas disponibles
El servidor MCP Prompts proporciona las siguientes herramientas:
add_prompt
: Agregar un nuevo mensajeget_prompt
: Obtener un mensaje por IDupdate_prompt
: Actualizar un mensaje existentelist_prompts
: Lista todos los mensajesdelete_prompt
: eliminar un mensaje por IDapply_template
: Aplicar variables a una plantilla de solicitud
Ejemplos de uso de API
Listado de indicaciones disponibles
Para ver qué indicaciones están disponibles:
Para filtrar por etiquetas:
Obtener una indicación específica
Para recuperar un mensaje específico por ID:
Uso de una plantilla de solicitud
Para aplicar variables a una solicitud de plantilla:
Administrar indicaciones
Agregar un nuevo mensaje
Para agregar un nuevo mensaje:
Editar un mensaje existente
Para editar un mensaje existente:
Uso de indicaciones en su flujo de trabajo
Ejemplo de flujo de trabajo de desarrollo
Al comenzar a trabajar en una nueva función:
- Solicitar la plantilla de solicitud del sistema de desarrollo
- Complete la plantilla con los detalles de su proyecto
- Utilice el mensaje del sistema resultante para guiar la asistencia de Claude.
Ejemplo de revisión de código
Al revisar el código:
- Solicitar la plantilla de revisión de código
- Proporcione el código para ser revisado
- Claude proporcionará una revisión estructurada
Formato de solicitud
Un mensaje tiene la siguiente estructura:
Soporte de indicaciones multiformato
El servidor de indicaciones MCP incluye una potente interfaz MutablePrompt
que permite convertir las indicaciones entre múltiples formatos:
- Formato JSON : formato interno estándar utilizado por el servidor
- Formato MDC : formato Markdown de reglas de cursor (archivos .mdc)
- Formato PGAI : formato con soporte de incrustación para PostgreSQL AI
- Formato de plantilla : formato dinámico con marcadores de posición variables
Conversión entre formatos
La interfaz MutablePrompt proporciona métodos para convertir indicaciones entre estos formatos:
Aplicación de plantillas
Puede aplicar variables fácilmente a las indicaciones de la plantilla:
Extracción de variables
Extraer variables del contenido de la plantilla:
Creando desde diferentes formatos
También puedes crear indicaciones en varios formatos:
Integración con adaptadores de almacenamiento
La interfaz MutablePrompt funciona perfectamente con los adaptadores de almacenamiento existentes:
Este manejo flexible de formatos permite:
- Compatibilidad entre plataformas : utilice indicaciones en diferentes herramientas y plataformas
- Búsqueda vectorial : utilice el formato PGAI para funciones de búsqueda semántica
- Integración IDE : compatibilidad directa con las reglas del cursor
- Sistemas de plantillas : Exporte plantillas para usar en varios lenguajes de programación
Adaptadores de almacenamiento
El servidor admite tres tipos de adaptadores de almacenamiento:
- Adaptador de archivos : almacena las indicaciones como archivos JSON individuales en un directorio.
- Adaptador de PostgreSQL : almacena indicaciones en una base de datos PostgreSQL.
- Adaptador MDC : almacena indicaciones en formato MDC de reglas de cursor.
Los tipos de almacenamiento se pueden configurar utilizando la variable de entorno STORAGE_TYPE
:
Configuración de PostgreSQL
Al utilizar el almacenamiento PostgreSQL, configure las siguientes variables de entorno:
Alternativamente, utilice una cadena de conexión:
Implementación de Docker
Orquestación de Docker Compose
El servidor de indicaciones de MCP ofrece varias configuraciones de Docker Compose para diferentes escenarios de implementación:
Implementación simple
Esto implementará el servidor MCP Prompts utilizando el almacenamiento de archivos en el puerto 3003.
Implementación de PostgreSQL
Esto implementa:
- Un servidor de base de datos PostgreSQL
- El servidor MCP Prompts configurado para PostgreSQL
- Administrador para la gestión de bases de datos en http://localhost:8080
Entorno de desarrollo
Esto configura un entorno de desarrollo con recarga en caliente. Monta el código fuente desde el directorio local e incluye Adminer.
Entorno de prueba
Esto crea un entorno de prueba dedicado con:
- Una instancia temporal de PostgreSQL con datos de prueba
- Un contenedor de ejecución de pruebas aislado que ejecuta todas las pruebas
- Resultados de la prueba guardados en el directorio ./test-results
Script de administración de Docker
Para simplificar las operaciones de Docker Compose, utilice el script de administración proporcionado:
El script de administración admite los siguientes comandos:
start
: Iniciar contenedores Dockerstop
: Detener los contenedores Dockerrestart
: Reiniciar los contenedores Dockerlogs
: Mostrar registros de los contenedoresclean
: eliminar contenedores, redes y volúmenesbuild
: Construir imágenes de Dockertest
: Ejecutar pruebas en contenedores Docker
Y los siguientes entornos:
dev
: entorno de desarrollo (predeterminado)test
: entorno de pruebaprod
: Entorno de producción
Configuraciones personalizadas
Puede crear su propia configuración personalizada de Docker Compose ampliando las configuraciones base:
Luego ejecútalo con:
Desarrollo
Flujo de trabajo de desarrollo
Configuración del entorno de desarrollo
- Clonar el repositorioCopy
- Instalar dependenciasCopy
- Configurar variables de entorno Cree un archivo
.env
con la configuración necesaria.
Comandos de desarrollo
- Iniciar el servidor de desarrollo con recarga en calienteCopy
- Construir el proyectoCopy
- Ejecutar pruebas unitariasCopy
- Ejecutar pruebas de integraciónCopy
- Proceso de construcción de pruebasCopy
- Prueba de compilación de DockerCopy
- Crear una imagen de DockerCopy
Proceso de construcción
El proceso de construcción incluye varios pasos importantes:
- Compilación de TypeScriptCopy
- Hacer que el punto de entrada sea ejecutableCopy
Pruebas
Ejecutar las pruebas:
Ejecute el Inspector MCP para realizar pruebas:
Guiones de prueba completos
Para opciones de prueba más avanzadas, utilice el script de prueba proporcionado:
Pruebas de estado del contenedor Docker
Para probar el estado de los contenedores Docker:
Esta prueba verifica que el punto final de verificación de estado funciona correctamente cuando el servidor MCP-Prompts se ejecuta en un contenedor Docker.
Estructura del directorio
El proyecto sigue una organización estructurada para mantener una clara separación de preocupaciones:
Proceso de liberación
Lista de verificación previa al lanzamiento
- Se han resuelto todos los errores de TypeScript
- El análisis de código se realiza sin errores
- El código está formateado correctamente según los estándares del proyecto.
- Las pruebas unitarias pasan
- Las pruebas de integración pasan
- Las pruebas de compilación pasan
- La prueba de compilación de Docker pasa
- La prueba de instalación del paquete pasa
- README está actualizado con las últimas funciones y cambios
- El REGISTRO DE CAMBIOS se actualiza con todos los cambios notables
Actualización de la versión
- Actualizar la versión en
package.json
según el control de versiones semántico - Asegúrese de que las dependencias estén actualizadas
- Actualice cualquier referencia de versión en la documentación
Publicación
- Crea una etiqueta git para la nueva versión
- Enviar cambios y etiquetas a GitHub
- Publicar en npm (
npm publish
) - Construir y enviar una imagen de Docker
Verificación posterior al lanzamiento
- Verificar la instalación desde npm
- Verificar que el paquete se pueda ejecutar con npx
- Verificar que la imagen de Docker funcione como se espera
- Verificar la integración con Claude Desktop
Registro de cambios
[1.2.20] - 14 de marzo de 2025
- Aumento de versión automatizado
[1.2.19] - 16 de marzo de 2024
Fijado
- Se corrigieron errores de TypeScript en la implementación de PostgresAdapter
- Método savePrompt mejorado para devolver correctamente el mensaje creado
- Se agregó el método updatePrompt al PostgresAdapter
- Se arregló la interfaz StorageAdapter para incluir los métodos listPrompts y clearAll
- Manejo de errores mejorado en database-tools.ts para el método clearAll
- Punto final de control de salud mejorado con información más detallada
Agregado
- Se agregó mejor documentación y manejo de errores para el punto final de verificación de estado.
[1.2.18] - 14 de marzo de 2024
Agregado
- Se agregó un servidor HTTP con punto final de verificación de estado
- Se agregaron comprobaciones del estado del contenedor Docker
- Se agregó compatibilidad del módulo ESM para Node.js 18-23+
- Herramientas de base de datos mejoradas con mejor manejo de errores
Cambió
- Proceso de compilación de Docker mejorado con compilaciones de varias etapas
- Gestión de configuración optimizada
- Manejo optimizado de la conexión del adaptador PostgreSQL
- Dependencias actualizadas a las últimas versiones
Fijado
- Se solucionaron problemas con el adaptador de archivos en ciertos sistemas de archivos
- Mensajes de error mejorados para una mejor depuración
- Extracción de variables de plantilla fija
[1.2.0] - 14/03/2025
Cambió
- Estructura de base de código reorganizada para una mejor capacidad de mantenimiento
- Se movieron los archivos relacionados con Docker al directorio
docker/
- Se movieron los scripts de compilación al directorio
scripts/build/
- Se movieron los scripts de prueba al directorio
scripts/test/
- Flujos de trabajo de GitHub actualizados para usar nuevas rutas de archivos
- Configuración de Docker Compose actualizada para usar nuevas rutas de archivos
- Se agregó documentación de desarrollo completa
Agregado
- Se creó documentación de desarrollo con instrucciones detalladas.
- Se creó una lista de verificación de lanzamiento para la preparación del lanzamiento.
- Se agregó CHANGELOG.md para rastrear los cambios
Remoto
- Se eliminaron archivos duplicados y redundantes.
- Se eliminaron los scripts incompletos
[1.1.0] - 01-03-2024
Agregado
- Búsqueda vectorial PGAI para el descubrimiento de indicaciones semánticas
- Compatibilidad con incrustaciones en PostgreSQL
- Colección de indicaciones mejorada con plantillas profesionales
- Capacidades de procesamiento por lotes para cobros rápidos
Cambió
- Canal de procesamiento rápido mejorado
- Interfaz de línea de comandos mejorada con más opciones
- Mejor manejo y validación de errores
[1.0.0] - 15/02/2024
Agregado
- Versión inicial de MCP Prompts Server
- Funciones básicas de gestión de indicaciones (agregar, editar, obtener, enumerar, eliminar)
- Sustitución de variables de plantilla
- Organización basada en etiquetas
- Almacenamiento basado en archivos
- Funcionalidad de importación/exportación
- Compatibilidad del protocolo MCP
Mejores prácticas
- Organizar con etiquetas : utilice etiquetas para categorizar sus indicaciones y facilitar su recuperación.
- Usar plantillas : crea plantillas reutilizables con variables para obtener indicaciones consistentes
- Incluir metadatos : agregue autor, versión y otros metadatos para una mejor organización
- Copias de seguridad periódicas : utilice la función de copia de seguridad si gestiona indicaciones críticas
- Optimizar colecciones grandes : utilice la paginación al recuperar colecciones de indicaciones grandes
- Utilice nombres consistentes : nombre las solicitudes de forma clara y consistente para facilitar su descubrimiento.
- Etiquetar eficazmente : utilice etiquetas para organizar las indicaciones por propósito, proyecto o contexto
- Crear plantillas de indicaciones reutilizables : cree plantillas para indicaciones de uso frecuente con variables
- Actualice periódicamente : mantenga sus indicaciones actualizadas a medida que cambian sus necesidades
- Compartir con el equipo : comparta indicaciones efectivas con su equipo para interacciones consistentes
Licencia
Instituto Tecnológico de Massachusetts (MIT)
You must be authenticated.
Permite la creación, gestión y creación de plantillas de indicaciones a través de una arquitectura SOLID simplificada, lo que permite a los usuarios organizar las indicaciones por categoría y completar las plantillas en tiempo de ejecución.
- Table of Contents
- Features
- Installation
- Configuration
- Usage
- Prompt Format
- Multi-Format Prompt Support
- Storage Adapters
- Docker Deployment
- Development
- Release Process
- Changelog
- Best Practices
- License