health
Check Splunk connection status and list available applications to verify system accessibility and configuration.
Instructions
Get basic Splunk connection information and list available apps (same as health_check but for endpoint consistency)
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- splunk_mcp.py:864-868 (handler)The handler function for the "health" MCP tool, decorated with @mcp.tool() for registration. It simply delegates to the health_check() function.@mcp.tool() async def health() -> Dict[str, Any]: """Get basic Splunk connection information and list available apps (same as health_check but for endpoint consistency)""" return await health_check()
- splunk_mcp.py:668-707 (helper)The core implementation logic for performing the Splunk health check, which connects to Splunk, lists available apps, and returns connection status and app information. This is called by the 'health' tool handler.@mcp.tool() async def health_check() -> Dict[str, Any]: """Get basic Splunk connection information and list available apps""" try: service = get_splunk_connection() logger.info("🏥 Performing health check...") # List available apps apps = [] for app in service.apps: try: app_info = { "name": app['name'], "label": app['label'], "version": app['version'] } apps.append(app_info) except Exception as e: logger.warning(f"⚠️ Error getting info for app {app['name']}: {str(e)}") continue response = { "status": "healthy", "connection": { "host": SPLUNK_HOST, "port": SPLUNK_PORT, "scheme": SPLUNK_SCHEME, "username": os.environ.get("SPLUNK_USERNAME", "admin"), "ssl_verify": VERIFY_SSL }, "apps_count": len(apps), "apps": apps } logger.info(f"✅ Health check successful. Found {len(apps)} apps") return response except Exception as e: logger.error(f"❌ Health check failed: {str(e)}") raise