Tool: hermes_validate_api_configuration
Space: hermes
Description: TOOL: Validate and store API configuration for monitoring. PURPOSE: Test an API endpoint and store the configuration if successful. This is STEP 1 of the monitoring setup process. If validation fails, retry with corrected parameters.    If successful, use the returned config_id in activate_monitoring() function. CRITICAL: Even if success=True, you MUST manually check the 'sample_response' field before proceeding to activate_monitoring(). The API call may return success=True but contain error messages (like "401 Unauthorized", "Invalid API key", etc.) in the sample_response. CRITICAL: Always try to add parameters that will limit the API response to a manageable size. CRITICAL: Be sure to always clearly inform the user of the config_id after a desired validation result. CRITICAL: If you don't have an MCP API KEY given by the user, prompt them to get it here: https://mcp-hackathon.vercel.app/ WORKFLOW: 1. Call this function to validate API configuration 2. If success=False: Fix parameters and retry this function 3. If success=True: MANUALLY INSPECT the 'sample_response' field for errors 4. If sample_response contains error messages: Fix API parameters and retry validation 5. If sample_response looks valid: Use config_id in activate_monitoring() to activate monitoring ARGUMENTS: - mcp_api_key: MCP API key serves as user identifier. - name: User-friendly name for the monitoring task - description: Description of what is being monitored - method: HTTP method (GET, POST, PUT, DELETE) - base_url: The base URL of the API - endpoint: The specific API endpoint - param_keys_values: Parameter key-value pairs, one per line - header_keys_values: Header key-value pairs, one per line - additional_params: Optional JSON string for complex parameters - schedule_interval_minutes: Minutes between calls - stop_after_hours: Hours after which to stop (supports decimals, max 168 = 1 week) - start_at: Optional datetime string for when to start the monitoring. IMPORTANT: Leave as empty string "" for immediate start (most common use case, always default to this if no start time provided). Only provide a datetime string (e.g., "2024-06-15 09:00:00") if you need to schedule monitoring for a specific future time. Input Examples: 1. Simple GET request to monitor stock price: mcp_api_key: "your_mcp_key_here" name: "NVDA Stock Price" description: "Monitor NVIDIA stock price every 30 minutes" method: "GET" base_url: "https://api.example.com" endpoint: "stocks/NVDA" param_keys_values: "symbol: NVDA interval: 1min" header_keys_values: "Authorization: Bearer your_token" additional_params: "{}" schedule_interval_minutes: 30 stop_after_hours: 1.5 start_at: "" 2. Weather monitoring with free API: mcp_api_key: "" name: "Weather Monitor" description: "Monitor current weather conditions every 2 hours for one week using Open-Meteo free API" method: "GET" base_url: "https://api.open-meteo.com" endpoint: "v1/forecast" param_keys_values: "latitude: 40.7128 longitude: -74.0060 current: temperature_2m,relative_humidity_2m,weather_code,wind_speed_10m timezone: America/New_York" header_keys_values: "Content-Type: application/json" additional_params: "{}" schedule_interval_minutes: 120 stop_after_hours: 168 start_at: "2024-06-15 09:00:00". Returns: Dictionary with success status, config_id (needed for setup_scheduler), message, and sample_response, , {, True,, 123,, "API call tested and stored successfully",, {...},, "2025-06-11T12:00:00Z",, "2025-06-04T12:00:00Z", }, If success=True, call activate_monitoring(config_id, mcp_api_key) to activate monitoring
Inputs: mcp_api_key, name, description, method, base_url, endpoint, param_keys_values, header_keys_values, additional_params, schedule_interval_minutes, stop_after_hours, start_at
Tags: gradio, Agents-MCP-Hackathon, mcp-server-track, mcp-server, region:us