Skip to main content
Glama
wxt2rr

Math Calculator MCP Server

by wxt2rr
test-client.ts1.73 kB
import { Client } from "@modelcontextprotocol/sdk/client/index.js"; import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js"; import { StdioClientTransport } from "@modelcontextprotocol/sdk/client/stdio.js"; async function testHttp(baseUrl: string) { console.log(`Testing HTTP Transport at ${baseUrl}...`); const transport = new StreamableHTTPClientTransport(new URL(baseUrl)); const client = new Client({ name: "test-client", version: "1.0.0", }, { capabilities: {} }); await client.connect(transport as any); console.log("Connected via HTTP!"); const result = await client.callTool({ name: "calculate", arguments: { operation: "add", a: 10, b: 20 } }); console.log("Calculation Result (HTTP):", result); await client.close(); } async function testStdio() { console.log("Testing Stdio Transport..."); const transport = new StdioClientTransport({ command: "node", args: ["dist/index.js"] }); const client = new Client({ name: "test-client", version: "1.0.0", }, { capabilities: {} }); await client.connect(transport); console.log("Connected via Stdio!"); const result = await client.callTool({ name: "calculate", arguments: { operation: "multiply", a: 5, b: 6 } }); console.log("Calculation Result (Stdio):", result); await client.close(); } const mode = process.argv[2]; const url = process.argv[3] || "http://localhost:3000/mcp"; if (mode === "http") { testHttp(url).catch(console.error); } else if (mode === "stdio") { testStdio().catch(console.error); } else { console.log("Usage: node test-client.js [http <url>|stdio]"); }

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/wxt2rr/mcp-server-test'

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