1. Conduid
  2. Developer Tools
  3. iflow-mcp_saha-rajdeep-remote-mcp-server
MCP server · Developer Tools

iflow-mcp_saha-rajdeep-remote-mcp-server

A containerized MCP server using FastMCP that provides a simple calculator tool

Unclaimed last commit a year ago devtools
37Low

Scored 7 months ago · breakdown

About iflow-mcp_saha-rajdeep-remote-mcp-server

iflow-mcp_saha-rajdeep-remote-mcp-server is an MCP server published by saha-rajdeep in the Developer Tools category: a containerized MCP server using FastMCP that provides a simple calculator tool.

The repository has 7 stars and 11 forks, with the last commit a year ago. Six months or more without a commit doesn't mean the server is broken, but check the open issues before depending on it in production.

Install

uvx
uvx iflow-mcp-saha-rajdeep-remote-mcp-server
pip
pip install iflow-mcp-saha-rajdeep-remote-mcp-server

This server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.

Ask AI

✦

Ask AI about iflow-mcp_saha-rajdeep-remote-mcp-server

Powered by Claude · Grounded in docs

I know everything about iflow-mcp_saha-rajdeep-remote-mcp-server. Ask me about installation, configuration, usage, or troubleshooting.

Security checks

  • ✓README presentThe repository ships documentation.

5 checks have not been run yet.

README

Remote MCP Server on Kubernetes (Amazon EKS)

A containerized MCP (Model Context Protocol) server using FastMCP that provides a simple calculator tool for adding two numbers. This MCP server runs on Amazon EKS. The highlevel diagram of this project below: High Level Design

Detailed walkthrough video

Files

  • server.py - FastMCP server with add_numbers tool
  • requirements.txt - Python dependencies
  • Dockerfile - Container definition
  • k8s-deployment.yaml - Kubernetes deployment and LoadBalancer service
  • test_mcp_client.py - Test Remote MCP Server

Building the Container

docker build -t mcp-calculator:latest .

Running Locally

# Run the container locally
docker run -p 8000:8000 mcp-calculator:latest

The server will be available at http://localhost:8000

Push to repo

You can push this image to either Dockerhub or an ECR repo

Deploying to Amazon EKS

Prerequisites

  • AWS CLI configured with appropriate permissions
  • kubectl installed
  • Docker installed and running

EKS Cluster

You can use an existing EKS cluster or create a new one, it's upto you. Ensure that your terminal has access to run Kubectl on it

Deployment Steps

IMPORTANT: Change the container image to the repo URI in k8s-deployment.yaml file

  1. Deploy MCP Server container to EKS:
# Deploy the application
kubectl apply -f k8s-deployment.yaml

# Check deployment status
kubectl rollout status deployment/mcp-calculator

# Get service information
kubectl get services mcp-calculator-service
  1. Get the LoadBalancer external IP:
kubectl get services mcp-calculator-service -w

Testing the MCP Server

The server provides one tool:

  • add_numbers(a: float, b: float) -> float - Adds two numbers together

Testing with curl

The MCP server is currently deployed and accessible at:

http://<insert loadbalancer url>/mcp/

Complete curl Test Workflow

Step 1: Initialize MCP Session and Get Session ID

SESSION_ID=$(curl -s -X POST \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{"roots":{"listChanged":true},"sampling":{}},"clientInfo":{"name":"curl-test","version":"1.0.0"}}}' \
  http://<insert loadbalancer url>/mcp/ \
  -D /dev/stderr 2>&1 | grep "mcp-session-id:" | cut -d' ' -f2 | tr -d '\r')

echo "Session ID: $SESSION_ID"

Step 2: Send Initialization Notification (Required by MCP Protocol)

curl -s -X POST \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -H "mcp-session-id: $SESSION_ID" \
  -d '{"jsonrpc":"2.0","method":"notifications/initialized"}' \
  http://<insert loadbalancer url>/mcp/

Step 3: List Available Tools (Optional)

curl -X POST \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -H "mcp-session-id: $SESSION_ID" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/list"}' \
  http://<insert loadbalancer url>/mcp/

Expected Result:

event: message
data: {"jsonrpc":"2.0","id":2,"result":{"tools":[{"name":"add_numbers","description":"Add two numbers together.\n\nArgs:\n    a: First number to add\n    b: Second number to add\n    \nReturns:\n    The sum of a and b","inputSchema":{"type":"object","properties":{"a":{"type":"number"},"b":{"type":"number"}},"required":["a","b"]}}]}}

Step 4: Call the add_numbers Tool

curl -X POST \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -H "mcp-session-id: $SESSION_ID" \
  -d '{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"add_numbers","arguments":{"a":15.5,"b":24.3}}}' \
  http://<insert loadbalancer url>/mcp/

Expected Result:

event: message
data: {"jsonrpc":"2.0","id":3,"result":{"content":[{"type":"text","text":"39.8"}],"structuredContent":{"result":39.8},"isError":false}}

Testing with Python client

Replace the URL in the test_mcp_client.py, and execute it. This will act as MCP client and test the MCP server

Important Notes

  • Session Timeout: Sessions expire after ~30-60 seconds due to FastMCP framework limitations
  • Rapid Execution: Execute all steps quickly or use the one-liner command
  • MCP Protocol: The notifications/initialized step is required by the MCP protocol after initialization

Cleanup

To remove from Kubernetes:

kubectl delete -f k8s-deployment.yaml

README copy captured when this server was indexed; it may lag the repository. The original is authoritative.

Questions

About iflow-mcp_saha-rajdeep-remote-mcp-server

How do I install iflow-mcp_saha-rajdeep-remote-mcp-server?

Run uvx iflow-mcp-saha-rajdeep-remote-mcp-server, then add the server to your MCP client's configuration.

Is iflow-mcp_saha-rajdeep-remote-mcp-server safe to use with an AI agent?

Its trust score is 37 out of 100 (low). It passes 1 of the 1 static security checks run so far. It has no ConduID identity yet, so agent calls to it are not receipted.

Is iflow-mcp_saha-rajdeep-remote-mcp-server still maintained?

The last commit was a year ago. That's long enough that you should check whether the maintainer is responding to issues before depending on it.