Sequential Thinking Tool API

by bta4935
Integrations
  • Provides examples for interacting with the Sequential Thinking Tool API, demonstrating how to create sessions and post thoughts using curl commands.

  • Built as a Node.js backend service, providing the runtime environment for the Sequential Thinking Tool API.

  • Utilizes npm for package management and running predefined scripts for development and server execution.

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

  1. Clonar el repositorio:
    git clone <your-repo-url> cd SQ
  2. Instalar dependencias:
    npm install

Ejecución del servidor

Uso de ts-node (desarrollo)

npx ts-node src/api/httpServer.ts

Usando el script npm (si está disponible)

npm run dev

Usando JavaScript compilado

npx tsc node dist/api/httpServer.js

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:
    { "thought": "string (required)", "thoughtNumber": 1, "totalThoughts": 3, "nextThoughtNeeded": true, "isRevision": false, // optional "revisesThought": 2, // optional "branchFromThought": 1, // optional "branchId": "string", // optional "needsMoreThoughts": false // optional }
  • Respuesta:
    { "sessionId": "<uuid>", "thoughtNumber": 1, "totalThoughts": 3, "nextThoughtNeeded": true, "branches": [], "thoughtHistoryLength": 1, "processedThought": "This is my first thought." }

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:
    { "thought": "string (required)", "thoughtNumber": 2, "totalThoughts": 3, "nextThoughtNeeded": true, "isRevision": false, // optional "revisesThought": 1, // optional "branchFromThought": 1, // optional "branchId": "string", // optional "needsMoreThoughts": false // optional }
  • Respuesta:
    { "thoughtNumber": 2, "totalThoughts": 3, "nextThoughtNeeded": true, "branches": [], "thoughtHistoryLength": 2, "processedThought": "This is my second thought." }

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.

Ejemplo de comando curl

curl -N http://localhost:3000/api/mcp/sse

Ejemplo de respuesta a un evento

data: {"event":"thoughtProcessed","sessionId":"...","thoughtNumber":1,"message":"Thought processed successfully."}

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

  1. 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:

    curl -X POST http://localhost:3000/api/sessions \ -H "Content-Type: application/json" \ -d '{ "thought": "This is my first thought.", "thoughtNumber": 1, "totalThoughts": 3, "nextThoughtNeeded": true }'

    Ejemplo de respuesta:

    { "sessionId": "abc123", "thoughtNumber": 1, "totalThoughts": 3, "nextThoughtNeeded": true, "branches": [], "thoughtHistoryLength": 1, "processedThought": "This is my first thought." }
  2. El usuario envía pensamientos adicionales a /api/sessions/:sessionId/thoughts
    • El servidor agrega el pensamiento a la sesión existente.

    Ejemplo de rizo:

    curl -X POST http://localhost:3000/api/sessions/abc123/thoughts \ -H "Content-Type: application/json" \ -d '{ "thought": "This is my second thought.", "thoughtNumber": 2, "totalThoughts": 3, "nextThoughtNeeded": true }'

    Ejemplo de respuesta:

    { "thoughtNumber": 2, "totalThoughts": 3, "nextThoughtNeeded": true, "branches": [], "thoughtHistoryLength": 2, "processedThought": "This is my second thought." }

Ejemplo de respuesta de error (entrada no válida)

{ "errors": [ { "path": ["thought"], "message": "Thought cannot be empty" } ] }

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)

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

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.

  1. Tabla de contenido
    1. Instalación
      1. Ejecución del servidor
        1. Uso de ts-node (desarrollo)
        2. Usando el script npm (si está disponible)
        3. Usando JavaScript compilado
      2. Puntos finales de API
        1. Crear una sesión con el primer pensamiento
        2. Publicar un pensamiento adicional
      3. MCP SSE (Eventos enviados por el servidor)
        1. Descripción general
        2. Punto final
        3. Ejemplo de comando curl
        4. Ejemplo de respuesta a un evento
        5. Notas de uso
      4. Validación
        1. Flujo de usuario: Sesión creada a primera vista
          1. Ejemplo de respuesta de error (entrada no válida)
        2. Desarrollo
          1. Licencia

            Related MCP Servers

            • -
              security
              F
              license
              -
              quality
              This 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 -
              2
              7
              TypeScript
              • Apple
            • A
              security
              F
              license
              A
              quality
              A 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 -
              4
              3
              JavaScript
            • A
              security
              A
              license
              A
              quality
              Node.js server implementing Model Context Protocol that enables interaction with TaskWarrior through natural language to view, filter, add, and complete tasks.
              Last updated -
              3
              13
              1
              JavaScript
              MIT License
            • -
              security
              F
              license
              -
              quality
              A 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

            View all related MCP servers

            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/bta4935/SQ-MCP'

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