Skip to main content
Glama
phamtienduceng

SSE Calculator MCP Server

SSE Calculator MCP Server

A stateful calculator server that uses Server-Sent Events (SSE) for real-time communication. This server implements the Model Context Protocol (MCP) for integration with AI assistants.

Features

  • Real-time calculator operations using SSE

  • Stateful sessions for ongoing calculations

  • History tracking for all calculations

  • Web-based calculator interface

  • MCP integration for AI assistants

Architecture

The server is built using NestJS and implements the following components:

  • Session Service: Manages calculator sessions and state

  • Calculator Service: Performs calculation operations

  • SSE Controller: Handles client connections and event streaming

Getting Started

Prerequisites

  • Node.js (v14 or higher)

  • npm (v6 or higher)

Installation

  1. Clone the repository

  2. Install dependencies:

npm install
  1. Start the server:

npm run start:dev
  1. Open the calculator interface in your browser:

http://localhost:3000

API Endpoints

SSE Stream

GET /calculator/stream

Establishes an SSE connection and creates a new calculator session.

Calculate

POST /calculator/calculate/:sessionId

Performs a calculation operation on the specified session.

Request body:

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

History

GET /calculator/history/:sessionId

Retrieves the calculation history for the specified session.

Sessions

GET /calculator/sessions

Retrieves all active calculator sessions.

MCP Integration

To use this server as an MCP server, add the following configuration to your MCP settings file:

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

Deployment Options

For production deployment, you can use the following options:

  1. Docker: A Dockerfile is provided for containerized deployment

    • See Dockerfile and docker-compose.yml for configuration

  2. Smithery.ai: Deploy directly from GitHub

    • See SMITHERY_DEPLOYMENT.md for detailed instructions

    • Configuration provided in smithery.json

  3. Heroku/DigitalOcean: Cloud platform deployment

    • See DEPLOYMENT.md for step-by-step instructions

  4. Self-hosted: Use NGINX or similar for SSL termination and load balancing

Hosting Your Own MCP Server

After deploying your server, update your MCP client configuration to point to your hosted URL:

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

License

MIT

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

Resources

Looking for Admin?

Admins can modify the Dockerfile, update the server description, and track usage metrics. If you are the server author, to access the admin panel.

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/phamtienduceng/calculator-mcp-remote-server'

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