Skip to main content
Glama
mcp-specification-results.md4.18 kB
# MCP Specification Test Results ## Summary Your Terminally-mcp server has been tested against comprehensive MCP protocol specification tests. The results show that the server is **mostly compliant** with the MCP specification, with 24 out of 26 tests passing. ## Test Coverage ### ✅ Passing Tests (24/26) #### 1. JSON-RPC 2.0 Protocol Compliance ✅ - ✅ Returns valid JSON-RPC 2.0 responses - ✅ Handles requests without params - ✅ Returns errors for unknown methods - ✅ Handles malformed JSON gracefully - ✅ Handles missing jsonrpc version #### 2. Tool Discovery (tools/list) ✅ - ✅ Lists all 5 available tools correctly - ✅ Provides complete tool metadata - ✅ Specifies required parameters correctly - ✅ Includes return type information #### 3. Tool Invocation (tools/call) ⚠️ - ✅ Calls tools with valid parameters - ❌ **FAILS: Does not validate missing required parameters** - ✅ Handles unknown tool names - ✅ Handles optional parameters - ✅ Returns properly formatted results #### 4. Server Capabilities ✅ - ✅ Responds to server/capabilities (returns proper error if not implemented) #### 5. Error Handling ✅ - ✅ Uses standard MCP error codes - ✅ Handles invalid parameter types gracefully - ✅ Provides meaningful error messages #### 6. Protocol Edge Cases ⚠️ - ✅ Handles empty params object - ❌ **FAILS: Times out when handling null params** - ✅ Handles very long tool arguments - ✅ Maintains request ID in responses #### 7. Tool-Specific Validation ✅ - ✅ create_tab returns valid window_id format (@\d+) - ✅ list_tabs returns proper tab structure - ✅ execute_command handles timeout parameter - ✅ read_output handles history_limit parameter ## Issues Found ### Issue 1: Missing Required Parameter Validation **Test:** `should handle missing required parameters` **Problem:** When calling `close_tab` without the required `window_id` parameter, the server does not return an error as expected. **Impact:** Low - Clients might get unexpected behavior **Fix Required:** Add parameter validation in the tool handlers to check for required parameters before processing ### Issue 2: Null Params Handling **Test:** `should handle null params` **Problem:** When sending `null` as params to `tools/list`, the server times out instead of handling it gracefully **Impact:** Medium - Could cause client timeouts **Fix Required:** Add null checks in the request handlers ## Server Configuration Verification ### ✅ Correctly Configured: 1. **Protocol Version**: Correctly reports version 0.3 2. **Tool Registration**: All 5 tools are properly registered and discoverable 3. **Tool Metadata**: Each tool has proper schema definitions with: - Name - Description - Input schema with properties and required fields - Return type definitions 4. **Response Format**: Follows MCP response format with content array containing text type 5. **Error Handling**: Returns proper JSON-RPC errors with codes and messages 6. **Request ID Tracking**: Maintains request IDs correctly in responses ### ⚠️ Needs Improvement: 1. **Parameter Validation**: Should validate required parameters before executing tools 2. **Null Handling**: Should handle null params gracefully ## Recommendations 1. **Add Parameter Validation**: Implement validation in tool handlers to check for required parameters 2. **Handle Edge Cases**: Add null checks for params in request handlers 3. **Consider Adding**: - More comprehensive error codes for different failure scenarios - Request/response logging for debugging - Rate limiting for production use ## Overall Assessment **Score: 92% (24/26 tests passing)** Your MCP server is **well-configured and largely compliant** with the MCP specification. The server correctly: - Implements the JSON-RPC 2.0 protocol - Exposes all tools with proper metadata - Handles most edge cases gracefully - Provides meaningful error messages The two failing tests are relatively minor issues that can be easily fixed with parameter validation improvements. The server is production-ready for most use cases, though addressing the identified issues would improve robustness.

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/NightTrek/Terminally-mcp'

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