SSE Calculator

Un servidor de calculadora con estado que utiliza Eventos Enviados por el Servidor (SSE) para comunicación en tiempo real.

Documentación

Servidor MCP de Calculadora SSE

Un servidor de calculadora con estado que utiliza Eventos Enviados por el Servidor (SSE) para comunicación en tiempo real. Este servidor implementa el Protocolo de Contexto de Modelo (MCP) para integración con asistentes de IA.

Características

  • Operaciones de calculadora en tiempo real usando SSE
  • Sesiones con estado para cálculos continuos
  • Seguimiento del historial de todos los cálculos
  • Interfaz de calculadora basada en web
  • Integración MCP para asistentes de IA

Arquitectura

El servidor está construido con NestJS e implementa los siguientes componentes:

  • Servicio de Sesiones: Gestiona las sesiones de calculadora y su estado
  • Servicio de Calculadora: Realiza las operaciones de cálculo
  • Controlador SSE: Maneja las conexiones de clientes y la transmisión de eventos

Primeros Pasos

Requisitos Previos

  • Node.js (v14 o superior)
  • npm (v6 o superior)

Instalación

  1. Clona el repositorio
  2. Instala las dependencias:
npm install
  1. Inicia el servidor:
npm run start:dev
  1. Abre la interfaz de calculadora en tu navegador:
http://localhost:3000

Endpoints de la API

Transmisión SSE

GET /calculator/stream

Establece una conexión SSE y crea una nueva sesión de calculadora.

Calcular

POST /calculator/calculate/:sessionId

Realiza una operación de cálculo en la sesión especificada.

Cuerpo de la solicitud:

{
  "operation": "add", // add, subtract, multiply, divide, clear
  "a": 5,
  "b": 3
}

Historial

GET /calculator/history/:sessionId

Recupera el historial de cálculos de la sesión especificada.

Sesiones

GET /calculator/sessions

Recupera todas las sesiones de calculadora activas.

Integración MCP

Para usar este servidor como servidor MCP, añade la siguiente configuración a tu archivo de ajustes MCP:

{
  "mcpServers": {
    "remote-calculator": {
      "url": "http://localhost:3000/calculator/stream",
      "disabled": false,
      "alwaysAllow": [],
      "timeout": 60
    }
  }
}

Opciones de Despliegue

Para el despliegue en producción, puedes usar las siguientes opciones:

  1. Docker: Se proporciona un Dockerfile para el despliegue en contenedores

    • Consulta Dockerfile y docker-compose.yml para la configuración
  2. Smithery.ai: Despliega directamente desde GitHub

    • Consulta SMITHERY_DEPLOYMENT.md para instrucciones detalladas
    • Configuración proporcionada en smithery.json
  3. Heroku/DigitalOcean: Despliegue en plataformas en la nube

    • Consulta DEPLOYMENT.md para instrucciones paso a paso
  4. Autoalojado: Usa NGINX o similar para terminación SSL y balanceo de carga

Alojando Tu Propio Servidor MCP

Después de desplegar tu servidor, actualiza la configuración de tu cliente MCP para que apunte a tu URL alojada:

{
  "mcpServers": {
    "remote-calculator": {
      "url": "https://your-deployed-url.com/calculator/stream",
      "disabled": false,
      "alwaysAllow": [],
      "timeout": 60
    }
  }
}

Licencia

MIT