Skip to main content
Glama

Physics MCP Server

by BlinkZer0
mcp-server.js2.46 kB
#!/usr/bin/env node /** * MCP Server Implementation for Phys-MCP */ async function startMCPServer() { try { console.error('🔧 Loading MCP SDK...'); // Import MCP SDK components const { Server } = await import('@modelcontextprotocol/sdk/server/index.js'); const { StdioServerTransport } = await import('@modelcontextprotocol/sdk/server/stdio.js'); const { ListToolsRequestSchema, CallToolRequestSchema } = await import('@modelcontextprotocol/sdk/types.js'); console.error('🔧 Creating MCP server instance...'); // Create a new MCP server instance const server = new Server({ name: "phys-mcp", version: "0.1.0", description: "Physics MCP Server with CAS, Plot, and NLI capabilities" }); // Set up request handlers console.error('🔧 Setting up request handlers...'); // List available tools server.setRequestHandler(ListToolsRequestSchema, async () => { console.error('📋 Listing available tools...'); return { tools: [ { name: "ping", description: "Simple ping-pong endpoint for testing", parameters: { type: "object", properties: { message: { type: "string", description: "Message to echo back" } } } } ] }; }); // Handle tool calls server.setRequestHandler(CallToolRequestSchema, async (request) => { console.error(`🛠️ Handling tool call: ${request.params.name}`); if (request.params.name === 'ping') { return { content: [{ type: 'text', text: request.params.parameters?.message || 'pong' }] }; } throw new Error(`Unknown tool: ${request.params.name}`); }); // Set up transport console.error('🔌 Setting up stdio transport...'); const transport = new StdioServerTransport(); // Start the server console.error('🚀 Starting MCP server...'); await server.connect(transport); console.error('✅ MCP server is ready and listening for connections'); } catch (error) { console.error('❌ Failed to start MCP server:'); console.error('Error details:', error.message); if (error.stack) { console.error('Stack trace:', error.stack); } process.exit(1); } } // Start the server startMCPServer();

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/BlinkZer0/Phys-MCP'

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