Skip to main content
Glama

MCP Boilerplate

calculator.ts1.2 kB
import { ToolResult, createErrorResult, createSuccessResult, } from "../types/tool.types.js"; // Calculator tool parameter interface export interface CalculatorParams { operation: "add" | "subtract" | "multiply" | "divide"; a: number; b: number; } // Calculator tool implementation export const calculator = async ( params: CalculatorParams ): Promise<ToolResult> => { try { const { operation, a, b } = params; console.log(`[LOG] Calculator params: ${JSON.stringify(params)}`); // Perform calculation let result: number; switch (operation) { case "add": result = a + b; break; case "subtract": result = a - b; break; case "multiply": result = a * b; break; case "divide": if (b === 0) { return createErrorResult("Cannot divide by zero"); } result = a / b; break; default: return createErrorResult(`Unknown operation: ${operation}`); } return createSuccessResult(result); } catch (error) { const errorMessage = error instanceof Error ? error.message : String(error); return createErrorResult(errorMessage); } };

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/iamsrikanthnani/mcp-boilerplate'

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