Skip to main content
Glama
Om-Shree-0709

GitHub MCP TypeScript SDK Server

test-server.js2.57 kB
#!/usr/bin/env node /** * Simple test script for the GitHub MCP Server * This script tests the server by sending MCP requests via stdin */ import { config } from "dotenv"; import { spawn } from "child_process"; import { fileURLToPath } from "url"; import { dirname, join } from "path"; // Load environment variables from .env file config(); const __filename = fileURLToPath(import.meta.url); const __dirname = dirname(__filename); console.log("🧪 Testing GitHub MCP Server...\n"); // Check if GITHUB_TOKEN is set if (!process.env.GITHUB_TOKEN) { console.error( "❌ GITHUB_TOKEN environment variable is required for testing!" ); console.log("Please set your GitHub token:"); console.log("export GITHUB_TOKEN=your_token_here"); process.exit(1); } // Start the server const serverPath = join(__dirname, "dist", "server.js"); const server = spawn("node", [serverPath], { stdio: ["pipe", "pipe", "pipe"], }); // Test messages to send const testMessages = [ { jsonrpc: "2.0", id: 1, method: "initialize", params: { protocolVersion: "2024-11-05", capabilities: { tools: {}, }, clientInfo: { name: "test-client", version: "1.0.0", }, }, }, { jsonrpc: "2.0", id: 2, method: "tools/list", params: {}, }, ]; let messageIndex = 0; // Handle server output server.stdout.on("data", (data) => { const output = data.toString(); console.log("📤 Server Response:"); console.log(output); console.log("---"); // Send next message after a short delay if (messageIndex < testMessages.length) { setTimeout(() => { const message = testMessages[messageIndex]; if (message) { console.log(`📥 Sending message ${messageIndex + 1}:`, message.method); server.stdin.write(JSON.stringify(message) + "\n"); messageIndex++; } }, 1000); } else { // Test complete setTimeout(() => { console.log("✅ Test completed successfully!"); server.kill(); process.exit(0); }, 1000); } }); // Handle server errors server.stderr.on("data", (data) => { console.error("❌ Server Error:", data.toString()); }); server.on("close", (code) => { if (code !== 0) { console.error(`❌ Server exited with code ${code}`); process.exit(1); } }); // Send first message after a short delay setTimeout(() => { const message = testMessages[0]; console.log(`📥 Sending message 1:`, message.method); server.stdin.write(JSON.stringify(message) + "\n"); messageIndex++; }, 500);

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/Om-Shree-0709/Github-MCP-Ts-SDK'

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