Skip to main content
Glama

SearXNG MCP Server

MIT License
  • Linux
  • Apple
test_connection.py•2.61 kB
#!/usr/bin/env python3 """ Simple script to test SearXNG connection and basic functionality. Usage: python examples/test_connection.py https://searx.be """ import asyncio import sys from searxng_mcp_server.client import SearXNGClient async def test_connection(base_url: str) -> None: """Test connection to SearXNG instance.""" print(f"Testing connection to: {base_url}") print("-" * 60) async with SearXNGClient(base_url) as client: # Test 1: Health Check print("\n1. Health Check:") try: health = await client.health_check() print(f" Status: {health['status']}") print(f" Message: {health['message']}") except Exception as e: print(f" Error: {e}") # Test 2: Get Configuration print("\n2. Instance Configuration:") try: config = await client.get_config() print(f" Instance Name: {config.get('instance_name', 'N/A')}") print(f" Available Categories: {', '.join(config.get('categories', []))}") print(f" Number of Engines: {len(config.get('engines', []))}") except Exception as e: print(f" Error: {e}") # Test 3: Search Suggestions print("\n3. Search Suggestions:") try: suggestions = await client.get_suggestions("python", language="en") print(f" Suggestions for 'python': {suggestions[:5]}") except Exception as e: print(f" Error: {e}") # Test 4: Basic Search print("\n4. Basic Search:") try: response = await client.search( query="test search", categories=["general"], language="en", ) print(f" Query: {response.query}") print(f" Number of Results: {response.number_of_results}") if response.results: print(f" First Result: {response.results[0].title}") print(f" URL: {response.results[0].url}") except Exception as e: print(f" Error: {e}") print("\n" + "-" * 60) print("Testing complete!") def main() -> None: """Main entry point.""" if len(sys.argv) < 2: print("Usage: python test_connection.py <searxng_url>") print("\nExample:") print(" python test_connection.py https://searx.be") print(" python test_connection.py http://localhost:8888") sys.exit(1) base_url = sys.argv[1] asyncio.run(test_connection(base_url)) 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/martinchen448/searxng-mcp-server'

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