Add MCP server functionality check after gateway health validation#9516
Conversation
- Created check_mcp_servers.sh to verify MCP server connectivity - Implements algorithm: parse gateway config, connect to each server, send initialize and tools/list requests - Displays available tools from each server with extensive logging - Integrated into start_mcp_gateway.sh after health check - Added comprehensive test suite (16 tests, all passing) - Handles curl timeouts and connection failures gracefully Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
|
🎉 Yo ho ho! Changeset Generator found the treasure and completed successfully! ⚓💰 |
|
✨ The prophecy is fulfilled... Smoke Codex has completed its mystical journey. The stars align. 🌟 |
|
💫 TO BE CONTINUED... Smoke Claude failed! Our hero faces unexpected challenges... |
|
📰 VERDICT: Smoke Copilot has concluded. All systems operational. This is a developing story. 🎤 |
|
@copilot update check script to fail if you are unable to connect any of the servers |
- Script now exits with code 1 if no servers successfully connect - Updated start_mcp_gateway.sh to propagate failure and terminate gateway - Updated all tests to reflect new failure behavior - All 16 tests passing with new logic Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
|
@copilot fails if "any" MCP server fails to respond |
- Script now fails if any HTTP server fails to respond (not just all) - Added separate counter for skipped servers (stdio without HTTP URLs) - Stdio servers are skipped, not counted as failures - Success only if all HTTP servers succeed and at least one exists - Updated summary output to show skipped vs failed servers separately - All 16 tests still passing Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
|
💀 Blimey! Changeset Generator failed and walked the plank! No treasure today, matey! ☠️ |
|
💫 TO BE CONTINUED... Smoke Claude failed! Our hero faces unexpected challenges... |
|
📰 DEVELOPING STORY: Smoke Copilot reports failed. Our correspondents are investigating the incident... |
|
🌑 The shadows whisper... Smoke Codex failed. The oracle requires further meditation... |
Adds a validation script that verifies MCP servers are operational after the gateway starts. The script sends MCP protocol messages to each configured server and displays available tools. The script fails and terminates the gateway if any HTTP server fails to respond.
Changes
New script:
check_mcp_servers.shinitializeandtools/listrequests to each HTTP serverIntegration:
start_mcp_gateway.shTest coverage:
check_mcp_servers_test.shBehavior
Example Output (Success)
========================================== Checking server: github ========================================== Server URL: http://localhost:8080/mcp/github Authentication: Configured (****** Step 1: Sending MCP initialize request... ✓ Initialize request succeeded Step 2: Sending tools/list request... ✓ tools/list request succeeded Available tools from github: [1] create_issue Description: Create a new GitHub issue [2] list_repositories Description: List user repositories --- ========================================== MCP Server Check Summary ========================================== Servers checked: 2 Servers succeeded: 1 Servers failed: 0 Servers skipped: 1 ✓ All HTTP server checks succeeded (1 succeeded, 1 skipped)Example Output (Failure)
Exit code: 1 (causes gateway to be terminated)
Original prompt
💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.