Skip to main content
Glama

MCP Unit Test Sensei

by kourtni
manual_test.py2.61 kB
#!/usr/bin/env python3 """Manual test for the MCP server - requires mcp module.""" import json import subprocess import sys import time def send_request(process, request): """Send a JSON-RPC request and read the response.""" request_str = json.dumps(request) print(f'\n→ Sending: {request_str}') process.stdin.write(request_str + '\n') process.stdin.flush() # Give the server time to process time.sleep(0.1) # Read response response_line = process.stdout.readline() if response_line: response = json.loads(response_line) print(f'← Response: {json.dumps(response, indent=2)}') return response return None def main(): """Run manual tests against the MCP server.""" print('Starting MCP server for manual testing...') # Start the server process = subprocess.Popen( [sys.executable, 'mcp_server.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE, text=True, bufsize=1, ) try: # Give server time to start time.sleep(0.5) # Check if server started properly if process.poll() is not None: stderr = process.stderr.read() print(f'Server failed to start: {stderr}') return print('Server started successfully!') # Test 1: Send initialize request init_request = { 'jsonrpc': '2.0', 'id': 1, 'method': 'initialize', 'params': { 'protocolVersion': '2025-11-05', 'capabilities': {}, 'clientInfo': {'name': 'manual-test', 'version': '1.0.0'}, }, } send_request(process, init_request) # Test 2: List tools list_tools = {'jsonrpc': '2.0', 'id': 2, 'method': 'tools/list', 'params': {}} send_request(process, list_tools) # Test 3: Call lint_code lint_code = { 'jsonrpc': '2.0', 'id': 3, 'method': 'tools/call', 'params': { 'name': 'lint_code', 'arguments': {'code': 'def test_example():\n if True:\n pass'}, }, } send_request(process, lint_code) print('\n✓ Manual test completed!') except Exception as e: print(f'\n✗ Test failed: {e}') import traceback traceback.print_exc() finally: # Clean up process.terminate() process.wait() print('\nServer stopped.') if __name__ == '__main__': main()

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/kourtni/mcp-testing-sensei'

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