API de la herramienta de pensamiento secuencial
Un backend de Node.js/TypeScript para gestionar sesiones de pensamiento y pensamientos secuenciales, con validación de entrada robusta con Zod y un simple almacenamiento de sesiones en memoria.
Tabla de contenido
Instalación
- Clonar el repositorio:
- Instalar dependencias:
Ejecución del servidor
Uso de ts-node (desarrollo)
Usando el script npm (si está disponible)
Usando JavaScript compilado
El servidor se iniciará en el puerto 3000
de forma predeterminada o en el puerto especificado en su variable de entorno PORT
.
Puntos finales de API
1. Crear una sesión con el primer pensamiento
- Punto final:
POST /api/sessions
- Descripción: Crea una nueva sesión y almacena el pensamiento proporcionado como el primero de esa sesión. Devuelve el ID de la nueva sesión y la información del pensamiento procesado.
- Cuerpo de la solicitud:
- Respuesta:
2. Publicar un pensamiento adicional
- Punto final:
POST /api/sessions/:sessionId/thoughts
- Descripción: Añade un pensamiento a la sesión especificada. La entrada se valida mediante Zod.
- Cuerpo de la solicitud:
- Respuesta:
MCP SSE (Eventos enviados por el servidor)
Descripción general
El punto final MCP SSE permite la transmisión unidireccional en tiempo real de eventos del servidor a los clientes mediante Eventos Enviados por el Servidor (SSE). Esto resulta útil para los clientes que desean recibir actualizaciones sobre la sesión o el procesamiento de pensamientos a medida que ocurren, sin consultar el servidor.
Punto final
- OBTENER /api/mcp/sse
- Descripción: Establece una conexión SSE persistente. El servidor enviará eventos al cliente conforme ocurran.
- Respuesta:
- Tipo de contenido:
text/event-stream
- Los eventos se envían como líneas que comienzan con
data:
, seguido de un objeto de evento codificado en JSON.
- Tipo de contenido:
Ejemplo de comando curl
Ejemplo de respuesta a un evento
Notas de uso
- Mantenga la conexión abierta para continuar recibiendo eventos.
- Cada evento es un objeto JSON. Gestione cada evento conforme llega al cliente.
- Si necesita escuchar eventos para una sesión específica, incluya parámetros de consulta compatibles con su implementación (por ejemplo,
/api/mcp/sse?sessionId=...
).
Validación
Todas las solicitudes POST a /thoughts
se validan con Zod. Las solicitudes no válidas devolverán un estado 400 y una lista de errores de validación.
Flujo de usuario: Sesión creada a primera vista
- El usuario envía su primer pensamiento a
/api/sessions
- El servidor crea una nueva sesión y almacena el primer pensamiento.
- Devuelve el nuevo
sessionId
y la información del pensamiento procesado.
Ejemplo de rizo:
Ejemplo de respuesta:
- El usuario envía pensamientos adicionales a
/api/sessions/:sessionId/thoughts
- El servidor agrega el pensamiento a la sesión existente.
Ejemplo de rizo:
Ejemplo de respuesta:
Ejemplo de respuesta de error (entrada no válida)
Desarrollo
- La configuración de TypeScript está en
tsconfig.json
. - Los esquemas Zod están en
src/types.ts
. - El middleware de validación está en
src/api/validationMiddleware.ts
. - La lógica del servidor principal está en
src/api/httpServer.ts
.
Licencia
Instituto Tecnológico de Massachusetts (MIT)
This server cannot be installed
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Un backend Node.js/TypeScript para gestionar sesiones de pensamiento secuencial, que permite a los usuarios crear sesiones y publicar pensamientos en una secuencia estructurada con soporte para actualizaciones en tiempo real a través de eventos enviados por el servidor.
Related MCP Servers
- -securityFlicense-qualityThis TypeScript-based server implements a simple notes system, allowing users to create and manage text notes and generate summaries, showcasing core MCP concepts.Last updated -27TypeScript
- AsecurityFlicenseAqualityA TypeScript Model Context Protocol server that integrates with Google Tasks API, allowing users to create, list, update, delete, and toggle completion status of tasks.Last updated -43JavaScript
- AsecurityAlicenseAqualityNode.js server implementing Model Context Protocol that enables interaction with TaskWarrior through natural language to view, filter, add, and complete tasks.Last updated -3131JavaScriptMIT License
- -securityFlicense-qualityA Node.js and TypeScript server project that provides a simple starter example with Express.js web server, supporting hot-reload, testing, and modular structure.Last updated -TypeScript