Skip to main content
Glama

check_critical_news

Monitor Arch Linux news for critical updates requiring manual intervention by scanning for keywords like 'action required' and 'breaking change' to prevent system issues.

Instructions

Check for critical Arch Linux news requiring manual intervention. Scans recent news for keywords: 'manual intervention', 'action required', 'breaking change', etc.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNoNumber of recent news items to check (default 20)

Implementation Reference

  • Core implementation of the check_critical_news tool. Fetches recent Arch news via RSS, scans titles and summaries for critical keywords (e.g., 'manual intervention'), and returns matching items with severity marking.
    async def check_critical_news(limit: int = 20) -> Dict[str, Any]: """ Check for critical Arch Linux news requiring manual intervention. Args: limit: Number of recent news items to check (default 20) Returns: Dict with critical news items """ logger.info("Checking for critical Arch Linux news") result = await get_latest_news(limit=limit) if "error" in result: return result news_items = result.get("news", []) critical_items = [] # Scan for critical keywords for item in news_items: title_lower = item["title"].lower() summary_lower = item["summary"].lower() # Check if any critical keyword is in title or summary is_critical = any( keyword in title_lower or keyword in summary_lower for keyword in CRITICAL_KEYWORDS ) if is_critical: # Identify which keywords matched matched_keywords = [ keyword for keyword in CRITICAL_KEYWORDS if keyword in title_lower or keyword in summary_lower ] critical_items.append({ **item, "matched_keywords": matched_keywords, "severity": "critical" }) logger.info(f"Found {len(critical_items)} critical news items") return { "critical_count": len(critical_items), "has_critical": len(critical_items) > 0, "critical_news": critical_items, "checked_items": len(news_items) }
  • MCP tool registration in list_tools(). Defines the tool name, description, and input schema (optional 'limit' parameter).
    Tool( name="check_critical_news", description="[DISCOVERY] Check for critical Arch Linux news requiring manual intervention. Scans recent news for keywords: 'manual intervention', 'action required', 'breaking change', etc.", inputSchema={ "type": "object", "properties": { "limit": { "type": "integer", "description": "Number of recent news items to check (default 20)", "default": 20 } }, "required": [] }
  • MCP server call_tool handler that invokes the check_critical_news function with parsed arguments and formats the JSON response.
    elif name == "check_critical_news": limit = arguments.get("limit", 20) result = await check_critical_news(limit=limit) return [TextContent(type="text", text=json.dumps(result, indent=2))]
  • Tool metadata definition including category, platform, permissions, workflow, and related tools for discovery and safety checks.
    "check_critical_news": ToolMetadata( name="check_critical_news", category="discovery", platform="any", permission="read", workflow="safety", related_tools=["get_latest_news", "check_updates_dry_run"], prerequisite_tools=[] ),
  • Exported in __all__ for package-level import and exposure.
    "check_critical_news",

Latest Blog Posts

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/nihalxkumar/arch-mcp'

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