Skip to main content
Glama

MCP Hub Database Server

test_all_tools.py3.54 kB
#!/usr/bin/env python3 """Test all 5 MCP tools""" import asyncio from mcp import ClientSession, StdioServerParameters from mcp.client.stdio import stdio_client async def test_all_tools(): """Test all 5 MCP tools""" server_params = StdioServerParameters( command="python", args=["-m", "src.main"], env={"TRANSPORT_MODE": "stdio"} ) async with stdio_client(server_params) as (read, write): async with ClientSession(read, write) as session: await session.initialize() print("\n" + "="*60) print("MCP Hub MCP Server - Testing All Tools") print("="*60) # Test 1: search_mcp_servers print("\n[1/5] Testing: search_mcp_servers") print("-"*60) try: result = await session.call_tool( "search_mcp_servers", arguments={"keyword": "github"} ) output = result.content[0].text print(output[:300] + "..." if len(output) > 300 else output) print("✅ PASSED") except Exception as e: print(f"❌ FAILED: {e}") # Test 2: list_mcp_servers print("\n[2/5] Testing: list_mcp_servers") print("-"*60) try: result = await session.call_tool( "list_mcp_servers", arguments={"limit": 3, "sort": "created_at", "order": "desc"} ) output = result.content[0].text print(output[:300] + "..." if len(output) > 300 else output) print("✅ PASSED") except Exception as e: print(f"❌ FAILED: {e}") # Test 3: get_mcp_server_details print("\n[3/5] Testing: get_mcp_server_details") print("-"*60) try: result = await session.call_tool( "get_mcp_server_details", arguments={"server_id": 5} ) output = result.content[0].text print(output[:400] + "..." if len(output) > 400 else output) print("✅ PASSED") except Exception as e: print(f"❌ FAILED: {e}") # Test 4: get_top_servers (favorites) print("\n[4/5] Testing: get_top_servers (sort=favorites)") print("-"*60) try: result = await session.call_tool( "get_top_servers", arguments={"limit": 3, "sort": "favorites"} ) output = result.content[0].text print(output[:300] + "..." if len(output) > 300 else output) print("✅ PASSED") except Exception as e: print(f"❌ FAILED: {e}") # Test 5: get_top_contributors print("\n[5/5] Testing: get_top_contributors") print("-"*60) try: result = await session.call_tool( "get_top_contributors", arguments={"limit": 3} ) output = result.content[0].text print(output) print("✅ PASSED") except Exception as e: print(f"❌ FAILED: {e}") print("\n" + "="*60) print("All Tests Completed!") print("="*60) if __name__ == "__main__": asyncio.run(test_all_tools())

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/JuyoungKimmy-Kim/mcp-demo'

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