Spaces:
Paused
Paused
| import os | |
| import subprocess | |
| import time | |
| import requests | |
| def test_gitmcp(): | |
| """Tests the connectivity of the GitMCP server.""" | |
| url = "https://gitmcp.io/" | |
| try: | |
| response = requests.get(url, timeout=10) | |
| if response.status_code == 200: | |
| print("GitMCP server is reachable.") | |
| else: | |
| print(f"GitMCP server returned status code: {response.status_code}") | |
| except requests.exceptions.RequestException as e: | |
| print(f"Error connecting to GitMCP server: {e}") | |
| def test_hf_mcp_server(): | |
| """Tests the connectivity of the Hugging Face MCP server.""" | |
| # This test requires npx to be installed. | |
| server_command = "npx @llmindset/hf-mcp-server-http" | |
| process = None | |
| try: | |
| # Check if npx is installed | |
| subprocess.run(["npx", "-v"], check=True, capture_output=True) | |
| # Start the server in the background | |
| process = subprocess.Popen(server_command.split(), stdout=subprocess.PIPE, stderr=subprocess.PIPE) | |
| print("Starting Hugging Face MCP server...") | |
| # Poll the server to see if it's running | |
| for _ in range(20): # Poll for 20 seconds | |
| try: | |
| response = requests.get("http://localhost:3000", timeout=1) | |
| if response.status_code == 200: | |
| print("Hugging Face MCP server is running.") | |
| return | |
| except requests.exceptions.RequestException: | |
| time.sleep(1) | |
| print("Hugging Face MCP server failed to start.") | |
| except (FileNotFoundError, subprocess.CalledProcessError) as e: | |
| print(f"Error with Hugging Face MCP server: npx is likely not installed or the package is not found. {e}") | |
| except requests.exceptions.RequestException as e: | |
| print(f"Error connecting to Hugging Face MCP server: {e}") | |
| finally: | |
| if process: | |
| stdout, stderr = process.communicate() | |
| print("Hugging Face MCP server stdout:") | |
| print(stdout.decode()) | |
| print("Hugging Face MCP server stderr:") | |
| print(stderr.decode()) | |
| process.kill() | |
| print("Hugging Face MCP server stopped.") | |
| def test_jules_api(): | |
| """Tests the connectivity of the Jules API.""" | |
| api_key = os.environ.get("JULES_API_KEY") | |
| if not api_key: | |
| print("JULES_API_KEY environment variable not set.") | |
| return | |
| url = "https://jules.googleapis.com/v1alpha/sources" | |
| headers = {"x-goog-api-key": api_key} | |
| try: | |
| response = requests.get(url, headers=headers, timeout=10) | |
| if response.status_code == 200: | |
| print("Jules API is reachable.") | |
| elif response.status_code == 401: | |
| print("Jules API returned 401 Unauthorized. The API key may be invalid or expired.") | |
| print("This may also indicate that the API no longer supports API key authentication.") | |
| else: | |
| print(f"Jules API returned status code: {response.status_code}") | |
| print(f"Response content: {response.text}") | |
| except requests.exceptions.RequestException as e: | |
| print(f"Error connecting to Jules API: {e}") | |
| if __name__ == "__main__": | |
| test_gitmcp() | |
| test_hf_mcp_server() | |
| test_jules_api() | |